【问题标题】:How to create a tweak for jailbroken iPhone如何为越狱的 iPhone 创建一个调整
【发布时间】:2011-06-19 23:06:01
【问题描述】:

我的问题是...我们可以使用 Xcode 为越狱的 iPhone 创建一个调整吗?例如,如果我想在锁定屏幕中添加一些按钮,我该怎么办?如何修改默认 iPhone 应用程序的 GUI?

【问题讨论】:

    标签: iphone xcode jailbreak tweak


    【解决方案1】:

    这是一个非常古老的问题,但大卫在大多数情况下实际上是不正确的。

    您可以将自定义 UI 添加到越狱设备,无需 Xcode 即可创建调整,连接到任何您想要的东西等等,甚至不需要 SpringBoard 的源代码或希望它是可扩展的。

    MobileSubstrate 是一个代码替换平台,实际上允许您做任何事情。您甚至不需要成为专家,但不可否认,至少对编程和 Objective-C 概念有一定的了解会有很大帮助。

    【讨论】:

    • 谢谢大卫!我在哪里可以找到一些教程?
    • iphonedevwiki.com可以找到很多入门资料;这是一个针对越狱应用程序开发的 wiki。同样,很多人使用名为“Theos”的构建系统,当它与另一种基于objective-c 的名为“Logos”的语言结合使用时,使得Tweak 编写变得非常容易。如果您有兴趣使用 theos 和徽标来构建 MobileSubstrate 调整,您也可以在 irc.saurik.com 的 IRC 频道 #theos 上闲逛! :)
    • 笑,我的意思是 iphonedevwiki.net :(
    • 非常感谢!我全部阅读了它们,但除了 iphonedevwiki.net 上的一些行之外,我找不到其他关于徽标如何工作的信息/教程......你能建议我别的吗?
    【解决方案2】:

    你说的做不到。您假设 1) 您将拥有 Springboard(锁定屏幕)的源代码,以及 2) 这些程序是可扩展的。

    没有源代码(它是专有的),您无法对锁定屏幕进行“调整”。你没有任何东西可以编译到锁屏中。

    虽然您可以通过编辑内部 plist(显示标题栏或禁用旋转等简单操作)来修改它们,但您将无法使用 XCode 添加功能。

    要创建“调整”,您必须完全重写锁定屏幕,或者将非常低级的挂钩插入 Springboard/iOS。这不可能仅通过 Xcode 实现,因为 Xcode 甚至无法安装 iOS 级别的应用程序(所有已安装的应用程序都是用户级别的)。

    您需要私有框架调用方面的专业知识,并且可能能够反汇编和逆向工程您尝试扩展的特定程序。

    【讨论】:

    • @Dustin 我的陈述 100% 正确。问题“如何修改默认 iPhone 应用程序的 GUI?”这是不可能的。您正在扩展替代品,而不是原始产品。
    • 不,您可以使用 MobileSubstrate 扩展原始的默认应用程序,而不是扩展替换。这些二进制文件不会以任何方式修改或替换。
    • 并使用class-dump 可以帮助您对objective-c 框架(公共或私有)的标头进行逆向工程,这是您最需要的。好老的objective-c ...把​​你的标题交给那些你不想拥有它们的人,并使几乎所有东西都易于扩展!
    猜你喜欢
    • 2023-04-02
    • 2014-01-27
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-25
    • 2011-03-31
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多