我正在尝试通过itms-services协议为越狱设备发布一个未签名的.ipa。没有CYDIA。 我浏览了有关如何为cydia创建未签名应用程序的指南:http://www.alexwhittemore.com/developing-jailbroken-iphone-ios-401/我设法使其工作,但组织者的“共享”选项除外。它说:错误:协同检查失败......但也许这不是问题。
将我的应用程序的.app文件夹压缩到.ipa扩展名,没有签名工作,但是当我将我的应用程序上传到我的服务器并尝试通过itms-services协议下载时,设备上的进度条是几乎到了最后,无法下载......
任何人都有这方面的经验吗?
答案 0 :(得分:3)
很抱歉重新唤醒了一个古老的话题,但以防万一将来有人提出这个问题:
itms-services协议向两个服务器发出请求:oscp.apple.com
和另一个服务器(您可以在Apple的网站上找到更多信息)。服务器检查Apple是否已生成签名证书的公钥,以及它们是否已被撤销。
通常情况下,没有办法绕过这个,但iPhone检查的是“坏”反应。如果它检测到一个,它拒绝该应用程序。如果它根本没有收到响应,那么它不会拒绝该应用程序。
所以你想要做的就是创建一个自定义DNS服务器,它将两个Apple服务器列为另外两个服务器。然后,创建一个移动配置文件,将iPhone的默认DNS服务器更改为您的服务器。然后应该正确安装应用程序。
答案 1 :(得分:1)
我有完全相同的问题:我正在寻找一种方法来为越狱的iPhone分发iOS应用程序,而无需通过Cydia。
当我提供有效的配置文件时,itms-services适用。 没有配置文件,它不起作用。但是有一点请注意,Alexei:即使是越狱,未签名的应用也无法在iPhone上工作。您至少需要一个自签名的应用程序。越狱消除了Apple批准的开发者签名的需要,它根本不需要签名。 您可以使用" ldid -S"自行签署您的代码。在越狱设备上。在http://dl.dropbox.com/u/3157793/ldid
还有适用于Mac OS X的ldid版本请随着您的进度不断更新此主题 - 我也会这样做。
[EDITED]
可以生成自签名证书并从Xcode中使用它。然后可以使用scp -r
命令安装该应用程序。
然后,我手动创建了一个IPA文件,并通过带有itms-services URL的Web服务器提供。使用""应用"安装失败目前无法安装"
在查看控制台时,它说:
Mar 14 17:31:32 unknown installd[4276] <Error>: developer cert trust result = 5
Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 verify_signer_identity: Could not copy validate signature: -402620392
Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 preflight_application_install: Could not verify executable at /var/tmp/install_staging.AnmaAp/foo_extracted/Payload/App.app
Mar 14 17:31:32 unknown com.apple.itunesstored[4272] <Notice>: MobileInstallationInstall: failed with -1
Mar 14 17:31:32 unknown installd[4276] <Error>: 00485000 install_application: Could not prefligh
原因是/usr/libexec/installd
程序在安装应用程序时正在检查有效签名。
可以使用http://hackulo.us/wiki/AppSync或http://jamesisbored.com/iphone/bootleg等工具修补和禁用此功能,但我不会这样做有两个原因:
所以,这给我留下了两个选择: A /放弃这个想法 B /开发我自己的MISValidateSignatureAndCopyInfo绕过代码,并在安装我的应用程序所需的时间内临时使用它。