Android 1.5之后將調節亮度的api隱藏了,不過android的源碼中依然有方法可以實現,如下:
上面的代碼無法直接在官方的sdk中調用,會提示找不到IpowerManager和I ServiceManager,需要下載android的源碼,將調用這個方法的工程在android源碼環境下編譯。
編譯方法如下,在調用該方法的工程根目錄下創建Android.mk文件:
include $(CLEAR_VARS)
LOCAL_MODULE_TAGS := user
LOCAL_SRC_FILES := $(call all-subdir-java-files)
LOCAL_PACKAGE_NAME := myProject
LOCAL_CERTIFICATE := platform
include $(BUILD_PACKAGE)
將工程目錄拷貝到/packages/apps/下,執行mmm編譯。會在out目錄下生成apk文件,這里的apk還無法直接使用,會提示簽名不符,原因是程序想要運行在系統進程中還要有目標系統的platform key。
接下來使用platform key對apk簽名:
1. 用壓縮軟件打開apk文件,刪掉META-INF目錄下的CERT.SF和CERT.RSA兩個文件。
2. 使用目標系統的platform密鑰來重新給apk文件簽名。首先找到密鑰文件,在我的Android源碼目錄中的位置是"build/target/product/security",下面的platform.pk8和platform.x509.pem兩個文件。然后用Android提供的Signapk工具來簽名,signapk的源代碼是在"build/tools/signapk"下,用法為"java 主站蜘蛛池模板: 玛沁县| 金堂县| 德州市| 乌拉特前旗| 泰兴市| 沙坪坝区| 宁海县| 长武县| 谢通门县| 花垣县| 汽车| 麻栗坡县| 建阳市| 会东县| 勃利县| 上高县| 息烽县| 莲花县| 凉城县| 黎川县| 平湖市| 亚东县| 利津县| 蓝田县| 视频| 东阿县| 铜梁县| 上林县| 西和县| 汝州市| 四会市| 英德市| 大邑县| 林州市| 永嘉县| 渝北区| 克拉玛依市| 长泰县| 琼结县| 且末县| 云梦县|