framework之ComtextImpl.java 和 SystemServer.java

首先SystemServer里面重要做了添加一些服务的工作

例如:ActivityManagerService ,PowerManagerService ,WindowManagerService


代码如下:

(framework\base\services\java\com\android\server\SystemServer.java)

 wm = WindowManagerService.main(context, power, display, inputManager,
                    wmHandler, factoryTest != SystemServer.FACTORY_TEST_LOW_LEVEL,
                    !firstBoot, onlyCore);
            ServiceManager.addService(Context.WINDOW_SERVICE, wm);

作为一个Service注册给了ServiceManager,添加这一步之后就可以作为一个服务向客户端开放,可以接收客户端的连接申请。


添加之后还需注册服务

(framework\base\core\java\android\app\ContextImpl.java)

 registerService(WINDOW_SERVICE, new ServiceFetcher() {
                Display mDefaultDisplay;
                public Object getService(ContextImpl ctx) {
                    Display display = ctx.mDisplay;
                    if (display == null) {
                        if (mDefaultDisplay == null) {
                            DisplayManager dm = (DisplayManager)ctx.getOuterContext().
                                    getSystemService(Context.DISPLAY_SERVICE);
                            mDefaultDisplay = dm.getDisplay(Display.DEFAULT_DISPLAY);
                        }
                        display = mDefaultDisplay;
                    }
                    return new WindowManagerImpl(display);
                }});


06-26 09:47:06.997 1251 1251 E AndroidRuntime: *** FATAL EXCEPTION IN SYSTEM PROCESS: main 06-26 09:47:06.997 1251 1251 E AndroidRuntime: java.lang.IllegalStateException: Signature|privileged permissions not in privileged permission allowlist: {com.telcelam.lockscreen (/system/priv-app/realme/MXSiprogo): android.permission.REAL_GET_TASKS, com.dti.amx (/system/priv-app/realme/TelcelDT): android.permission.SCHEDULE_EXACT_ALARM} 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.permission.access.permission.AppIdPermissionPolicy.onSystemReady(AppIdPermissionPolicy.kt:1634) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.permission.access.AccessPolicy.onSystemReady(AccessPolicy.kt:275) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.permission.access.AccessCheckingService.onSystemReady$frameworks__base__services__permission__android_common__services_permission_pre_jarjar(AccessCheckingService.kt:239) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.permission.access.permission.PermissionService.onSystemReady(PermissionService.kt:2295) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.pm.permission.PermissionManagerService$PermissionManagerServiceInternalImpl.onSystemReady(PermissionManagerService.java:780) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.pm.PackageManagerService.systemReady(PackageManagerService.java:4702) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.SystemServer.startOtherServices(SystemServer.java:3157) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.SystemServer.run(SystemServer.java:1014) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.server.SystemServer.main(SystemServer.java:713) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at java.lang.reflect.Method.invoke(Native Method) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:681) 06-26 09:47:06.997 1251 1251 E AndroidRuntime: at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:893)
06-28
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值