一般App闪退是由于以下几个原因造成的:
1、缓存垃圾过多
由于安卓系统的特性,如果长时间不清理垃圾文件.会导致越来越卡.也会出现闪退情况.
2、运行的程序过多,导致内存不足
3、应用版本兼容问题
如果应用版本太低,会导致不兼容,造成闪退。此外,有些新版本在调试中,也会造成应用闪退。
解决方法:如果是版本太旧,更新为新版本即可;如果是新版本闪退,可能是应用在改版调试,可卸载后安装旧版。
4、检查APP中访问网络的地方,组件中的ImageView是否可以正常的下载并显示到app 页面上。
5、检查APP的sdk和手机的系统是否兼容。
6、在一些特定情况下的闪退,比如播放视频,在Android5.0 升级到Android6.0的时候,有些系统API老版本有,新版本没有,到时回去对象的时候失败,报空,系统就会出现闪退问题。
移动端APP闪退的主要原因:
1.空指针:对象没有初始化就使用了;
2.空函数:有事件源但没有对应的事件对象;
3.死循环:没有合理的循环控制流;
4.内存泄露:同一个对象不停地开辟,而且没有释放;
5.内存溢出:程序所消耗的内存大于硬件提供的内存;
6.网络:异步加载时提前调用了数据(现象是在弱网时,根源是空指针);
7.界面UI:像拍照没有附加于ControlView;
8.主线程:需要主线程执行的,放于子线程里执行了。比如:网络电话--网络电话是用C语言写的,在高级语音中要调用中,需要加线程转换。