Android源码开发记录-自定义系统服务和jar包生成
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Android源码开发记录-自定义系统服务和jar包生成相关的知识,希望对你有一定的参考价值。
参考技术A 创建文件 IMyApiService文件路径 frameworks/base/core/java/android/os/
定义了一个计算和的方法。
在frameworks/base/Android.mk
LOCAL_SRC_FILES最后加入
创建文件 MyApiService.java
文件路径 frameworks/base/core/java/com/android/server/
实现aidl的接口,计算参数和。
(1)Context添加服务名
文件路径 frameworks/base/core/java/android/content/Context.java
添加
(2)添加启动服务
文件路径 frameworks/base/services/java/com/android/server/SystemServer.java
在startOtherServices方法中添加
创建 MyApiManager.java文件
文件路径 frameworks/base/core/java/android/app/
文件路径 frameworks/base/core/java/android/app/ContextImpl
添加registerService
记住make update-api
编译打包完成后,烧写新的固件。
jar主要为了在android studio编译环境中MyApiManager报错导致编译不通过问题。
也可以导入frameworks jar包或使用反射。
在源码目录packages/app下新建MyJar文件夹
并新建目录com/myapi/(包名)
在目录com/myapi/新建文件MyApi.java
具体Android.mk语法这里不做解释,可以自行查阅
在MyApi目录下直接运行mm编译命令(记得先source build/envsetup.sh)
待编译完成后,jar生成目录
out/target/common/obj/JAVA_LIBRARIES/Myapi_intermediates/javalib.jar
可更改为其他名称。
Android: 自己开发应用,里边想自定义输入法键盘布局,但输入法服务仍然用系统输入法服务,应该怎么做?
Android: 自己开发一个应用,里边想自定义输入法键盘布局,但输入法服务仍然用系统输入法服务,应该怎么做?
有个“多多中文”网,里面有输入法生成器平台,免费下载,可以满足你提出的这些要求 参考技术A 要么自定义一个键盘,将输入框设定不弹出系统默认的键盘。追问我只想自定义布局,按键功能和系统键盘完全一致,没必要再自己重写吧?
以上是关于Android源码开发记录-自定义系统服务和jar包生成的主要内容,如果未能解决你的问题,请参考以下文章
Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ③ ( 配置上传工件 | 将 Gradle 插件 jar 包源码文档上传到本地Maven 仓库 )
Android: 自己开发应用,里边想自定义输入法键盘布局,但输入法服务仍然用系统输入法服务,应该怎么做?
Android Gradle 插件将自定义 Gradle 插件上传到自建 Maven 仓库 ① ( Maven 仓库上传源码上传源码设置 | 自定义源码打包任务 | 自定义文档打包任务 )