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

原创 2015年07月09日 15:17:40

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();
		}


总结:

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

Apache CarbonData线上活动

-
  • 1970年01月01日 08:00

Android5.0之后打开开发者选项中的不保留活动,解决方案

在Andorid5.0之后,在开发者选项中有一项 不保留活动(用户离开后立即清除每个活动) 这是什么意思呢? 假如你从A 界面跳转到B界面。 这个时候你再按返回键,是直接退出了整个应用程序。意思就是...
  • q908555281
  • q908555281
  • 2015-10-09 09:51:24
  • 10814

android 检测不保留活动

某天,某猿经过浑身解数,突然对我说,这魅族手机有问题啊,怎么从新页面返回后,旧页面的数据全清空了呢? 我调试了一下,从新页面返回,旧页面的onCreate居然触发了,理应只跑onStart或onRes...
  • zszhi2011
  • zszhi2011
  • 2015-11-06 14:53:36
  • 1695

[Android] App在三星某些机子上闪退:"不保留活动"

今天遇到用户反映应用总是闪退。 现象:在MainActivity后,只要进入任何主进程相关的二级界面,都会导致应用闪退(注:不是崩溃引起的,只是闪退) 分析:1.看log日志,退出前有抛出异常,但...
  • sodino
  • sodino
  • 2013-08-05 23:13:19
  • 15079

如何 读取 设置 - 开发者选项 - 不保留活动 的状态

Settings.System.getInt(getContentResolver (),Settings.Global.ALWAYS_FINISH_ACTIVITIES, 0); ...
  • tndroid
  • tndroid
  • 2014-10-28 09:11:05
  • 1058

Android ActivityManagerService(AMS)的启动分析

Android中的AMS想必是做android开发的工程师耳熟能详的系统级别的服务,但是它又是如此地庞大(单单ActivityManagerService.java文件就2W+行代码),因此我们在学习...
  • Baniel01
  • Baniel01
  • 2016-06-29 11:36:06
  • 4930

我踩到的关于Fragment 状态的保存和恢复的坑

在进行项目开发的时候遇到了一个奇怪的坑,在Activity和Fragment传递对象的时候已经对对象进行了判空处理,但是在Fabric统计上还是出现了“NullPointException”...
  • u010198148
  • u010198148
  • 2016-08-14 23:44:34
  • 2204

【C#】对“xxxx::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,直到确信不会再次调用。

最近在做项目的时候,出现了几次“对“xxxx::Invoke”类型的已垃圾回收委托进行了回调。这可能会导致应用程序崩溃、损坏和数据丢失。向非托管代码传递委托时,托管应用程序必须让这些委托保持活动状态,...
  • catshitone
  • catshitone
  • 2016-12-14 16:30:07
  • 2659

Android判断是否已经开启开发者调试模式以及引导用户去开启相应设置

大家都是有经验的开发人员,直接撸码: 判断当前是否已经开启开发者调试模式: boolean enableAdb = (Settings.Secure.getInt(getContentResol...
  • fang323619
  • fang323619
  • 2017-07-13 14:22:41
  • 1533

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

哎,在网上找了老久,问了老多群,就是没有相关的解答,最后,被我自己给解决了,太佩服自己了,O(∩_∩)O哈哈~ Android 当打开“开发者模式”中的“不保留活动”后,程序应当怎么保持正常运行...
  • u010947098
  • u010947098
  • 2015-07-09 15:17:40
  • 5880
收藏助手
不良信息举报
您举报文章:Android 当打开“开发者模式”中的“不保留活动”后,程序应当怎么保持正常运行
举报原因:
原因补充:

(最多只允许输入30个字)