Xcode 中的应用程序运行良好,但 App Store 版本在加载时冻结
有人听说过这个吗?我很困惑,谷歌也很困惑。
在装有 iOS 4.1 的 iPhone 4 上进行调试时,我的应用程序显示启动画面,然后在加载并获取 GPS 位置时显示动画,最后转到主菜单。当我从 App Store 下载它时,它永远不会停止加载。更奇怪的是,如果我隐藏永久加载应用程序然后恢复它,加载动画就会冻结并且应用程序不再响应!
我一直在尝试对出了什么问题进行各种猜测,但没有任何效果。我怎样才能获得有关此故障的有用信息?
编辑:应用程序还在装有 iOS 4.0 和 iOS 4.2.1 的 iPhone 3 以及装有 iOS 4.0.2 和 4.2.1 的 iPhone 4 上进行了测试。
编辑编辑:如果我不从应用程序商店下载它,则不会出现该问题。这使得调试变得极其困难,但希望比我更有经验的人能够缩小范围。
Has anyone ever heard of this? I'm baffled, and so is Google.
When debugging on iPhone 4 with iOS 4.1, my app shows the splash screen, then shows an animation while it loads and gets the GPS location, and finally goes to the main menu. When I download it from the App Store, it never stops loading. More strange than that, if I hide the forever-loading-app and then restore it, the load animation freezes and the app no longer responds!
I've been trying to make all kinds of guesses about what's going wrong, but nothing is working. How can I get useful information about this failure?
EDIT: App has also been tested on iPhone 3 with iOS 4.0 and iOS 4.2.1, and iPhone 4 with iOS 4.0.2 and 4.2.1.
EDIT EDIT: The problem does not occur if I do not download it from the app store. This makes it extremely difficult to debug, but hopefully narrows it down for somebody out there with more experience than I have.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
首先,听起来您已经在一台设备上测试了您的应用程序。
应用程序至少应该在少数设备上进行测试,以便您可以在多种情况下调试和了解内部流程。
但如果您无法获得其他设备,请尝试消除。手段 - 尝试将不必要的代码置于注释中,并仅加载必要的代码。
一步一步你就可以理解这个bug了。
在我看来,这像是服务器问题(您是否向服务器发送任何请求?),或者也许 GPS 无法停止搜索..?
First, it sounds like you've tested your app on one device.
Apps should be tested on few devices at least, so you can debug and understand inside flows on several cases.
But if you can't get another device, try elimination. means - try to put unnecessary code under remark, and load only the necessary code.
step-by-step you can understand the bug.
It sounds to me like server issue (are you sending any request to a server?), or maybe the gps can't stop searching..?
我同意税务员的观点。
首先,确保您在具有不同 iOS 的不同设备上进行了测试。
其次,确保您的应用程序是否必须连接到服务器,这些服务器是否按照您预期的方式响应。
第三,根据我的经验,请确保您使用Ad Hoc .mobileprovision 文件而不是Development .mobileprovision 文件测试您的应用程序。编译时 Xcode 会以不同的方式对待二进制文件。
I agree with Taxman.
First, make sure you tested on different devices with different iOS.
Second, make sure if your app has to connect to servers, those servers are responding in the way you expected.
Third, based on my experience, make sure you tested you app using the Ad Hoc .mobileprovision file other than the Development .mobileprovision file. Xcode will treat binaries differently when compiling.
看来问题的根源是iOS 4.1中的一个bug:
https://devforums.apple.com/community/iphone/integration/location
根据上述信息进行的测试证实,重置位置警告可以解决该问题,从而允许未来的运行超越加载屏幕。从应用程序商店重新安装应用程序会导致问题再次出现。这可以重复和循环测试,并获得一致的结果。
对于那些提出建议的人,非常感谢您付出的时间和精力!
It seems that the origin of the problem is a bug in iOS 4.1:
https://devforums.apple.com/community/iphone/integration/location
Testing based on the above information confirms that resetting location warnings resolves the issue, allowing future runs to progress beyond the loading screen. Reinstalling the app from the app store then causes the issue to occur again. This can be tested repeatedly and cyclicly with consistent results.
To those who responded with suggestions, thank you very much for your time and effort!