`
ice.k
  • 浏览: 287214 次
  • 性别: Icon_minigender_1
  • 来自: 荷兰
社区版块
存档分类
最新评论

Android 利用隐藏API实现屏幕亮度调节

阅读更多
Android 实现屏幕亮度调节
脚盆原创,转载请注明出处。
Android 1.5之后将调节亮度的api隐藏了,不过android的源码中依然有方法可以实现,如下:

view sourceprint?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.jar platform.x509.pem platform.pk8 input.apk output.apk"
签名后的apk就可以使用了,通过这种方法还可以使用其他的隐藏api。

或使用
Settings.System.putInt(getContentResolver(),      SCREEN_BRIGHTNESS_MODE, SCREEN_BRIGHTNESS_MODE_MANUAL);
由www.J2meGame.com精心收集。
分享到:
评论

相关推荐

    Android Studio 屏幕亮度调节Demo

    在Android平台上,开发者可以利用系统提供的API来实现对设备屏幕亮度的控制,这对于创建特定场景的应用,如阅读模式、夜间模式等非常有用。本Demo主要展示了如何在Android Studio中实现屏幕亮度的动态调节功能,已经...

    android 实现调整系统屏幕亮度

    综上所述,这个"android 实现调整系统屏幕亮度"的Demo提供了自动和手动调整屏幕亮度的功能。通过监听环境光传感器,系统可以自动调整亮度;通过进度条,用户可以直观地手动设置亮度。同时,应用还需要正确处理权限和...

    android 隐藏api jar包,api 30

    然而,有时开发者为了实现某些特定功能,可能会需要利用这些隐藏API。"android 隐藏api jar包,api 30" 提供了一个途径来访问Android API Level 30中的这些隐藏接口。 隐藏API的使用涉及到以下几个关键知识点: 1....

    android_隐藏API调用

    在Android系统中,除了公开的开发者API之外,还存在一些未公开或隐藏的API,这些API通常不包含在官方的开发者文档中,但有时对于特定功能的实现或者深入定制可能会非常有用。本篇将深入探讨如何理解和使用Android的...

    使用Android系统隐藏API

    本文将详细介绍如何访问并利用Android系统的隐藏API,并探讨其中涉及的关键技术和注意事项。 #### 前提条件 要使用Android系统中的隐藏API,首先需要获得Android系统的源代码,并进行编译。编译完成后,可以获得一...

    Android屏幕亮度调节源代码

    下面,我们将深入探讨Android屏幕亮度调节的源代码及其相关知识点。 首先,我们需要理解Android中的`WindowManager.LayoutParams`类,它包含了窗口参数,其中包括了屏幕亮度的设置。`LayoutParams`中的`...

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

    标题中的知识点主要涉及如何在Android平台上通过隐藏API进行屏幕亮度调节的方法。Android系统的版本更新中,有时会将一些原生API进行隐藏,比如Android 1.5版本之后,直接调节屏幕亮度的API就不再直接提供给开发者...

    Android 调节屏幕亮度(当前应用和系统亮度)

    综上所述,Android 开发中调节屏幕亮度涉及到了对`WindowManager.LayoutParams`和`Settings.System`类的使用。通过结合SeekBAr控件和Button事件,我们可以创建一个用户友好的亮度调节界面,同时支持对当前应用和全局...

    利用java反射调用Android隐藏Api

    利用java的反射原理来调用 Android隐藏api 应用开发必备哦 详细描述: http://blog.csdn.net/y_haiyang/article/details/9924925 ====================关注小鱼=================== 新浪微博:...

    android屏幕亮度调节源码

    本文将深入探讨Android屏幕亮度调节的源码实现,帮助开发者理解其工作原理,并为自定义和优化这一功能提供基础。 首先,Android系统通过硬件抽象层(HAL)与设备的显示控制器进行交互,来控制屏幕亮度。在`...

    android 屏幕亮度调节方法详解

    本文将深入探讨如何实现Android设备的屏幕亮度自动调节,以及涉及到的关键组件和流程。 首先,我们要理解屏幕亮度自动调节的核心原理,即通过光线感应器(Sensor)监测环境光线的变化,然后根据这些变化调整屏幕...

    android @hide 隐藏API framework.jar

    标题中的“android @hide 隐藏API framework.jar”指的是一个针对Android 4.2(API级别17)版本的特殊处理,它涉及到了如何使用和理解Android系统中的隐藏API,并且提供了一个重新编译过的`framework.jar`文件,这个...

    Android带有隐藏API的的jar包

    在本主题中,我们聚焦于一个特殊的“Android带有隐藏API的jar包”,这个jar包对应的是API level 25,即Android 7.1.1 (Nougat)。 通常,Android SDK公开的API可以通过官方的开发者文档进行查阅,这些API被设计为...

    安卓Android源码——滑动屏幕调整屏幕亮度.rar

    在安卓(Android)系统中,滑动屏幕调整屏幕亮度是一项常见的用户交互功能,它允许用户通过在屏幕顶部或底部边缘上下滑动来改变设备的显示亮度。这一特性涉及到Android系统的触摸事件处理、电源管理以及图形界面等多...

    Android利用高德天气查询API实现天气查询功能

    说明:Android利用高德天气查询API实现天气查询功能,包括登录、注册需要的Web端(Web端中稍微修改数据库配置和创建表),注意申请key,在高德控制台创建应用(一个Android,一个Web),为应用添加key,在服务平台...

    Android调节屏幕亮度demo

    总的来说,这个“Android调节屏幕亮度demo”项目展示了如何利用Android SDK的API来创建一个实用工具,让用户可以根据自己的需求调整屏幕亮度,从而提升阅读体验和保护视力。同时,通过垂直SeekBar的设计,提供了更...

    Android-滑动屏幕调整屏幕亮度.zip

    Android-滑动屏幕调整屏幕亮度.zip Android-滑动屏幕调整屏幕亮度.zip Android-滑动屏幕调整屏幕亮度.zip Android-滑动屏幕调整屏幕亮度.zip Android-滑动屏幕调整屏幕亮度.zip

    android 屏幕亮度调节

    在Android系统中,屏幕亮度调节是一项重要的功能,它关乎用户在不同环境下的视觉体验和设备功耗。在Android应用开发中,我们可以通过编程的方式实现对当前应用或全局系统屏幕亮度的控制。以下将详细讲解如何在...

    Android 调试背光亮度曲线-斜线

    背光曲线指的是亮度值与屏幕显示内容变化之间的关系,通过调试这一曲线,我们可以让设备在不同环境下自动适应最佳的亮度级别。 首先,了解背光亮度曲线的基本原理是至关重要的。背光亮度通常是由硬件层面的LED灯...

Global site tag (gtag.js) - Google Analytics