修改android framework 添加service

1. 修改點

pizza\frameworks\base\services\java\com\android\server\hwapu\ClassMonitorService.javajava

做用:監控服務android

pizza\frameworks\base\services\policy\src\com\android\internal\policy\impl\PhoneWindowManager.javaui

做用:禁用或啓用home鍵,power鍵.net

pizza\frameworks\base\core\java\android\view\WindowManagerPolicy.javaserver

做用:添加自定義接口blog

pizza\frameworks\base\hwapu-class\java\android\hwapu\ICallBackApp.aidl接口

pizza\frameworks\base\hwapu-class\java\android\hwapu\IClassMonitor.aidlip

pizza\frameworks\base\hwapu-class\java\android\hwapu\ClassMonitorManager.javarem

pizza\frameworks\base\hwapu-class\java\android\hwapu\PacketInfo.javaget

做用:應用層經過aidl調用服務,編譯文件定義在frameworks\base\Android.mk文件當中

pizza\frameworks\base\services\java\com\android\server\SystemServer.java

做用:根據配置文件建立監控服務

pizza\device\rockchip\rk30sdk\device.mk

做用: 添加編譯控制條件  如:ro.rk.calsssmointor_enable=true

 

 

 

 

http://blog.csdn.net/conowen/article/details/7260982/

mm: 編譯單獨模塊

2. 編譯方法

單獨編譯模塊,模塊能夠apk ,so, jar

編譯以後不須要從新打包系統,只要直接替換真機的相應文件就能夠,直接查看效果

http://blog.csdn.net/aaa2832/article/details/7693967

http://blog.csdn.net/aaa2832/article/details/7693967

單編譯framework相關模塊

1. 創建編譯環境

在pizza 目錄下

source  build/envent.sh
lunch 9

2. 編譯 pizza\frameworks\base\policy\Android.mk 獲得android.policy.jar

Install: out/target/product/rk30sdk/system/framework/android.policy.jar

具體的.class文件集合:out\target\common\obj\JAVA_LIBRAYIES\android.policy_intermediates\classes.jar

3. 編譯 pizza\frameworks\base\services\java\Android.mk 獲得services.jar

在pizza\frameworks\base\services\java\目錄下,輸入mm 單獨編譯模塊

獲得的結果 Install: out/target/product/rk30sdk/system/framework/services.jar 其是dex格式的文件

具體的.class文件集合:out\target\common\obj\JAVA_LIBRAYIES\services_intermediates\classes.jar

4.弄到手機裏面

adb remount

adb push XXX system/framework

adb push 。。。。。。

adb reboot

禁用或啓用home鍵,power鍵

1. 修改PhoneWindowManager.java  當中interceptKeyBeforeQueueing方法代碼

相關文章
相關標籤/搜索