博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Android App退出检测
阅读量:5277 次
发布时间:2019-06-14

本文共 1623 字,大约阅读时间需要 5 分钟。

app的退出检测是很难的,但是获取app“要退出”的状态就容易多了,退出的瞬间并不是真的退出了,ActivityManager要销毁activity,也需要一些时间和资源的。 

先见下面的运行效果: 
这里写图片描述

gif做的比价粗啊, 

两个activity的界面就不介绍了,主要是在APP启动的时候开启一个服务,application代码如下:

public class MyApplication extends Application {    @Override    public void onCreate() {        super.onCreate();        Intent intent=new Intent(this,CheckExitService.class);        getApplicationContext().startService(intent);    }}

service的代码如下:

public class CheckExitService extends Service {    private String packageName = "test.minwenping.com.appexitdemo";    @Nullable    @Override    public IBinder onBind(Intent intent) {        return null;    }    @Override    public void onTaskRemoved(Intent rootIntent) {        super.onTaskRemoved(rootIntent);        Toast.makeText(CheckExitService.this, "App要退出了", Toast.LENGTH_SHORT).show();    }    //service异常停止的回调    @Override    public int onStartCommand(Intent intent, int flags, int startId) {        ActivityManager activtyManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);        List
runningAppProcesses = activtyManager.getRunningAppProcesses(); for (int i = 0; i < runningAppProcesses.size(); i++) { if (packageName.equals(runningAppProcesses.get(i).processName)) { Toast.makeText(this, "app还在运行中", Toast.LENGTH_LONG).show(); } } return START_NOT_STICKY; } @Override public void onCreate() { super.onCreate(); Toast.makeText(CheckExitService.this, "App检测服务开启了", Toast.LENGTH_SHORT).show(); }}

还有尝试了守护线程,UI就只有一个线程,想从这方面下手,但是都失败了

转载于:https://www.cnblogs.com/zhujiabin/p/7560690.html

你可能感兴趣的文章
crawler_爬虫开发的曲线图
查看>>
nodejs安装和卸载
查看>>
根据相关资料,自己实现的线程池
查看>>
ios统计流量代码
查看>>
Unity3D 游戏引擎之IOS高级界面发送消息与Unity3D消息的接收(九)
查看>>
Linux安装技巧--安装Uuntu与windows8/10共存
查看>>
Android系统语言默认设置为简体中文
查看>>
安装开源项目 MultiType (基于 RecyclerView)出现的各种问题 -- 自己的第一篇博客...
查看>>
4、spring核心AOP
查看>>
Vue学习之不同组件之间的消息传递
查看>>
@Scheduled(cron = "0/5 * * * * *")将时间改为配置
查看>>
spring -boot定时任务 quartz 基于 MethodInvokingJobDetailFactoryBean 实现
查看>>
Javascript——说说js的调试
查看>>
BZOJ.2707.[SDOI2012]走迷宫(期望 Tarjan 高斯消元)
查看>>
android权限大全
查看>>
《设计师要懂心理学》-第五章-人如何集中注意力
查看>>
MVC3 - 控制器
查看>>
[源码]解析 SynchronousQueue 上界,下界.. 数据保存和数据传递. 堵塞队列. 有无频繁await?...
查看>>
PHPStorm默认在新窗口打开
查看>>
MongoDB基本概念和安装配置
查看>>