[App] android 背光调节的实现

该博客介绍了如何解决Android 6.0后第三方应用无法直接获取WRITE_SETTINGS权限的问题。通过内置app或使用特定keystore添加UID,可以赋予应用此权限。博主分享了keystore的配置方法,并提供了代码示例更新build.gradle和AndroidManifest.xml文件,使得应用能够在用户设置中默认允许修改系统设置。
摘要由CSDN通过智能技术生成

首先是实现,实现代码网上很多,github上也有,我是随缘找的一个

           GitHub - LUOrenjia/BacklightController: Android App for the backlight control program

-------------------------------------------------------------------------------

这个是7年前的,估计是eclipse上搞的,AS里面导入一下工程,很快就可以编译过。这个不是问题,问题是

<uses-permission android:name="android.permission.WRITE_SETTINGS"/>

这个权限的问题,android 6.0后, system app专属。

-----------------------------------------------------------------------------

解决这个问题就需要内置app  或者加 一个keystore, 加uid

keystore位置:

                            LkkBacklightControl\app\                        (app目录下)

解决commit:

diff --git a/app/build.gradle b/app/build.gradle
index 18c712a..6759118 100644
--- a/app/build.gradle
+++ b/app/build.gradle
@@ -23,21 +23,21 @@ android {
         }
     }

+    signingConfigs {
+        release {
+            keyAlias 'platform'
+            keyPassword 'android'
+            storeFile file('slm756_keystore')
+            storePassword 'android'
+        }
+
+        debug {
+            keyAlias 'platform'
+            keyPassword 'android'
+            storeFile file('slm756_keystore')
+            storePassword 'android'
+        }
+    }

     compileOptions {
         sourceCompatibility JavaVersion.VERSION_1_8
diff --git a/app/slm756_keystore b/app/slm756_keystore
new file mode 100644
index 0000000..d4678cb
Binary files /dev/null and b/app/slm756_keystore differ
diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index 749b9fd..bf34cb9 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -1,6 +1,7 @@
 <?xml version="1.0" encoding="utf-8"?>
 <manifest xmlns:android="http://schemas.android.com/apk/res/android"
-    package="com.chao.lkkbacklightcontrol">
+    package="com.chao.lkkbacklightcontrol"
+    android:sharedUserId="android.uid.system">

     <uses-permission android:name="android.permission.WRITE_SETTINGS"/>
这样做的好处就是第三方app, 也可以有write_settings权限,

并且【应用信息】--允许系统修改,这个默认为允许了。

keystore制作:

                【App】android app签名获得系统权限,keystore制作_John_chaos的博客-CSDN博客

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值