直接表现:XCode打成ipa包后,用itunes安装到已授权的Iphone4 上失败(itunes报安装错误,手机屏幕上应用为灰暗状态,点击后提示正在安装)
条件说明:1.先在Windows环境下采用sencha touch 生成支持cordova的IOS包。
2.将未编译完成的IOS的包复制到MAC上,进行XCode打包。
3.使用ad-hoc的打包方式,打包成功后在授权设备上安装测试
4.ipad mini2,iphone 6 Plus上均能正常安装和运行,在Iphone4上安装时出错
注:测试机型,iphone4的系统为ios 7.x。其他机型为ios 8.x,ios 9.x。
调试过程:
排除授权,及ios版本支持问题后。
1.打包之前在设备(Iphone4)上运行调试
安装时报错提示internal API Error,网上找到解决方案:http://blog.csdn.net/jf200614379/article/details/48624405
修改产品名称为英文后,真机成功运行。
2.重新打包修改过名称的项目,生成ipa包,在iphone4上安装依然失败。
3.使用xcode中的测试项目,项目名称分别改成中文,英文进行打包安装,iphone4上正常安装
4.猜测有可能在windows上打包项目名称包含中文的缘故。
解决方案:
sencha touch 打包时,先修改{PROJECT_DIR}/cordova/config.xml,将 项目名称改为英文,重新打包,然后再转移至MAC上打ipa包,可正常安装至iphone4.
故障分析:
1.cordova打包后的中文项目,内部参数等都有引用到中文的地方。
2.早期IOS系统或IOS设备上对本地化支持不是很好(其他语言或低版本安卓设备,也有可能遇到)
PS:本文不是很严谨,仅作参考,故障原因还未得到确认,欢迎有知道的朋友来补充。