发布 Swift iOS 应用程序的 ad-hoc 分发

8
我有两个空的iOS单视图应用程序,通过Xcode 6 Beta 2编译为IPA。一个是Objective-C,第二个是Swift。它们都具有完全相同的代码签名设置。 在使用TestFlight或Hockey进行Ad Hoc分发时,Objective-C版本可以安装,而Swift版本则会出现“无法下载应用程序”的错误。 我在其中运行了iPhone配置实用程序日志,并获得了以下结果:
Jun 24 17:36:27  installd[3555] <Notice>: 0x2c1000 handle_install_for_ls: Install of "/var/mobile/Media/Downloads/-6680582027007079892/1462391056366119034" requested by itunesstored
Jun 24 17:36:29  installd[3555] <Notice>: 0x2c1000 MobileInstallationInstall_Server: Installing app com.MyApp.sTest
Jun 24 17:36:29  installd[3555] <Error>: 0x2c1000 verify_signer_identity: MISValidateSignatureAndCopyInfo failed for /var/tmp/install_staging.HEsTZS/foo_extracted/Payload/sTest.app/sTest: 0xe8008017
Jun 24 17:36:29  installd[3555] <Error>: 0x2c1000 do_preflight_verification: Could not verify executable at /var/tmp/install_staging.HEsTZS/foo_extracted/Payload/sTest.app
Jun 24 17:36:29  itunesstored[94] <Error>: 0x1ef7000 MobileInstallationInstallForLaunchServices: failed with -1
Jun 24 17:36:29  itunesstored[94] <Warning>: ERROR: MobileInstallationInstallForLaunchServices returned nil
Jun 24 17:36:29  lsd[3554] <Warning>: LaunchServices: installation failed for app com.MyApp.sTest
Jun 24 17:36:29  itunesstored[94] <Warning>: LaunchServices: installPhaseFinishedForProgress: com.MyApp.sTest.Installing - <NSProgress: phase=Installing; state=Failed; fractionCompleted=0.000000> called, removing progress from cache
Jun 24 17:36:30  installd[3555] <Error>: 0x2c1000 install_application: Could not preflight application install
Jun 24 17:36:30  installd[3555] <Error>: 0x2c1000 handle_install_for_ls: API failed
Jun 24 17:36:31  lsd[3554] <Warning>: LaunchServices: installation ended for app com.MyApp.sTest

有人知道我可能做错了什么吗?谢谢。

哦,我这里也有同样的问题,我担心这可能是苹果阻止它。 - Wojtek Turowicz
你能使用电缆部署到设备上吗? - Wojtek Turowicz
是的,当我直接通过Xcode部署到单个设备时它可以工作。但是无法通过Testflight或Hockey传递。 - Paweł
哦,真可惜,但iOS8 SDK是_Beta_版本,Xcode6也是_Beta_版本,而Swift语言目前仅处于概念阶段,尚未准备好进行商业开发。 - holex
2个回答

7
我找到了一个解决方案。这似乎是与Xcode 6 beta相关的已知问题(17283374)。 https://devforums.apple.com/message/984530#984530 对我有用的修复方法是解压并重新打包ipa,剥离导致问题的扩展属性:
ditto -xk /path/to/file.ipa /tmp/my_extract_path
ditto -ck --norsrc /tmp/my_extract_path /path/to/new_file.ipa
rm -r /tmp/my_extract_path

0

同样的问题,这是我的主题Xcode6 ipa分发问题

无法通过iTunes或TestFlight将Swift ipa安装到我的设备上

我找到了一个解决方法-我创建了*.app文件,并成功地通过iTunes将其安装到我的设备上。不确定这是否适用于TestFlight,但至少您可以将*.app和移动配置文件发送给您的客户


嗨,伊戈尔,看到你已经成功保存了你的ipa文件。你没有遇到这个问题吗?http://stackoverflow.com/questions/24263294/xcode6-ipa-distribution-issue - 3254523
@christopher.ryan.cruz 是的,下面的解决方法非常有效。 - Rubycon

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接