1

这是交易,自从 iPhone OS 3.0 发布以来,我一直在使用这个应用程序,现在我做了一些更改以利用 iOS4.x,并使用 xcode 3.2.3 针对 4.0 进行编译,我有 4 个越狱设备:

  • 2 iPod touch 2G iOS 3.0
  • 1 iPad iOS 3.2
  • 1 iPhone 4G iOS 4.0

当我从 xcode(使用 Apple 配置证书)运行和调试时,该应用程序在每台设备上都可以正常工作。

当我尝试在运行 iOS3.0 的 iPod 中运行 ldid 签名的应用程序时,问题就出现了,这就是我所做的:

我通过 SSH 将我的应用程序复制到设备的/Applications文件夹中chmod 755ldid -S mybinary然后重新启动,当我在 iOS 3.0 上启动应用程序时,它会立即关闭,就像它没有签名时一样,但它适用于运行 3.2 和4.0。

我删除了新的代码片段并用旧的 xcode (3.2.2) 编译并执行了相同的过程,它在 iOS 3.0 上运行。

我认为它与代码签名有关,因为它适用于苹果的证书以及运行 3.2 和 4.0 的设备,可能是由于越狱,因为我认为它禁用了代码签名检查。

针对 4.0 或使用 xcode 3.2.3 进行编译会干扰 ldid 签名吗?你对让它在 iOs 3.0+ 上运行有什么想法?

4

1 回答 1

1

显然 ldid 不喜欢用 xcode 3.2.3 编译的二进制文件,我按照这个答案的步骤进行操作,非常感谢。

于 2010-09-12T17:52:54.543 回答