当打开这个设置以后,程序的Activity会自动销毁,每次返回的时候就会不断重oncreate,此时伴随的问题多多。

参考文档:http://www.bubuko.com/infodetail-960685.html

标签:android   开发者模式   不保留活动   

Android 当打开“开发者模式”中的“不保留活动”后,程序应当怎么保持正常运行咧。。?

在这几天,我一直在纠结这个问题。从发现,程序出现这个问题,是因为“开发者模式”中的“不保留活动”被打开了,到怎么获取“不保留活动”的值。

发现“不保留活动”,是从京东客服端获得的灵感

得到“不保留活动”的值,是查看了Android原声的APP,Settings应用程序,查看源码,找到了相应的地方。。。

自此,bug是怎么产生的,以及怎么获取“不保留活动”的值,都解决了,下面就上点代码吧,O(∩_∩)O~

代码是经过公司程序测试过的,天然无污染,请放心使用。。。

 

int alwaysFinish = Settings.Global.getInt(getContentResolver(), Settings.Global.ALWAYS_FINISH_ACTIVITIES, 0);
		if(alwaysFinish == 1){
			Dialog dialog = null;
			dialog = new AlertDialog.Builder(this)
					.setMessage(
							"由于您已开启'不保留活动',导致i呼部分功能无法正常使用.我们建议您点击左下方'设置'按钮,在'开发者选项'中关闭'不保留活动'功能.")
					.setNegativeButton("取消", new OnClickListener() {
	
						@Override
						public void onClick(DialogInterface dialog, int which) {
							dialog.dismiss();
						}
					}).setPositiveButton("设置", new OnClickListener() {
	
						@Override
						public void onClick(DialogInterface dialog, int which) {
							Intent intent = new Intent(
									Settings.ACTION_APPLICATION_DEVELOPMENT_SETTINGS);
							startActivity(intent);
						}
					}).create();
			dialog.show();
		}

 

 

总结:

这个“开发者模式”中的“不保留活动”被开启之后,产生了诸多问题,一一解决之后(解决时也发了诸多牢骚),但是在这里也不得说一下,那个用户,闲得无聊,开启这个啊,他懂这是什么意思吗?这个是能随便动的吗?知道我干了几天才解决的吗?你能找到“开发者模式”是怎么打开的就不错了。。。。~~~~(>_<)~~~~