为什么Android应用异常后会自动重启

为什么Android应用异常后会自动重启,第1张

通常是注册了广播接收者BroadcastReceiver

因为安卓系统,有非常多的广播,例如网络状态改变就会发送广播,开机,也会发送广播

安装卸载应用也会发送广播,等等

那么程序就可以在广播中启动service,

而service中有个onStartCommand 有个返回值,就是告诉android 如果进程被kill

怎么处理,可以设置为重启

您好:

根据您的描述,我们建议您:

1、手机中 *** 作下:设定-应用程序管理器-滑动屏幕选项(全部)-找到信息-点击进入,清除数据试下

2、设定-应用程序管理器-滑动屏幕选项(全部)-BadgeProvider点击进入清除数据试下

3、若问题依旧存在(第三方软件引起)

请备份手机数据(电话薄、短信息、多媒体资料等),将手机恢复出厂设置尝试(设定-重置-恢复出厂设定)

注:存储在手机中的数据全部丢失,一定要提前备份到sim卡和sd卡中再 *** 作

欢迎访问三星关怀:

>

是在开发app时设置的相关功能,参考代码:

假如开发的app有这个需求的话:崩溃后自动重启或者捕获异常信息。你可以参照下文:

package comtanabnormalrestart;

import javalangThreadUncaughtExceptionHandler;

import androidappApplication;

import androidcontentIntent;

public class AppContext extends Application

{

protected static AppContext instance;

public void onCreate() {

superonCreate();

instance = this;

ThreadsetDefaultUncaughtExceptionHandler(restartHandler); // 程序崩溃时触发线程 以下用来捕获程序崩溃异常

}

// 创建服务用于捕获崩溃异常

private UncaughtExceptionHandler restartHandler = new UncaughtExceptionHandler() {

public void uncaughtException(Thread thread, Throwable ex) {

restartApp();//发生崩溃异常时,重启应用

}

};

public void restartApp(){

Intent intent = new Intent(instance,MainActivityclass);

intentaddFlags(IntentFLAG_ACTIVITY_NEW_TASK);

instancestartActivity(intent);

androidosProcesskillProcess(androidosProcessmyPid()); //结束进程之前可以把你程序的注销或者退出代码放在这段代码之前

}

}

这个是application级别的应用

其实关键还是UncaughtExceptionHandler类

b67指令引用的0x80391510内存不能为read

)的问题,总结出了以下解决办法,看看下面您的电脑是哪方面出的问题,只有对症下药问题才能解决。这个问题的出现主要有几个方面:

1如果使用盗版系统,有可能会出现这样的问题,建议:使用正版。

2如果对电脑没有影响或偶尔出现不用管它,重启电脑会自动消失。

3病毒引起的,升级杀毒软件,对电脑全盘杀毒。

4硬件上的原因,主要是内存条不兼容引起的,必要时更换内存。

5系统或其它软件引起的,检查电脑年、月、日是否正确。

6驱动不稳定,重新安装或及时更新驱动。同时使用优化大师、360、鲁大师清理垃圾文件也会出现该问题。

7打开或关闭IE、QQ、游戏、播放器等出现该内存不能为read或written,首先想到的可能就是这款软件的问题。

8如果您使用IE8,打补丁后,很多网友反映不太稳定。最简单的解决办法就是:下载更换其它浏览器。比如:360安全浏览器、世界之窗浏览器、傲游等

9系统本身有问题,及时安装官方发行的补丁,必要时重装系统

10某个软件出现的问题,这里主要是看看开机时运行的软件,用360等检查开机运行的软件,把不必要运行的软件都去掉

11软件冲突,卸载有问题的软件。(比如:安装或运行时出现,升级、打补丁、更换其它版本或卸载问题才能解决。

12下面的处理方法可以试试:如果不行,只有恢复或重装系统了

13试用命令排除

开始-运行-

输入cmd--

回车,在命令提示符下输入下面命令

for

%1

in

(%windir%\system32\dll)

do

regsvr32exe

/s

%1回车。

完成后,在输入下面的

for

%i

in

(%windir%\system32\ocx)

do

regsvr32exe

/s

%i

回车。

如果怕输入错误,可以复制这两条指令,然后在命令提示符后击鼠标右键,打“粘贴”,回车,耐心等待,直到屏幕滚动停止为止。重启电脑

14运行regedit进入注册表,

在HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellExecuteHooks

下,应该只有一个正常的键值,

将其他的删除。

15如果上面的方法都不能解决,从网上下载一个“read修复工具”修复一下试试

如果有不明之处,请参考:

复制此答案的朋友请自重!!!

看看程式的报错程式是什么程序

把报错的程序卸载重装 开始--->运行-->输入msconfig

在一般里面选择"选择的一般启动"勾上

再点击"启动",把报错的程式对应的名称的勾去掉确认

解决应用程序错误的方法步骤:1首先排除病毒原因,使用最新版本的360杀毒快速查杀3-5分钟,根据检查结果,点击立即处理。

2如果应用程序出错的提示是缺少某个文件,那就可能是这个文件损坏,根据这个组件查询是哪个系统组件损坏,重新安装相关组件,恢复程序文件,一般即可解决。

3若是相关软件自身的组件缺失,只需要重新安装这个软件即可。比如运行迅雷时提示缺少某个文件,可以尝试重新安装迅雷。

4若以上方法无效,可能是软件之间的冲突导致出错。解决办法是尝试关闭几个无关的正在运行的应用程序,看看错误是否还会重现。若已解决,就知道是哪两个软件冲突,不再同时运行这两个软件即可解决。或者向厂商反馈故障,督促厂商升级解决。如果不清楚是哪几个软件冲突,可行的解决办法是使用360安全卫士的系统优化,在一键优化里,关闭一些不常用的软件启动。这样开机后运行的程序少一些,冲突的概率会下降。

5对于另一种应用程序出错,截图显示“应用程序出错,内存地址不能读或不能写”,这种情况最复杂,若以上方法不能解决,则很可能是硬件(主要是内存)故障,可能是兼容性不良,只能联系硬件供应商修理。或者重装系统,重装后短时间内可能会有效。

以上就是关于为什么Android应用异常后会自动重启全部的内容,包括:为什么Android应用异常后会自动重启、频繁提示程序异常,需要重启、求助:为什么Android应用异常后会自动重启等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/10127863.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-05
下一篇 2023-05-05

发表评论

登录后才能评论

评论列表(0条)

保存