文章预览
一、前言 二、编写AIDL文件 三、编写Manager类 四、 编写系统服务 五、 注册系统服务 六、注册Manager 七、App调用 八、添加JNI部分代码 九、总结 一、前言 系统服务是Android中非常重要的一部分, 像ActivityManagerService, PackageManagerService, WindowManagerService, 这些系统服务都是Framework层的关键服务, 本篇文章主要讲一下如何基于Android源码添加一个系统服务的完整流程, 除了添加基本系统服务, 其中还包含添加JNI部分代码和App通过AIDL调用的演示Demo, 调用包含App调用服务端, 也包含服务端回调App, 也就是完成一个简单的双向通信. 注: 测试代码基于Android 7.1.1, 其他Android版本都是大同小异. 二、编写AIDL文件 添加服务首先是编写AIDL文件, AIDL文件路径如下: frameworks / base / core / java / com / example / utils / 1.ISystemEvent.aidl 内容如下: package com . example . utils ; import com . example . utils
………………………………