现象:安卓应用,通过安卓自带的程序安装器安装完成以后,点击“打开按钮”,打开程序后,点击手机home键返回桌面,再次点击桌面应用图标打开应用,观察现象--应用重启,应用入口activity重新启动。

分析:通过程序安装器打开应用的方式与桌面图标打开应用的方式是有区别的。具体差别为,通过程序安装器打开应用,安卓启动应用的时候,会有一个setPackage的行为,因为这个setPackage的行为,会导致最后应用入口activity打开的时候,会传值一个FLAG_ACTIVITY_BROUGHT_TO_FRONT过来,导致应用的程序栈发生改变,从而导致后续现象的发生。

FLAG_ACTIVITY_BROUGHT_TO_FRONT官方描述如下:If, when starting the activity, there is already a task running that starts with this activity, then instead of starting a new instance the current task is brought to the front. The existing instance will receive a call to Activity.onNewIntent() with the new Intent that is being started, and with the Intent.FLAG_ACTIVITY_BROUGHT_TO_FRONT flag set. This is a superset of the singleTop mode, where if there is already an instance of the activity being started at the top of the stack, it will receive the Intent as described there (without the FLAG_ACTIVITY_BROUGHT_TO_FRONT flag set). See the Tasks and Back Stack document for more details about tasks.

注意黑色字体。这就是造成该现象发生的关键点。

解决方法如下图:

增加flag判断

that's all-------------------------------------------------------------------------------------------------------------------------------

android重新打开应用程序,关于安卓应用后台运行后,重新进入,应用重新打开问题...相关推荐

  1. Android 判断app是否在前台还是在后台运行

    Android 判断app是否在前台还是在后台运行,直接看代码,可直接使用. [java]  view plain copy public static boolean isBackground(Co ...

  2. 编写并运行php程序,上传所编写的PHP程序代码,并上传运行后的效果截图

    上传所编写的PHP程序代码,并上传运行后的效果截图 更多相关问题 [多选] 对税务机关的下列行政行为,纳税人可以申请行政复议的有(). [多选] 纳税人收到税务机关的行政处罚决定书之后,在法定期限内可 ...

  3. 华为怎么关Android,华为手机怎么关闭后台运行程序 华为手机关闭后台运行程序方法...

    初次使用华为手机的朋友注意了,华为手机关闭程序时,容易忘记从后台关闭.这样就会导致手机后台运行程序越来越多,手机使用变得越来越慢.那么怎么操作才能从后台上关闭程序呢? 华为手机关闭后台运行程序方法 这 ...

  4. linux打开pythonshall,linux系统shell脚本后台运行python程序

    python开发的同学们应该都知道怎么样去启动一个python应用,但是一旦我们把python应用部署到linux服务器上该如何启动呢? 方式①:就是使用进程管理工具,比如supervisor.想了解 ...

  5. android界面最小化实现,Android-Android 怎么实现应用程序最小化到后台运行,不被系统kill...

    Android中的应用进程可以分为两种:一种是"体验型"进程,一种是"性能型"进程."体验型"进程即可以与用户进行交互的进程,"性 ...

  6. 程序在Linux下后台运行,进程查看及终止

    目录 nohup后台运行 查看运行的后台进程 jobs ps 其他对于任务的操作 终止后台运行的进程 nohup后台运行 nohup command >out.file 2>&1 ...

  7. python画图保存成html格式、用浏览器打开页面为空白_解决pyecharts运行后产生的html文件用浏览器打开空白...

    根据网站资源引用说明:pyecharts 使用的所有静态资源文件存放于 pyecharts-assets 项目中,默认挂载在 https://assets.pyecharts.org/assets/ ...

  8. xshell怎么让程序后台运行_使程序在Linux下后台运行

    我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关机不影响日本那边的程序运行.( ...

  9. 使程序在Linux下后台运行

    一.为什么要使程序在后台执行 我们计算的程序都是周期很长的,通常要几个小时甚至一个星期.我们用的环境是用putty远程连接到日本Linux服务器.所以使程序在后台跑有以下三个好处: 1:我们这边是否关 ...

  10. linux 让程序在服务器保持后台运行

    首先创建一个python程序,让它一直运行,然后你中途退出,过一段时间回来,可看到程序一直在运行的结果. #! /usr/bin/env python import timea = 1 while 1 ...

最新文章

  1. AI寒冬将至?这10大突破点至关重要
  2. 面向人工智能的计算机体系结构
  3. IOS - No provisioning profiles with a valid signing identity 一种解决方法
  4. javascript中常用数组方法详细讲解
  5. c语言函数实现strstr,C语言实现strstr函数模拟
  6. hdu6107 倍增法st表
  7. [数据库]oracle导出数据库
  8. 《Python游戏趣味编程》 第10章 拼图游戏
  9. 简单的签到代码_签到功能,用 MySQL 还是 Redis ?
  10. Google Maps API v3:如何删除所有标记?
  11. 数据结构之二叉查找树
  12. GML C++ Camera Calibration Toolbox 相机标定畸变矫正
  13. 关于导入百度导航SDK报错以及解决方案
  14. b5纸尺寸_画册设计一般多大 宣传册设计用多大尺寸比较合适
  15. [ARC093-F][容斥原理][DP]Dark Horse
  16. 专家称银行收取小额账户管理费不合法不道德-小额账户管理费-储户
  17. React Native Camera的新手教程
  18. 祝各位SAPER元旦快乐!
  19. 放弃文华财经,自己编程实现期货程序化交易
  20. linux下运行omnet,Linux中安装OMNeT++过程

热门文章

  1. unity探索者之微信分享回调
  2. codeforces 665E Beautiful Subarrays
  3. php curl使用
  4. C#基础-Func,Action
  5. 秋招面经(Java开发)
  6. HashTable 源码解析 jdk1.8
  7. Linux服务器更换主板后,网卡识别失败的处理方法
  8. 开发工具总结(6)之Android Studio模板配置详解(提高开发效率必备技能)
  9. Facebook正测试对话式的评论新界面
  10. Java-IO操作性能对比