我安装了一个应用程序作为系统应用程序。
这是应用程序的manifest
文件:
<manifest android:versionCode="1" android:versionName="1.0" package="com.myapp">
<uses-sdk android:minSdkVersion="3"/>
<uses-permission android:name="android.permission.WRITE_SECURE_SETTINGS"/>
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<application android:label="@id/0x7F030001" android:icon="@id/0x7F020000" android:debuggable="true">
<receiver android:name=".MyReceiver">
<intent-filter>
<action android:name="com.myapp.MyReceiver"/>
</intent-filter>
</receiver>
</application>
</manifest>
现在在我的应用程序中,我得到一个异常的消息:
java.lang.SecurityException: Permission denial: writing to secure settings requires android.permission.WRITE_SECURE_SETTINGS
但是正如你所看到的,我的应用程序确实请求了权限,并且安装在/system/app文件夹
有人能帮我理解什么是错的,为什么我得到exception
我认为这个问题与android 4.4版本(API 19)中发生的变化有关,因为在旧版本的android中它确实有效!
你需要把你的应用从/system/app移到/system/private -app
你的应用应该有权限访问android.permission.WRITE_SECURE_SETTINGS
请确保Android。mk是正确的,我遇到了同样的问题,只是因为Android。mk,我在LOCAL_CERTIFICATE:= platform