[RK3288][Android6.0] 调试笔记 --- 查看broadcast对应发送者进程
来源:互联网 发布:tcp和udp端口号区别 编辑:程序博客网 时间:2024/05/16 07:11
Platform: Rockchip
OS: Android 6.0
Kernel: 3.10.92
发现开机的时候Muisc会收到broadcast被调用起来, ActivityManager: Start proc 982:com.android.music/u0a29 for broadcast com.android.music/.MediaButtonIntentReceiver
那么如何确定是谁发的广播呢?
虽然Send Broadcast有很多方法,但是最终走的接口都一样,都是经过ActivityManagerService通过processNextBroadcast()接口来处理,在这里打印出对应的caller name就可以了。
kris@:~/rk3288/frameworks/base$ g df services/core/java/com/android/server/am/BroadcastQueue.javadiff --git a/services/core/java/com/android/server/am/BroadcastQueue.java b/services/core/java/com/android/server/am/BroadcastQueue.javaindex 6de8579..4e8ea51 100644--- a/services/core/java/com/android/server/am/BroadcastQueue.java+++ b/services/core/java/com/android/server/am/BroadcastQueue.java@@ -1063,9 +1063,11 @@ public final class BroadcastQueue { } // Not running -- get it started, to be executed when the app comes up.- if (DEBUG_BROADCAST) Slog.v(TAG_BROADCAST,+ Slog.v(TAG_BROADCAST, "Need to start app [" + mQueueName + "] " + targetProcess + " for broadcast " + r);+ Slog.v(TAG_BROADCAST, "callerApp:"+r.callerApp);
对应log:
BroadcastQueue: Need to start app [foreground] com.android.music for broadcast BroadcastRecord{6bbc495 u-1 android.media.AUDIO_BECOMING_NOISY}
BroadcastQueue: callerApp:ProcessRecord{6bc6f30 551:system/1000}
ActivityManager: Start proc 2836:com.android.music/u0a29 for broadcast com.android.music/.MediaButtonIntentReceiver
从log可以看出是”android.media.AUDIO_BECOMING_NOISY” 这个broadcast触发了music进程的启动,调用的app是system,即system_server, pid是551, uid是1000
- [RK3288][Android6.0] 调试笔记 --- 查看broadcast对应发送者进程
- [RK3288][Android6.0] 调试笔记 --- 查看音乐播放对应的进程名
- [RK3288][Android6.0] 调试笔记 --- 查看Activity对应调用的进程
- [RK3288][Android6.0] 调试笔记 --- eMMC分区号和名字的对应
- [RK3288][Android6.0] 调试笔记 --- RT5640 I2S对应的ADC/DAC通路
- [RK3288][Android6.0] 调试笔记 --- 调试串口的更换
- [RK3288][Android6.0] 调试笔记 --- 移除锁屏功能
- [RK3288][Android6.0] 调试笔记 --- Su添加密码登陆功能
- [RK3288][Android6.0] 调试笔记 --- 伪电池驱动添加
- [RK3288][Android6.0] 调试笔记 --- 普通串口的添加
- [RK3288][Android6.0] 调试笔记 --- PreviewCallback获取NV12格式数据
- [RK3288][Android6.0] 调试笔记 --- 替换系统签名
- [RK3288][Android6.0] 调试笔记 --- 设置中文为默认输入法
- [RK3288][Android6.0] 调试笔记 --- 通用GPIO驱动控制LED
- [RK3288][Android6.0] 调试笔记 --- apk安装添加黑名单
- [RK3288][Android6.0] 调试笔记 --- 实时录音会有呲呲噪音问题
- [RK3288][Android6.0] 调试笔记 --- I2C通信失败问题
- [RK3288][Android6.0] 调试笔记 --- 读取当前DDR频率方法
- E
- js数值
- iOS性能优化摘要
- 基于阿里云数加MaxCompute的企业大数据仓库架构建设思路
- 多条目加载+XlistView刷新加载更多
- [RK3288][Android6.0] 调试笔记 --- 查看broadcast对应发送者进程
- 第四场训练赛总结
- 深度学习之优化算法笔记
- sed
- IIS下配置跨域设置Access-Control-Allow-Origin
- HibernateDaoSupport让简单的增删改查
- Timer倒计时
- 树链剖分 洛谷p3384
- Glide override 不起作用