使用android隐藏api实现亮度调节
2013-12-19 20:40
309 查看
使用android隐藏api实现亮度调节
脚盆原创,转载请注明出处。Android 1.5之后将调节亮度的api隐藏了,不过android的源码中依然有方法可以实现,如下:
IPowerManager power = IPowerManager.Stub.asInterface(ServiceManager |
.getService( "power" )); |
if (power != null ) { |
power.setBacklightBrightness(brightness); |
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 :=
myProject
LOCAL_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.jar platform.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中如何使用隐藏的api和internal包
- Android使用init.rc触发脚本实现隐藏内置应用
- 使用内部(com.android.internal)和隐藏(@hide)API[第4部分,定制ADT]
- Android亮度调节的几种实现方法
- 使用Android系统隐藏api
- Android工程中怎样使用隐藏API
- 【Android】Android实现视频播放的时候滑动屏幕调节亮度和音量
- [Android]使用Linux命令实现隐藏显示应用功能
- android使用隐藏api的方法(使用被@hide的api)
- Android应用开发中如何使用隐藏API
- android源代码分析一:使用内部(com.android.internal)和隐藏(@hide)API ——介绍
- android 开发之 使用Android系统隐藏api 读取*.apk 程序安装包信息
- 使用内部(com.android.internal)和隐藏(@hide)API手记