iOS应用程序在Debug/Release/Adhoc模式下可以工作,但从App Store下载后无法工作。

4

我最近更新了一款之前发布到iOS 7的应用程序。

该应用在所有情况下都能正常工作,除了从App Store下载时。即使发布到TestFlight并从那里安装也是如此。

出现问题的代码块是在它从远程HTTP服务器检索文件的地方。

我尝试通过让它通过我的Mac连接WiFi并运行数据包捕获器来嗅探网络,但它甚至似乎没有发出HTTP GET请求。

显然,这很难调试,因为它必须经过商店流程。

有没有办法将我将要上传到商店的二进制包侧载到设备上进行调试?


在更新之前卸载应用程序后,这种情况是否也会发生? - Norbert Szenasi
1个回答

4

从比较"发布"和"AppStore"的构建设置开始。

另一个错误来源可能是您在设备上拥有(例如在NSUserSettings中)但在部署应用商店版本的设备上不存在的内容。

我能想到的第三个选项是代码中的#if,例如:

#if RELEASE || DEBUG
SuperImportantCallToMakeItWork();
#endif

您需要为发布版本和应用商店版本使用完全相同的测试条件。如果需要,使用相同的设备并进行全新安装。

商店处理不会更改您的二进制文件。它只是一个发布版本(如果您正确配置了一切)。


我已经在几个设备上尝试过,有的删除了应用程序,有的没有。是否存在应用程序沙盒之外的任何碎屑可能会影响新的安装?我会仔细检查构建设置。有没有一种方法可以在没有应用商店的情况下安装应用商店包? - TwoRedCells
看起来很简单,但却花费了很长时间。你说得对。AppStore配置中添加了<MtouchLink>Full</MtouchLink>这一行,启用了完整的链接器优化,这破坏了应用程序,因为应用程序使用了反射。你让我开心了。 - TwoRedCells

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