【自定义系统服务】【android13】添加自定义java系统服务
背景
在平时的业务开发中,我们往往需要开发自定义的系统服务来处理自己特殊的需求,这里介绍的是添加自定义的Java系统服务,可以在系统App中直接调用
定义aidl
Binder默认可以传输基本类型的数据,如果要传递类对象,则这个类需要实现序列化。我们先定义一个序列化的自定义类型,用于binder间参数传递。主要分为两步:
创建自定义类型,实现Parcelable接口
// QSSI.13/frameworks/base/core/java/android/bean/Person.java
package android.bean;import android.annotation.NonNull;
import android.os.Parcel;
import android.os.Parcelable;public final class Person implements Parcelable {// 注意定义成员变量的顺序,后面读取和写入都必须按这个顺序private String mName;private int mAge;public Person() {}public Person(@NonNull String name, int age) {this.mName = name;this.mAge = age;}private Person(@NonNull Parcel in) {// 注意定义成员变量的顺序this.mName = in.readStri