使用android隐藏api实现亮度调节的方法

坏虫二

坏虫二

2016-02-19 09:34

今天图老师小编给大家精心推荐个使用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)

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

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两个文件。

(本文来源于图老师网站,更多请访问http://m.tulaoshi.com/bianchengyuyan/)

2. 使用目标系统的platform密钥来重新给apk文件签名。首先找到密钥文件,在我的Android源码目录中的位置是"buildtargetproductsecurity",下面的platform.pk8和platform.x509.pem两个文件。然后用Android提供的Signapk工具来签名,signapk的源代码是在"buildtoolssignapk"下,用法为"java –jar signapk.jar platform.x509.pem platform.pk8 input.apk output.apk"

签名后的apk就可以使用了,通过这种方法还可以使用其他的隐藏api。

展开更多 50%)
分享

猜你喜欢

使用android隐藏api实现亮度调节的方法

编程语言 网络编程
使用android隐藏api实现亮度调节的方法

android 屏幕亮度调节方法详解

编程语言 网络编程
android 屏幕亮度调节方法详解

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

如何调节电脑亮度 调节电脑亮度的方法

电脑
如何调节电脑亮度 调节电脑亮度的方法

电脑屏幕亮度怎么调电脑屏幕亮度调节方法

电脑屏幕 电脑入门
电脑屏幕亮度怎么调电脑屏幕亮度调节方法

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

iphone怎么调节最低亮度还低的亮度

iphone iPhone 5s iPhone 6 iphone刷机
iphone怎么调节最低亮度还低的亮度

iPhone如何使用Home键调节屏幕亮度?

iphone iPhone 5s iPhone 6 iphone刷机
iPhone如何使用Home键调节屏幕亮度?

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

andoid打包短信发送到gmail邮箱实现代码

andoid打包短信发送到gmail邮箱实现代码

(仅IE下有效)关于checkbox 三态

(仅IE下有效)关于checkbox 三态
下拉加载更多内容 ↓