Android framework层自定义系统服务

1)新建IBinder.aidl,生成BpBinder,客户端(Ixxxx.aidl)

2)创建BpServiceManager(IBinder),实现IBinder业务逻辑函数。

3)创建BnBinder,服务端(xxxService)

4)在 frameworks /base /services /java /com /android /server /SystemServer.java 
        添加Service:SystemService.add(BnBinder)

5)在/frameworks/base/core/java/android/app/ContextImpl.java

 private xxxServiceManager getxxxSevviceManager()

6)在/frameworks/base/Android.mk中
添加core/java/android/app/IxxxService.aidl \


7)在\external\sepolicy\service.te 添加:

index 56478d0..6caba56 100644
--- a/sepolicy/service.te
+++ b/sepolicy/service.te
@@ -102,3 +102,4 @@ type wifip2p_service, app_api_service, system_server_service, service_manager_ty
 type wifiscanner_service, system_api_service, system_server_service, service_manager_type;
 type wifi_service, app_api_service, system_server_service, service_manager_type;
 type window_service, system_api_service, system_server_service, service_manager_type;
+type xxx_service, system_api_service, system_server_service, service_manager_type;


8)在 \external\sepolicy\service_contexts添加
syk@dell-Precision-Tower-7910:~/external/sepolicy$ git diff service_contexts
diff --git a/sepolicy/service_contexts b/sepolicy/service_contexts
index 85dcd3d..3230be0 100644
--- a/sepolicy/service_contexts
+++ b/sepolicy/service_contexts
@@ -1,3 +1,4 @@
+xxx                                     u:object_r:xxx_service:s0
 accessibility                             u:object_r:accessibility_service:s0
 account                                   u:object_r:account_service:s0
 activity                                  u:object_r:activity_service:s0

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值