android debug技巧
介绍一些实用的android 源代码开发debug技巧,让你快速定位并找到相关代码,基于android-10.0.0_r36
chadm
这个作者很懒,什么都没留下…
展开
-
android AudioFocus处理流程
android系统允许2个或以上的android应用同时向同一个输出流播放音频,系统会将所有的系统会将所有音频流混合在一起。以下分析是基于android-10.0.0_r36代码AudioFocus采用合作模式,行为恰当的音频应用应根据以下一般准则来管理音频焦点:在即将开始播放之前调用 requestAudioFocus(),并验证调用是否返回 AUDIOFOCUS_REQUEST_GRANTED。如果按照本指南中的说明设计应用,则应在媒体会话的 onPlay() 回调中调用 requestAudi原创 2020-11-14 20:50:09 · 2029 阅读 · 0 评论 -
window 10下搭建android源代码opengrok
1.相关工具下载安装主要有4个工具:Java JDK、opengrok、ctags、tomcatjdk 1.8下载地址:https://mirrors.tuna.tsinghua.edu.cn/AdoptOpenJDK/8/jdk/x64/windows/opengrok下载地址:https://mirrors.tuna.tsinghua.edu.cn/arch4edu/x86_64/opengrok-1.4.5-1-any.pkg.tar.zstctag下载地址:https://原创 2020-10-11 21:42:47 · 435 阅读 · 0 评论 -
android Back键处理流程及Log分析
back原创 2020-09-30 22:40:20 · 2046 阅读 · 0 评论 -
android Home键响应流程Log分析
home原创 2020-09-30 21:08:51 · 876 阅读 · 3 评论 -
Window10上在wsl2环境中编译android 10
wsl2是适用于 Linux 的 Windows 子系统可让开发人员按原样运行 GNU/Linux 环境 - 包括大多数命令行工具、实用工具和应用程序 - 且不会产生传统虚拟机或双启动设置开销1.wsl2 安装详细安装过程见官方说明文档,对win10 有版本要求:运行 Windows 10(已更新到版本 2004 或更高版本,对于 ARM64 系统则是内部版本 19041)具体安装过程参考:wsl2的安装说明安装Linux系统,打开 Microsoft Store,并选择你偏好的 Linux原创 2020-09-17 23:53:49 · 1436 阅读 · 0 评论 -
Activity 启动流程log分析
为了方便跟踪启动过程中的相关流程,打开了如下开关以及添加了如下Log,1、添加Log打印1.1、2个setState()其中ActivityRecord运行在system_server进程中,ActivityThread运行在App进程中,方法可以完整的反映整个Activity的变化过程,// 在ActivityRecord.java文件中void setState(ActivityState state, String reason) { if (DEBUG_STATES) Slog.v原创 2020-09-17 23:34:19 · 4089 阅读 · 0 评论 -
四大组件Debug--Activity
关于Activity的debug,android里面已经提供了2个debug文件frameworks/base/services/core/java/com/android/server/am/ActivityManagerDebugConfig.javaframeworks/base/services/core/java/com/android/server/wm/ActivityTaskManagerDebugConfig.java1. ActivityManagerDebugConfig里原创 2020-09-07 20:50:52 · 756 阅读 · 0 评论 -
android系统设置状态变化debug
如在OTA升级后应用未更新问题分析文章中介绍,当怀疑和系统设置里面的system/global/secure里面的设置项有关联的时候,可以打开如下:DEBUG点:把DEBUG开关设置为true源代码里面已经有现成的开关:除了在query/udpate/delete/insert方法都有debug,具体值的地方也有打印,以global为例子 private boolean updateGlobalSetting(String name, String value, String tag,原创 2020-09-07 00:02:56 · 235 阅读 · 0 评论 -
SharedPreferences和SQLite数据变化监听
android 提供了如下保存数据和文件的方法https://developer.android.google.cn/guide/topics/data/data-storage?hl=zh-cn本文主要介绍SharedPreferences和SQLite1.SharedPreferencesDEBUG点:commitToMemory方法的mapToWriteToDisk.put(k, v)前后,可以直接打印变化的值下面简单说明一下debug的来源,此类没有现成的debug点,类里面的debu原创 2020-09-06 23:48:08 · 1215 阅读 · 0 评论 -
android找到当前显示界面java类
平时在进行整机开发的过程中,遇到不熟悉的模块或三方应用,可以通过如下方法找到当前界面显示java文件1.通过monitor工具工具在android sdk里面,目录如下:sdk/tools/monitor启动后界面如下a)查看应用包名和UI界面,找到界面相关的View id或string idb)然后通过grep命令,在源代码里面找到对文件应的布局文件//以字符串为例,因为布局文件id很多地方都是共用的,很难找到是具体哪个地方在用chadm@chadm-HP-ZHAN-66-Pro-原创 2020-09-06 23:06:46 · 916 阅读 · 0 评论 -
自己动手刷pixel镜像
1.刷Google原生镜像国内pixel镜像网站前提:pixel已经解锁在ubuntu下面,进入fastboot后会提示no permissions (user in plugdev group; are your udev rules wrong?解决方案参考https://github.com/snowdream/51-android/blob/master/51-android.rules查看USB备lsusb查看pixel的设备ID ,github上的google原创 2020-08-19 20:50:06 · 3428 阅读 · 0 评论