来自Xcode的应用程序运行良好,但App Store版本在加载时冻结

时间:2010-12-20 23:07:57

标签: iphone debugging startup iphone-4

有没有人听说过这个?我很困惑,谷歌也是如此。

在使用iOS 4.1的iPhone 4上进行调试时,我的应用会显示启动画面,然后在加载并显示GPS位置时显示动画,最后进入主菜单。当我从App Store下载它时,它永远不会停止加载。更奇怪的是,如果我隐藏了永久加载应用程序然后恢复它,加载动画会冻结,应用程序不再响应!

我一直在努力对出现问题做出各种猜测,但没有任何效果。如何获得有关此故障的有用信息?

编辑:App也已经在iOS 3和iOS 4.2.1的iPhone 3以及iOS 4.0.2和4.2.1的iPhone 4上进行了测试。

编辑编辑:如果我不从应用商店下载,则不会出现此问题。这使得调试变得非常困难,但希望能够让那些有更多经验的人缩小它的范围。

3 个答案:

答案 0 :(得分:1)

首先,听起来您已经在一台设备上测试过您的应用。 应该至少在少数设备上测试应用程序,以便在几种情况下调试和理解内部流程。

但如果您无法获得其他设备,请尝试淘汰。意味着 - 尝试在备注下放置不必要的代码,并仅加载必要的代码。 你可以逐步了解这个错误。

听起来像服务器问题(您是否向服务器发送任何请求?),或者gps无法停止搜索..?

答案 1 :(得分:1)

我同意Taxman。

首先,确保您在具有不同iOS的不同设备上进行了测试。

其次,确保您的应用必须连接到服务器,这些服务器正在以您期望的方式响应。

第三,根据我的经验,确保您使用开发 .mobileprovision文件以外的 Ad Hoc .mobileprovision文件测试了您的应用。 Xcode会在编译时以不同方式处理二进制文件。

答案 2 :(得分:1)

似乎问题的根源是iOS 4.1中的错误: https://devforums.apple.com/community/iphone/integration/location

  

无法获取位置信息   在iOS 4.1上

     

10月5日Michael Jurewitz,   2010年1:51 PM

     

iOS 4.1中存在一个已知问题   对核心位置的调用可能不会   如果该应用已被删除,则会成功   从设备重新安装。   设置中的位置服务也可能   错误地显示应用程序   访问位置信息。这个   问题在iOS 4.2 beta 2中得到解决。

     

要解决此问题,请选择设置>下的重置位置警告。一般>复位。

     

与往常一样,确保您的核心位置代理正确   处理从中返回的任何错误   -locationManager:didFailWithError:和-locationManager:monitoringDidFailForRegion:withError:。

根据上述信息进行的测试确认重置位置警告可以解决问题,从而允许将来的运行超出加载屏幕。从应用商店重新安装应用程序会导致问题再次发生。这可以反复测试,循环测试,结果一致。

对于那些回复建议的人,非常感谢您的时间和精力!