我已经在清单中添加“android.permission.WRITE_SECURE_SETTINGS”。 但我仍得到一个错误信息说 - 要求“WRITE_SECURE_SETTINGS”。
我已经看到了很多关于这个会谈,并防止第三方软件此设置。
这是我可以加我的应用程序能够获得这一许可的其他方式?
我看到这个ADB命令,但我不太熟悉如何使用该到我的应用程序添加到我的设备,低于命令需要root我的设备也可以是在使用之前,因为它没有通过只读文件系统复制?
adb remount
adb push app.apk /system/app/
首先,正如你之前阅读,WRITE_SECURE_SETTINGS是不可用的应用程序! 所以你不能不管用此权限无论您是根深蒂固的或生产的基础之上。
所以,如果你想启用此设置,创建自己的固件已经做了你所需要的和负载任意你想要的设备固件。 或者,贡献您的更改现有固件器官功能障碍综合征(如氰)。
像其他一些应用技术Reflection
使用Java来访问通过API不暴露功能,你也许可以尝试同样的。
其次, adb remount
不起作用如与产品构建,除非手机是植根或固件使得它在默认情况下。
最近,我挣扎着这事。 我的客户希望一个应用程序,会变成NFC关闭时,该设备是充电(无线充电器),然后当它从充电器上拿走。 我在我的Nexus 7搭载KitKat,即使我有WRITE_SECURE_SETTINGS
的清单,并在应用/system/app/
,这是行不通的。
事实证明,在4.4他们增加额外的安全性。 然而,在4.3,它的工作原理,如果三样东西是真实的:
- 清单具有
WRITE_SECURE_SETTINGS
- 应用程序是在
/system/app/
- 封装是一个密钥签名(任意键)
我从扎根使用真棒的Nexus根工具包(NRT)的设备http://www.wugfresh.com/nrt/然后安装从BusyBox的和系统的应用程序移动器:
https://play.google.com/store/apps/details?id=stericson.busybox https://play.google.com/store/apps/details?id=de.j4velin.systemappmover
我安装我的自定义签名的APK,并使用系统的应用先行者,然后重新启动设备移动到位。 它完美地工作。 希望这可以帮助。
对于我所使用的API,它需要WRITE_SECURE_SETTINGS特权,我必须包括这在清单:
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
...
coreApp="true"
android:sharedUserId="android.uid.system">
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
...
REF: https://github.com/android/platform_packages_apps_settings/blob/master/AndroidManifest.xml
我也有运行应用程序的系统应用(下:/系统/应用程序)。 这里有一个如何: http://www.addictivetips.com/mobile/how-to-install-any-app-as-system-app-on-android/
我想补充一点,WRITE_SECURE_SETTINGS权限可授予在亚行和该方法不需要根。 这里是一个命令:
adb shell pm grant your.package.name android.permission.WRITE_SECURE_SETTINGS
我遇到这种情况也一样,然后我按照规则如下:在清单1.增加WRITE_SECURE_SETTINGS 2.make我自己的固件3.添加LOCAL_CERTIRICATE:=平台
我能够启用通知接入来解决这个问题。
go to settings
click on sound and notification
scroll down
click on notification access