
android源码研
xqyphp
这个作者很懒,什么都没留下…
展开
-
Android 非ROOT GDB 调试步骤
直接把命令列出来吧 1、cmd>adb shell am start -D -n appname/LaunchActivity 2、cmd>adb shell 3、cmd>ps | grep str=> get pid 查找进程pid 4、cmd>run-as appname 5、cmd>adb push gdbserver /data/data/appname/tmp 6、cmd>m原创 2017-10-16 17:29:03 · 631 阅读 · 0 评论 -
Binder 内存分配
android6.0已经把binder_buffer有关的操作和binder.c分开了,实现在binder_alloc.c文件里面 一、binder_alloc_mmap_handler函数进行map,先看这个结构体:struct binder_alloc { struct mutex mutex; struct vm_area_struct *vma; struct mm原创 2017-10-10 11:13:26 · 2578 阅读 · 0 评论 -
Android DEX 文件打开分析
函数为 DexFile_openDexFileNativeClassLinker::OpenDexFilesFromOat 1、 FindOpenedOatDexFile 查找缓存中是否存在,checksum为空或者相同 2、 CreateOatFileForDexLocation 1、生成oat文件 执行execv 调用 dex2oat 生成Oat 会启动进程生成较慢原创 2017-10-13 16:44:15 · 2717 阅读 · 0 评论 -
Binder的JAVA接口
之前看的binder的那么多类和接口感觉蛮迷糊的,以ActivityManager为例理了一下。IBinder:远程对象,关键接口就一个transact,发送数据到远程对象上。Binder 实现IBinder接口 onTransact 具体发送的类型数据。ActivityManagerNative 实现了onTransact ,用于解析数据传输,提供方法getDefault获取Acti原创 2017-11-20 20:56:11 · 375 阅读 · 0 评论