Apple i派为什么会卡 ipadmini玩游戏闪退还闪退 有没有什

当前位置:&&ios9.0.2为什么会闪退?升了ios9.0.2闪退原因是什么?
ios9.0.2为什么会闪退?升了ios9.0.2闪退原因是什么?
|作者:Aimee|来源:265G
ios9.0.2为什么会闪退?升了ios9.0.2闪退原因是什么? iOS升了ios9.0.2后为什么会闪退?升了ios9.0.2闪退原因介绍,下面我们来详细了解下。小编据了解很多人都这样子,那是因为软件与系统不兼容导致的,你可以在同步推上重新下载,同步推上的资源适应性比较强,适用于ips9 的系统。iOS9应用闪退解决方法1.如果打开软件时,出现如下图提示,记住红线部分的描述文件名2.然后在设备中点击进入“设置&&&通用&&&描述文件”,找到刚才同名的描述文件3.点击文件,选择【信任】,然后就能正常打开同步推了
查iphone报价,看iphone最新消息,尽在265G苹果网官方微信
扫描左侧二维码即可添加265G苹果网官方微信您也可以在微信上搜索“265G苹果网”或“iphone265g”,获取更多数码资讯。
28日28日28日28日28日
日下午2点,顶级旗舰双曲面小米Note2来袭!
是一款游戏福利发放和手游试玩平台APP,在这可以快乐游戏轻松赚钱。
推荐点击榜
265G推荐游戏苹果手机软件闪退是什么原因
来源:爱思助手
浏览次数:29822
大家在用苹果手机一段时间之后,可能就会遇到软件闪退的情况,那么软件为什么会闪退呢,闪退的原因是什么呢?那么闪退之后又怎么解决呢?下面就为你详细解读一下。什么是闪退呢?就是打开某个App偶尔会出现一闪然后就退出到后台的现象,或者弹出登录ID的对话框的情况我们称之为闪退。相信不少朋友都遇到过这种软件闪退问题。而苹果手机的多半问题基本是出在软件闪退。这到底是什么原因,1、App兼容性问题这种情况一般发生在旧的App和新的系统之间。举个例子:比如你现在已经升级到iOS8.1了,而你手机中有一个很久没更新或还没兼容iOS8的App,那么很有可能就会出现闪退了。解决办法就是等待该App更新后再安装。2、后台程序多内存不足不得不说iOS的优化做的非常好,流畅度也比安卓好很多。但是苹果千年不变的1G内存也是很吃紧的,特别是当你打开很多程序的时候。这时后台程序太多内存出现不足时就会出现闪退现象。解决办法:双击Home键调出后台关掉所有App然后再看看会不会闪退。一般因为内存不足这种出现闪退的几率是非常小的。&&3、越狱修改文件部分越狱用户可能会出现App闪退现象。特别是美化换过字体的,你所替换的字体字库不全,系统的APP就无法根据你的字体打开应用,此时就会闪退。解决办法:替换完整并兼容的字体,或换回原厂字体,也可以不越狱。4、其他闪退可能是出现这种情况很有可能是第三方助手造成的,首先普及下这类软件的原理:先按苹果的流程购买获得各APP的安装文件,然后放在自己的服务器上供用户通过自家的客户端下载。并模拟iTunes的通信规范往设备里装应用。这使得所有通过这类客户端安装的应用所对应的苹果ID是这个客户端的Apple ID,而非用户在自己设备上的常用ID,所以,即便你输入自家的ID也是无效的。所以就会直接出现闪退、或者弹出Apple ID输入框输入之后也闪退的情况。这种情况出现闪退之后可以在爱思助手里面重新下载安装这个应用,或者在爱思助手移动端“管理-修复”里面,修复这些闪退的应用即可。为什么很多的 iOS app 都有秒退现象?有什么好方法避免它?
有哪些好方法避免这种现象吗?
问题里的“秒退”如果我没理解错,应该是指程序显示完默认启动图片后,在初始化阶段就崩溃了(也可以叫“闪退”,不过最近“闪退”这个词已经被广泛应用于各种程序崩溃情况了,所以可能还是“秒退”更准确?)。 这种情况应和所谓的内存不足关系不大,很少有程序会在初始化时载入大量内容导致崩溃,并且这类问题也很容易在开发阶段被发现,所以内存不足造成秒退的可能性低(内存不足退,通常是程序用了一段时间,切换了几个画面以后发生的)。
而且秒退是发生在程序刚刚启动的时候,在开发、苹果审核阶段都没有被发现的最大可能性就是,这个问题只会发生在老版系统、老版机型上。
对于很多开发者(尤其是个人开发者),进行所有 iOS 版本,所有 iOS 机型覆盖测试是有难度的,苹果审核时也只是重点审核该应用在新机器、新版本下的运行情况,并不关注老系统。所以这也就是为什么会秒退的程序竟然也能通过苹果的审核。
在新 iOS 上正常的应用,到了老版本 iOS 上秒退最常见原因是系统动态链接库或Framework无法找到。这种情况通常是由于 App 引用了一个新版操作系统里的动态库(或者某动态库的新版本)或只有新 iOS 支持的 Framework,而又没有对老系统进行测试,于是当 App 运行在老系统上时便由于找不到而秒退。解决办法是等开发人员发现这个问题后升级程序,或由用户自行升级其操作系统。
还有一种常见的秒退是程序在升级时,修改了本地存储的数据结构,但是对用户既存的旧数据没有做好升级,结果导致初始化时因为无法正确读取用户数据而秒退。这类问题通常只需删除程序后重新安装一遍就能解决。但缺点是用户的既存数据会丢失——就算有备份可能也无济于事,因为备份下来的旧数据还是无法被正确升级。如果旧数据非常重要,那么就需要联系开发人员要求其进行程序修正了。
另一种已经变得不那么常见的秒退原因是 App 的设置不正确。例如在编译时没有编译 ARMv6 的版本,但是设置里却允许该 App 运行在 ARMv6 处理器的机器上(如:iPhone 1代,iPhone 3G,iPod touch 1、2代和3代8G版)。这个问题除了等开发人员升级外用户自己没什么办法解决。当然愿意换台新机器是最好的 ;) 这个问题目前已经能够在提交应用至 App Store 的时候被检查出来了,因此今后应该不太常见了。
还有一类秒退或是用到 App 里某个功能后必退的原因,是开发时用到了只有新版操作系统才支持的某个方法,而又没有对该方法是否存在于老系统中做出判断。例如程序启动时用到了 Game Center,而没有判断用户的机器是否支持 Game Center,于是就秒退了。
主要的秒退情况就是这么几个,这些都是以该 App 新版系统上能正常跑为前提的。
诸如内存不足、BAD_ACCESS
这类问题通常不管在新旧 iOS 上都会存在,如果是由于这类问题造成的秒退通常都能在测试和审核阶段被发现,因此并不常见。
我觉得大多数是由于后端返回的数据为空的情况下,iOS没有做判断就直接往下执行,这样必然崩溃
急于上线,测试不足,主要是代码中内存管理出的问题。即使内存不足可以通过释放缓存等相关操作来解决。
秒退可以简单的理解为程序crash, 程序越做越复杂, crash是无法完全避免的,涉及到很多因素,甚至设备本身的内存限制等等,上面几位都解释的非常详细了。顺便提一下apple在这方面做的比较到位的一点,就是直接闪退,对比一下android的做法,你就能发现为什么苹果好用了。 Android下面这个crash叫做Force close, 俗称FC. 因为每次程序crash都不像苹果一样闪退,而是弹出一个对话框, 上面写着程序Force close了,然后只有一个确定按钮. 这有什么意义呢? 本来程序崩溃用户就已经够烦的了,还非要弹出个对话框,而且只有一个毫无意义的按钮,让用户多一个无聊的操作。 见多了FC会觉得apple的设计太美好了 .
根绝我的开发经验 要是排除内存的问题 大部分都是因为多线程的问题 像core data这种不支持多线程的框架 在多线程下同步很麻烦
我想一般用户所谓的秒退应该就是程序crash了。
从开发的角度来讲一般有以下几个原因:
1.操作了不该操作的对象,野指针之类的。
2.对内存警告处理不当。
3.主线程UI长时间卡死,被系统杀掉。
4.程序内部异常逻辑没处理好。
5.sdk版本差异没处理好。
我来说一下这两天亲身遇到的应用程序秒退情况吧。
App 顺利被苹果审核团队通过,但放出时候后立马有 iOS4 用户反映存在秒退的情况。由此可以判断苹果的审核团队可能仅会使用 iOS5 系统来验证程序是否符合相关法律法规,iOS5 以前的兼容性测试可能没有做。
就我们的 App 出现 iOS4 环境秒退的原因,在于使用了一条新的 API 导致 iOS4 环境无法识别,直接在初始化的时候退出。解决的办法是,执行这条新 API 之前对当前允许环境进行判断,iOS5 的话则执行,否则跳过。
大部分都是由于未捕获的异常或者是野指针造成的,绝大部分不是因为内存用量的问题
相比内存不足,更多的是野指针问题。 建议开发者引入crash report工具,可以更准确定位。
徐哲说的挺全面的。
我们犯过一次非常严重也是因为野指针的错误,导致秒退。
在准备新手引导时,载入资源的路径为了图方便,做了本地化(NSLocalizedString),版本更新时,刚好翻译修改了这个字符串的翻译,导致路径找不到,由于这个模块没有做好异常处理app一开机就crash了。
测试时,所有的ios设备,所有的升级,所有的系统(ios 3.1 之后的版本)都测试通过了。
但就是有一个国家的语言版本没有测试。结果这个地区更新了的程序都崩溃了。
已有帐号?
无法登录?
社交帐号登录

我要回帖

更多关于 为什么玩游戏老闪退 的文章

 

随机推荐