应用程序出现闪退,可能有以下原因:
1.应用程序自身漏洞:开发的应用程序代码存在缺陷,造成大多数设备在运行该程序时会出现悔正盯闪退的情况。这种情况需要开发者进行解决。
2.设备问题:设备问题主要碧和包括:系统固件版本不支持、系统配置(CPU、RAM等)不支持。这种情况表现为部分设备能正常运作该程序,而其他设备会闪退。例如:iOS上最新版的水果忍者在iPhone/iTouch1代上运行就会出现闪退的情况,而在iPhone4上则可以完美运行。
若手机打开软件出现闪退、强制关闭等情况,建议:
1.可能是该软件缓存较多导致无法正常运行,建议清除软件缓存尝试:设置-查找“应用程序管理器”-(全部)-查找该软件-(存储)-清除数据(注:该应用程序的全部数据将永久性删除)。
2.若是可卸载软件,建议将软件清敏卸载后重新安装或更换其他软件版本再次安装尝试。
3.若无效,请更新手机系统版本:设置-关于手机(关于设备)-手动下载更新/自动下载更新(软件更新/系统更新-更新)。注:升级前请备份设备中数据。
4.若已是最新版本,请备份设备中数据然后恢复出厂设置尝试。
这个软件版本太低或者没有内存造成的闪退, *** 作方法如搏灶如下:
1、首先打开手机,找到设置并打开,如下图所示。
2、基启然后在打开的设置页面中,找到更多设置,打开,如下图所示。
3、接着在打开的页面中,找到应用程序,打开,如下图所示。
4、然后在打开的页面中,选择已安装或者其他,找到出问题的程序,如下图所示。
5、最后在打开辩明的页面中,有问题的程序,点击清除数据或者卸载,如下图所示,这样问题就解决了。
在华为云测的mate 20 pro机器上复现了这个现象,通过查看日志,友盟的 channel 进程中 application 的 onCreate 中的某个初始化报了 NullPointerException , channel 进程挂掉并不会导致主进程挂掉 。
集成过友盟推送的应该都知道,友盟推送会有一个 channel 进程,而 多进程启动会导致 application 的 oncreate 的再次调用 ,所以在做多进程 Application 初始化的时候要特别小心,不仅要避免不必要的资源加载,还要额外注意全局 context 的引用。
这里报了 NullPointerException 的原因就是只在主进程的 Application 中创建了全局的 context ,在 channel 进程中没有初始化全局 context ,然后调用 context.getSharedPreferences 的报了 NullPointerException ,而这个 context.getSharedPreferences 实际上应该只在主进程调用,不应该在 channel 进程调用!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)