首页
社区
课程
招聘
[原创]Android AOSP 添加系统服务【aidl接口服务】Java层
发表于: 2020-7-3 12:25 9819

[原创]Android AOSP 添加系统服务【aidl接口服务】Java层

2020-7-3 12:25
9819

基于系统源码 8.1 版本修改添加的

1.添加接口

2.添加系统服务,实现aidl文件的接口

3.添加系统服务的Manager

4.添加aidl到Makefile src

5.添加DEMO_SERVICE常量

6.将实现的服务注册到系统中去

7.将注册的服务设置成开机启动服务

8.编译源码 更新api接口

9.修改selinux 添加新服务的权限

10.使用service list 查看服务

如果服务不存在则可能是 selinux 策略添加失败导致没有权限无法启动,所以需要继续去修改添加selinux策略,本次测试使用的手机是Nexus 5系统版本为8.1 所以修改的策略路径为 device/huawei/angler/sepolicy/service.te service_contexts 。如果是在其他设备上添加系统服务那么这个路径可能会不适用,使用 find -name service.te 查找当前系统文件树下路径。找到与当前设备名相一致的路径进去修改添加策略。

11.编写代码测试


[注意]传递专业知识、拓宽行业人脉——看雪讲师团队等你加入!

收藏
免费 5
支持
分享
最新回复 (7)
雪    币: 969
活跃值: (843)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
2
手机是6p还是n5?
2020-7-3 17:35
0
雪    币: 1660
活跃值: (1482)
能力值: ( LV7,RANK:103 )
在线值:
发帖
回帖
粉丝
3
lrzhao 手机是6p还是n5?
p1
2020-7-3 18:58
0
雪    币: 202
活跃值: (206)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
4
2020-7-4 10:03
0
雪    币: 758
活跃值: (78)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
5
mark
2020-7-4 14:02
0
雪    币: 21
活跃值: (66)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
6
不错,要是看看aidl转换的java可以对理解binder再上一层楼
2020-7-20 16:08
0
雪    币: 27
活跃值: (170)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
7
添加服务之后,需不需要更新sdk?
2020-7-30 18:50
0
雪    币: 62
活跃值: (27)
能力值: ( LV2,RANK:10 )
在线值:
发帖
回帖
粉丝
8
给山竹老师打Call!
2020-8-3 15:11
0
游客
登录 | 注册 方可回帖
返回
//