使用android隐藏api实现亮度调节
来源:互联网 发布:飞机大战子弹算法 编辑:程序博客网 时间:2024/06/07 07:25
使用android隐藏api实现亮度调节
脚盆原创,转载请注明出处。
Android 1.5之后将调节亮度的api隐藏了,不过android的源码中依然有方法可以实现,如下:
IPowerManager power = IPowerManager.Stub.asInterface(ServiceManager
.getService(
"power"
));
if
(power !=
null
) {
power.setBacklightBrightness(brightness);
上面的代码无法直接在官方的sdk中调用,会提示找不到IpowerManager和I ServiceManager,需要下载android的源码,将调用这个方法的工程在android源码环境下编译。
编译方法如下,在调用该方法的工程根目录下创建Android.mk文件:
LOCAL_PATH:= $(call my-dir)include $(CLEAR_VARS) LOCAL_MODULE_TAGS := user LOCAL_SRC_FILES := $(call all-subdir-java-files) LOCAL_PACKAGE_NAME := myProjectLOCAL_CERTIFICATE := platform include $(BUILD_PACKAGE)
另外,还需要在应用程序的AndroidManifest.xml中的manifest节点中加入android:sharedUserId="android.uid.system"这个属性。(更正,这个属性不需要添加)
将工程目录拷贝到/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 –jar signapk.jarplatform.x509.pem platform.pk8 input.apk output.apk"
签名后的apk就可以使用了,通过这种方法还可以使用其他的隐藏api。
- 使用android隐藏api实现亮度调节
- 使用android隐藏api实现亮度调节
- 使用android隐藏api实现亮度调节
- 使用android隐藏api实现亮度调节
- 使用android隐藏api实现亮度调节
- 使用android隐藏api实现亮度调节
- Android 利用隐藏API实现屏幕亮度调节
- Android调节屏幕亮度实现代码
- Android 屏幕亮度调节
- android调节屏幕亮度
- Android屏幕亮度调节
- android调节屏幕亮度
- Android 亮度调节
- Android 调节屏幕亮度
- Android 调节系统亮度
- Android:调节屏幕亮度
- Android 亮度调节 apk
- Android 软件亮度调节
- DOS命令之fc
- 泡沫之夏--我的六月
- PAT 1048
- vbscript中数组维数使用变量的方法
- NEFU 722 Anagram 全排列 STL
- 使用android隐藏api实现亮度调节
- DeviceIoControl的使用说明
- C#实现记事本功能
- CSS学习(4)--CSS的盒状模型及相关属性设置
- C#的装箱和拆箱
- 开始整理个人总结
- [5月30日的脚本] 在Office 365 Exchange Online中添加生日或者周年纪念日提醒
- NEFU 725 Number Guessing 枚举
- 线程池[高级]