我为iOS构建了一个应用程序...它完全在模拟器上运行,并且在TestFlight
的测试中运行,除了当我尝试将此应用程序放在我的iPad
上时,它甚至安装,但它会在启动画面上停止。
#IOS version on iPad
8.4.1
#Xcode Version:
8.1
#IOS SDK'S:
10.1
#Operating System
Name = Mac OS X
Version = 10.12
Architecture = 64bit
CPUs = 4
Memory = 4.0GB
#Nodejs
Node.js Version = 4.6.0
Npm Version = 2.15.9
#Appcelerator CLI
Installer = 4.2.7
Core Package = 5.5.1
#Titanium Cli
CLI Version = 5.0.9
Node-appc Version = 0.2.31
答案 0 :(得分:2)
每当应用程序在splash screen
处停止时,这意味着您的应用程序中发生严重错误,阻止执行任何进一步的代码。通常在alloy.js
,索引控制器或您在第一个窗口打开之前访问的任何其他控制器/ js文件。
如果没有对所有执行代码的完全访问权限就无法回答这个问题,这可以作为一种通用的答案,您可以将其用作调试为什么您的应用无法在某些平台或操作系统上运行的指南
首先,查看特定于您情况的任何代码。在你的情况下iPad。因为您可以拥有仅在iPad上运行的代码,首先查看该代码。你有专门针对iPad的控制器吗?还是代码块?看看那些!那里一定有错误。
如果它在Simulator中没有发生,但它在设备上发生,看看你是否有任何代码只能在设备上而不是在模拟器上运行。例如伪造地理定位。
在Titanium中,可能存在特定于环境的代码。例如关于开发或仅关于生产。看看有什么不同。
如果这一切对你不起作用,请在所有代码周围使用try, catch
处理程序并提醒错误,或者通过邮件发送它们。
您还可以查看错误记录器和捕获器。例如blogpost。
还有一个uncaughtException
事件被解雇了你可以听:
http://docs.appcelerator.com/platform/latest/#!/api/Titanium.App-event-uncaughtException
像这样听:
Ti.App.addEventListener('uncaughtException', function(error){
// handle error here
}