android的核心服务是基于,自定义Android核心服务实践--总括

自定义Android核心服务实践

Daniel Wood 20101203

转载时请注明出处和作者

文章出处:http://danielwood.cublog.cn

作者:Daniel Wood

------------------------------------------------------------------------

参照参考文献及实例,实现自定义计算器服务CalService,服务提供加、减、乘、除四项简单运算。

总括

主要分以下五个部分实现:

1)服务CalService实现

文件:

CalService.h

CalService.cpp

Android.mk

2)启动CalService服务

这里采用的方法是用一个C++的应用程序去启动服务,当然也可以修改Android的源代码,使得自定义的服务随系统的启动而启动(修改init.rc文件)。

文件:

addserverapp.cpp

Android.mk

3)CalService服务Bp端实现(封装)

完成对CalService服务的封装,提供JNI对服务的调用。

文件:

Cal.h

Cal.cpp

Android.mk

4)实现JNI层,完成对底层CalService服务的调用,给上层javaframework层提供服务接口(库)。

文件:

com_android_service_cal.cpp

Android.mk

5)编写java应用程序调用CalService服务。

文件:

|-- Android.mk

|-- AndroidManifest.xml

`-- src

`-- com

`-- example

`-- android

`-- simpleservice

`-- CalServiceTest.java

主体目录结构

.

|-- addserverapp

||-- Android.mk

|`-- addserverapp.cpp

|-- calservicetest

||-- Android.mk

||-- AndroidManifest.xml

|`-- src

|`-- com

|`-- example

|`-- android

|`-- simpleservice

|`-- CalServiceTest.java

|-- jni

||-- Android.mk

|`-- com_android_service_cal.cpp

|-- libcal

||-- Android.mk

||-- Cal.cpp

|`-- Cal.h

`-- libcalservice

|-- Android.mk

|-- CalService.cpp

`-- CalService.h

在实现的时候我是将这5个文件夹放在源代码framework目录下面新建的目录myservice,其实可以随意放到源代码的任意目录,当然不要是out目录:-)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值