当前位置: 首页 > news >正文

Android 实时监听Activity堆栈变化(系统应用)

    private val mIActivityManager: IActivityManager = ActivityManagerNative.asInterface(ServiceManager.getService(Context.ACTIVITY_SERVICE))

方式一(registerProcessObserver) :

mIActivityManager.registerProcessObserver(mIProcessObserverStub)private val mIProcessObserverStub = object : IProcessObserver.Stub(){override fun onForegroundActivitiesChanged(pid: Int,uid: Int,foregroundActivities: Boolean) {// 栈发生变化}override fun onForegroundServicesChanged(pid: Int, uid: Int, serviceTypes: Int) {}override fun onProcessDied(pid: Int, uid: Int) {}}

方式二(registerTaskStackListener): 

        mIActivityManager.registerTaskStackListener(object : TaskStackListener(){override fun onTaskStackChanged() {super.onTaskStackChanged()dLog("$TAG onTaskStackChanged...")}})

权限添加: 

    <uses-permission android:name="android.permission.SET_ACTIVITY_WATCHER"/><uses-permission android:name="android.permission.MANAGE_ACTIVITY_STACKS"/>

http://www.lryc.cn/news/342077.html

相关文章:

  • 双目深度估计原理立体视觉
  • Redis探索之旅(基础)
  • C语言/数据结构——每日一题(链表的中间节点)
  • 这是用VS写的一个tcp客户端和服务端的demo
  • 代码随想录算法训练营day18 | 102.二叉树的层序遍历、226.翻转二叉树、101. 对称二叉树
  • 工厂自动化升级改造参考(01)--设备通信协议详解及选型
  • 数据结构与算法之经典排序算法
  • VSCode通过SSH连接虚拟机Ubuntu失败
  • 在Codelab对llama3做Lora Fine tune微调
  • KEIL 5.38的ARM-CM3/4 ARM汇编设计学习笔记13 - STM32的SDIO学习5 - 卡的轮询读写擦
  • 【C++】HP-Socket(三):UdpClient、UdpServer、UdpCast、UdpNode的区别
  • java设计模式六 访问者
  • 中间件研发之Springboot自定义starter
  • libcity笔记:添加新模型(以RNN.py为例)
  • Ansible---自动化运维工具
  • 5.Git
  • 探索中位数快速排序算法:高效寻找数据集的中间值
  • 密码学《图解密码技术》 记录学习 第十五章
  • 如何在 Ubuntu 16.04 上为 Nginx 创建自签名 SSL 证书
  • 5.协议的编解码
  • 数据结构基础| 线性表
  • 嵌入式学习
  • sass-loader和node-sass与node版本的依赖问题
  • 基于BP神经网络的QPSK解调算法matlab性能仿真
  • Linux服务器常用巡检命令
  • VSCode 配置 CMake
  • ​《MATLAB科研绘图与学术图表绘制从入门到精通》示例:绘制德国每日风能和太阳能产量3D线图
  • 【信息系统项目管理师知识点速记】质量管理:控制质量
  • 【云原生】Pod 的生命周期(一)
  • Golang | Leetcode Golang题解之第71题简化路径