如何在Android中添加系统服务

 我来答
百事必须要可乐
2016-07-15 · 超过10用户采纳过TA的回答
知道答主
回答量:45
采纳率:0%
帮助的人:15.2万
展开全部
这里说的系统服务,是指捆绑在system_process进程中的服务。仔细阅读源码可以发现,在frameworks/base/services/java/com/android/server/SystemServer.java中添加了很多服务,什么熵信息、电量、wife等等服务,这些服务启动都在launcher之前,一般要继承Binder或者继承一个AIDL。下面试着来添加一个简单系统服务。
一、在frameworks/base/core/java/android/os/ 增加一个aidl文件,最后用aidl工具生产一个Java文件,这样可以方便后面:然后在修改/frameworks/base/Android.mk,在LOCAL_SRC_FILES里添加一行:core/java/android/os/IYtTtsService.aidl \不确定补充:把AIDL文件写在这个地方似乎可以避免加@hide
二 、在frameworks/base/services/java/com/android/server/ 新建要增加的service,继承上面aidl生产的java
三、在frameworks/base/services/java/com/android/server/SystemServer.java, ServerThread中run()方法中增加代码
四、在ContextImpl getSystemService中添加代码
五、测试代码
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式