当前位置:   article > 正文

Android P中如何自定义一个系统Service_自定义service

自定义service

1. Context中新建service name

frameworks/base/core/java/android/content/Context.java

public static final String JUSTART_SERVICE = "justart";

2. 创建aidl文件

frameworks/base/core/java/android/app/IJustArt.aidl

  1. package android.app;
  2. /**
  3. * Created by justart on 2019/3/21.
  4. */
  5. interface IJustArt {
  6. String getAllWifiInfo();
  7. }

这里的IJustArt.aidl负责APP端和system_server中的自定义service 通信

3. Android.bp 配置

frameworks/base/Android.bp

  1. "core/java/android/app/IActivityManager.aidl",
  2. + "core/java/android/app/IJustArt.aidl",

找一个熟悉的系统service对应的aidl文件,在下面添加一条即可。只有在这里配置之后编译系统才能找到他,将它编译生成IJustArt.java,编译之后的文件生成在 :\out\soong\.intermediates\frameworks\base\framework\android_common\gen\aidl\frameworks\base\core\java\android\app\IJustArt.java

4. service下创建自定义Service

frameworks/base/services/core/java/com/android/server/justart/JustArtService.java

  1. package com.android.server.justart;
  2. import android.os.RemoteException;
  3. import android.app.IJustArt;
  4. /**
  5. * Created by justart on 2019/3/21.
  6. */
  7. public class JustArtService extends IJustArt.Stub{
  8. private final static String TAG = "JustArtService";
  9. public JustArt
声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/小小林熬夜学编程/article/detail/272984
推荐阅读
相关标签
  

闽ICP备14008679号