binder
文章平均质量分 74
主要记录学习Android binder的笔记
HZero.chen
随风潜入夜,润物细无声
展开
-
Android binder学习笔记3 - 注册服务(addService)
1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要讲述 注册服务(addService)。2....翻译 2021-09-10 21:58:12 · 923 阅读 · 0 评论 -
Android binder学习笔记1 - 启动ServiceManager
1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要讲述 启动ServiceManager。2. ServiceManager的启动service servicemanager /system/bin/servicemanager class core animation user system group system翻译 2021-09-10 21:55:18 · 731 阅读 · 0 评论 -
Android binder学习笔记0 - 概述
1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照源码进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要概述部分。Android:RLinux: kernel4.192. binder架构以activity调用ActivityManagerService的startServcie为例:Java应用层: 对于上层应用通过调用AMP.startService, 完全可以不用关心底层,经过层层调用,最终必翻译 2021-09-10 21:53:45 · 184 阅读 · 0 评论 -
Android binder学习笔记 - binder线程创建
目录1. 前言2. vold/main|- -ProcessState::self()|- -ps->startThreadPool()|- - -ioctl(mProcess->mDriverFD, BINDER_WRITE_READ, &bwr)|- - -executeCommand(cmd)参考文档1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对翻译 2021-09-10 22:30:22 · 1124 阅读 · 0 评论 -
AIDL binder实例
1.前言本章主要参考了Binder系列9—如何使用AIDL,介绍aidl实现binder通信的主要工作2. aidl接口文件#IRemoteService.aidl interface IRemoteService { int getPid(); MyData getMyData();}3. IRemoteService.java文件sdk根据aidl接口文件会自动生成IRemoteService.java文件,包含了实体binder(stub类)和代理binder(prox翻译 2021-09-10 22:33:52 · 193 阅读 · 0 评论 -
Android binder学习笔记pre - binder驱动
1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要讲述binder驱动部分。2. binder驱动领域模型3. binder_init...原创 2021-09-10 22:29:34 · 220 阅读 · 0 评论 -
Android binder学习笔记2 - 获取ServiceManager
目录1. 前言2. 主要类与对象3. defaultServiceManager|- - ProcessState::self|- -ProcessState::getContextObject|- -interface_cast|- -ServiceManagerShim(sm)参考文档1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要讲述翻译 2021-09-10 21:56:06 · 757 阅读 · 0 评论 -
binder实现例程
1. 前言本文的主要示例来自 3分钟带你看懂android中的Binder机制, 要实现binder通信,基本要实现如下的工作:1.定义接口服务是服务端要具备的能力来提供给客户端,定义一个接口继承IInterface,代表了服务端的能力public interface PersonManger extends IInterface { void addPerson(Person mPerson); List<Person> getPersonList();}2. 定翻译 2021-09-10 22:33:00 · 314 阅读 · 0 评论 -
Android binder学习笔记4 - binder transact流程分析
目录1. 前言2. IPCThreadState::self()->transact|- -writeTransactionData|- -IPCThreadState::waitForResponse|- - -talkWithDriver|- - - -binder_thread_write|- - - -binder_thread_read参考文档1. 前言在Android binder学习笔记2 - 获取ServiceManager中defaultServiceManager->Pr原创 2021-09-10 22:28:26 · 2892 阅读 · 0 评论 -
Android binder学习笔记5 - 获取服务
目录1. 前言1. 前言本文主要是binder系列文章的总结笔记,主要是理清binder的总体流程和总体架构,期间会对照Android R进行代码重读,也会按照自己的理解对内容进行调整,以加深对binder总体的理解。本文主要讲述 获取service的过程。...翻译 2021-09-10 22:27:28 · 103 阅读 · 0 评论