Android Framework学习笔记 -- 在framework添加system service

这是在android 6.0下的实现,其他版本可能有改动

在Context.java添加服务名称
//--->frameworks/base/core/java/android/content/Context.java
public static final String A_SERVICE = "a";

@StringDef {
    ...
    A_SERVICE
}
在ServiceServicer注册服务
//--->frameworks/base/services/java/com/android/server/SystemServer.java
private void startOtherServices() {
    ...
    ServiceManager.addService("AService", new AService);
    ...
}
在ContextImpl.java添加获取服务管理接口
//--->frameworks/base/core/java/android/app/ContextImpl.java
static {
    ....
    registerService(Context.A_SERVICE,AManager.class,
            new CachedServiceFetcher<AManager>() {
        @Override
        public AManager createService(ContextImpl ctx) {
            return new AManager(ctx);
        }});
}

Service的aidl
interface IAExService {

}
Service 本体
public class AService extends IAService.Stub {

}
Manager
public class AManager {
    public AManager(Context context) {

    }

    static public IAService getService()
    {
        IBinder b = ServiceManager.getService("notification");
        return IAService.Stub.asInterface(b);
    }

}
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Android Framework 层是 Android 系统中非常重要的一层,它提供了丰富的 API 和服务,包括 Activity、Service、Content Provider、Broadcast Receiver、PackageManager、Window Manager 等等,它们为应用程序提供了一个丰富的运行环境和开发框架。 Android Framework 层的源码主要包括以下几个部分: 1. Activity Manager:负责管理 Android 应用程序的生命周期、进程和任务栈等。 2. Package Manager:负责管理应用程序的安装、卸载和更新等操作。 3. Content Provider:提供了一种标准的接口,让应用程序之间可以共享数据。 4. Telephony Manager:提供了访问手机通讯功能的接口和服务。 5. Location Manager:提供了访问 GPS 和其他位置服务的接口和服务。 6. Notification Manager:提供了管理通知的接口和服务。 7. View System:提供了 Android 应用程序的 UI 界面的渲染和事件处理等功能。 8. Resource Manager:提供了访问 Android 应用程序的资源文件的接口和服务。 9. Window Manager:提供了窗口管理和界面绘制等功能。 10. Activity Manager Service:提供了 Activity Manager 的服务接口。 11. System Server:提供了 Android 系统的核心服务,包括 PackageManager、ActivityManager、WindowManager 等。 以上是 Android Framework 层源码的主要部分,通过阅读 Android Framework 层源码可以深入了解 Android 系统的实现原理和应用程序的开发框架。

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值