How to write system service

There is "permission denied" error when accessing /dev/file in service. Root cause is that there is no system privilege for the service.


please refer to the below to write a service.http://processors.wiki.ti.com/index.php/Android-Adding_SystemService

the simple steps:

  1. on /frameworks/base/services/jni/

    add com_android_server_###Service.cpp

    modified onload.cpp
    int register_android_server_###Service(JNIEnv* env);

    add the com_android_server_###Service.cpp to Android.mk

  2. on /frameworks/base/services/java/com/android/server

    add ###Service.java

     class ###Service extends I###.Stub {
         ...
     }
    

    modified SystemServer.java

    ###bus = new ###Service();
    ServiceManager.addService("###bus", ###bus);
    
  3. on /frameworks/base/core/java/android/os

    add I###.aidl

  4. on /frameworks/base/

    add I###.aidl to Android.mk

  5. on java gui application

    import android.os.I###;

    import android.os.RemoteException;

    import android.os.ServiceManager;

    import android.os.IBinder;

    IBinder b = ServiceManager.getService("###bus");

    if (b == null) {

    throw new RuntimeException("###bus service not available");
    

    }

    I### test = I###.Stub.asInterface(b);

    test.function();


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值