在iPad上使用私有API进行开发探索 - Rambo代码

作者:API传播员 · 2025-11-12 · 阅读时间:3分钟

使用私有工具和技巧


使用 Swift Playgrounds 进行私有API开发

在iPad上使用API框架需要与运行时交互,这可能会显得繁琐且复杂。以下是一个简单的示例,展示如何加载私有框架并实例化其中的一个视图控制器:

import PlaygroundSupport
import UIKit
import ObjectiveC

assert(Bundle(path: "/System/Library/PrivateFrameworks/AvatarUI.framework")!.load())
let AVTSplashScreenViewController = NSClassFromString("AVTSplashScreenViewController") as! UIViewController.Type
PlaygroundPage.current.liveView = AVTSplashScreenViewController.init()

运行上述代码后,可以成功加载并显示私有框架中的视图控制器。然而,当需要实现更复杂的功能时,开发者可能需要频繁使用 NSSelectorFromStringperformSelector 等方法,这会让代码变得冗长且难以维护。因此,Swift Playgrounds更适合用于简单的私有API测试


使用 JSBox 进行私有API开发

JSBox 是一个强大的工具,它不仅支持快捷方式,还提供了 Intents UI 扩展,允许开发者通过快捷方式调用脚本,而无需启动应用程序即可运行代码。更有趣的是,JSBox 还支持在 Siri 界面中显示用户界面。

以下是一个使用 JSBox 渲染 Face ID 解锁动画的脚本示例:

JSBox 示例

通过 JSBox,开发者可以快速实现一些视觉效果或功能,并利用其与快捷方式的深度集成,提升开发效率


使用 Pythonista 进行私有API开发

Pythonista 是另一个在 iPad 上进行私有API开发的优秀工具。它支持编写 Python 脚本,并能够调用 iOS 的运行时功能。以下是一个示例,展示如何使用 Pythonista 编写脚本来显示 iOS 系统的关闭界面:

Pythonista 示例

Pythonista 的优势在于其强大的 Python 生态系统,开发者可以利用丰富的库和工具来快速实现功能。


总结

尽管使用私有API的最佳开发环境仍然是 Mac 上的 Xcode,但在 iPad 上也可以完成许多有趣的开发任务。本文介绍了三种在 iPad 上使用私有API的工具:Swift Playgrounds、JSBox 和 Pythonista。每种工具都有其独特的优点和适用场景:

  • Swift Playgrounds:适合简单的私有API测试,但代码可能较为冗长。
  • JSBox:灵活性强,特别适合与快捷方式集成的场景。
  • Pythonista:依赖 Python 生态,适合需要快速开发和测试的任务。

在实际使用中,JSBox 因其灵活性和快捷方式支持,成为了作者最常使用的工具。如果你也想在 iPad 上探索私有API开发,不妨尝试这些工具,找到最适合自己的开发方式。

原文链接: https://www.rambo.codes/posts/2019-01-11-hacking-with-private-apis-on-ipad