解决之前上架的 App 在 iOS 9 会闪退问题 (更新:已有 Hotfix)
最新更新:(2015.10.02)
开发环境:
- Delphi 10 Seattle
- OS X El Capitan v10.11
- Xcode v7.0.1
- iOS SDK v9.0
真机测试(以下机种皆不闪退):
- iPhone 3GS v6.1.2 (32 bit)
- iPhone 4 v7.1.2 (32 bit)
- iPhone 4S v9.0 (32 bit)
- iPhone 5S v8.4.1 (64 bit)
- iPad 2 mini v9.0 (64 bit)
※ 使用上面的配置,及 EMB 官方提供的 Hotfix,真机皆没有问题,下面的闪退问题可以略过了。
问题一:iOS 9 于 2015/09/16 开放下载了,但之前使用 Delphi(XE8 或之前的版) 开发上架的 App 皆会闪退,无法运行在 iOS 9。
问题二:使用 Delphi 10 Seattle + Xcode 7.0 + iOS SDK 9.0 发布到 iOS 9 的真机没有问题,但发布到 iOS 6~8 的机子会闪退。
为了解决以上问题,可以参考下列方法:
1. 使用 Delphi 10 Seattle 重新上架:
开发环境:
- Delphi 10 Seattle
- Xcode 7.0
- iOS SDK 8.4(这个是关键,一定要用 SDK 8.4 才不会闪退)
真机测试(以下机种皆不闪退):
- iPhone 3GS v6.1.2 (32 bit)
- iPhone 4 v7.1.2 (32 bit)
- iPhone 4S v9.0 (32 bit)
- iPhone 5S v8.4.1 (64 bit)
- iPad 2 mini v9.0 (64 bit)
2. 使用 XE8 重新上架:
开发环境:
- Delphi XE8 update 1
- Xcode 6.4
- iOS SDK 8.4
修改源码:
- 需依官方建议的方法,修改 XE8 的源码(如果不修改,会闪退):
http://community.embarcadero.com/blogs/entry/workaround-steps-for-building-ios-32-bit-applications-for-ios-9-with-xe7-and-xe8
真机测试(以下机种皆不闪退):
- iPhone 3GS v6.1.2 (32 bit)
- iPhone 4 v7.1.2 (32 bit)
- iPhone 4S v9.0 (32 bit)
- iPhone 5S v8.4.1 (64 bit)
- iPad 2 mini v9.0 (64 bit)
赶快重新上架新版 App 吧。
追加整理,依版本整理如下(2015.09.23):
- Xcode 7.0 + SDK 8.4
- XE8 + iOS 6 = 正常
- XE8 + iOS 7 = 正常
- XE8 + iOS 8 = 正常
- XE8 + iOS 9 = 正常
- Xcode 6.4 + SDK 8.4
- XE8 + iOS 6 = 正常
- XE8 + iOS 7 = 正常
- XE8 + iOS 8 = 正常
- XE8 + iOS 9 = 闪退(使用官方修复文件,不闪退)
- Xcode 7.0 + SDK 9.0
- D10 + iOS 6 = 闪退
- D10 + iOS 7 = 闪退
- D10 + iOS 8 = 闪退
- D10 + iOS 9 = 正常
官方 QC 讨论:
https://quality.embarcadero.com/browse/RSP-12324
官方 Apple Xcode 各版本下載位置:
https://developer.apple.com/downloads/
- OS X El Capitan
解决之前上架的 App 在 iOS 9 会闪退问题 (更新:已有 Hotfix)的更多相关文章
- iOS开发-闪退问题-解决之前上架的 App 在 iOS 9 会闪退问题
最新更新:(2015.10.02) 开发环境: Delphi 10 Seattle OS X El Capitan v10.11 需使用下列 HotfixID: 30398, PAServer Hot ...
- iOS 启动连续闪退保护方案
引言 “如果某个实体表现出以下任何一种特性,它就具备自主性:自我修复.自我保护.自我维护.对目标的自我控制.自我改进.” —— 凯文·凯利 iOS App 有时可能遇到启动必 crash 的绝境:每次 ...
- 企业版证书打包APP发布,安装后闪退问题解决。
企业版证书打包APP发布,安装后闪退问题解决. 我现在就碰到这个问题,只要项目与Swift沾上边的,都会出问题. 如果我们是直接使用开发者证书进行真机调试,那么就不会出现问题,像往常一样好.但如果我们 ...
- 190628 - 解决新版本LastPass没有谷歌套件时打开就闪退的问题.md
目录 解决新版本LastPass没有谷歌套件时打开就闪退的问题 可用解决方案 可用解决方案3 可用解决方案2 可用解决方案1 尝试安装 碰到的问题列表 问题现象 解决新版本LastPass没有谷歌套件 ...
- 解决关于ios访问相机闪退问题
在mac上的ionic3项目打包成苹果app,系统版本是10.3.3 . 当调用相机的时候出现闪退情况,这是调试出现的问题: This app has crashed because it attem ...
- cordova+vue打包ios调用相机闪退解决
cordova+vue项目打包android,打开相机正常使用,但是打包ios后,需要多几个配置,才能打开,否则当调用的时候会闪退,上配置图 需要在选中的文件里面添加 <key>NSCam ...
- 解决tomcat的安装文件中点击startup.bat闪退的问题
遇到这样的问题的时候不要慌,可以使用下面的方式去解决! 如果不用Myeclipse部署Tomcat,使用Tomcat中bin文件加下的startup.bat启动服务会出现闪退的情况,其原因是没有为To ...
- 由于找不到opencv_world***d.dl,无法继续执行代码。重新安装程序可能会解决此问题。关于opencv使用imshow函数闪退解决方法等问题
1.将缺失的文件放到程序根目录的debug中 2.将Debug x64下的附加依赖项改为只有后缀为d.lib的那个库文件,去除另一个,问题就这么解决了,虽然我也不知道加上另一个为什么就会闪退
- iOS9.2.1 App从AppStore上下载闪退问题
首先这是小编的第一篇文章,我是一名做iOS开发的小白,出于爱好会更新发表些相关的技术文章,偶尔也会发些视频.恳请大家不要去嘲笑一个努力的人,要是做的不好请多多评论,反正我也不改. 好了!敲黑板!!说正 ...
随机推荐
- Java基础之面向对象以及其他概念
一.基础知识:1.JVM.JRE和JDK的区别: JVM(Java Virtual Machine):java虚拟机,用于保证java的跨平台的特性. java语言是跨平台,jvm不是跨平台的. JR ...
- Redis集群~StackExchange.Redis(10月6号版1.1.608.0)连接Twemproxy支持Auth指令了
回到目录 对于StackExchange.Redis这个驱动来说,之前的版本在使用Proxy为Twemproxy代理时,它是不支持Password属性的,即不支持原始的Auth指令,而我也修改过源代码 ...
- [数据库事务与锁]详解六: MySQL中的共享锁与排他锁
注明: 本文转载自http://www.hollischuang.com/archives/923 在MySQL中的行级锁,表级锁,页级锁中介绍过,行级锁是Mysql中锁定粒度最细的一种锁,行级锁能大 ...
- fir.im weekly - 「 持续集成 」实践教程合集
我们常看到许多团队和开发者分享他们的持续集成实践经验,本期 fir.im Weekly 收集了 iOS,Android,PHP ,NodeJS 等项目搭建持续集成的实践,以及一些国内外公司的内部持续集 ...
- 《PHP Manual》阅读笔记2
本次笔记截止到 语言参考 流程控制. 1.没有结合的相同优先级的运算符不能连在一起使用,例如 1 < 2 > 1 在PHP是不合法的.但另外一方面表达式 1 <= 1 == 1 是合 ...
- UML快速回顾
UML(Unified Modeling Language)统一建模语言的概念已经出现了近20年,虽然并不是所有的概念都非常有实践意义,但常见的用例图.类图.序列图和状态图却实实在在非常有效,是项目中 ...
- Design2:数据层次结构建模之二
MSSql提供了一个新的数据类型 HierarchyID,用来处理层次结构的数据,这个数据类型是系统内置的CLR数据类型,不需要专门激活 SQL/CLR 功能即可使用.当需要表示各值之间的嵌套关系,并 ...
- 设置Form窗体中的控件的属性
借助于反射,可获取当前窗体中的所有控件,根据需要设置它们的属性. Font defaultFont = new System.Drawing.Font("Microsoft Sans Ser ...
- 用户代理字符串userAgent可实现的四个识别
定义 用户代理字符串:navigator.userAgent HTTP规范明确规定,浏览器应该发送简短的用户代理字符串,指明浏览器的名称和版本号.但现实中却没有这么简单. 发展历史 [1]1993年美 ...
- java生成excel文件
首先下载jexcelapi_2_6_12.tar.gz,解压后将里面的jxl.jar复制到WEB-INF/lib目录下面 String filePath = request.getParameter( ...