Andoird 10 Settings.System問題


在android 10的設備上,用以下方法賦值時 報錯了,但是getxxx方法還可以獲取值

Settings.System.putString(getContentResolver(),
        "data_text01", text.getText().toString());

報錯log如下

java.lang.SecurityException: test.com.test was not granted  this permission: android.permission.WRITE_SETTINGS.
                                                    at android.provider.Settings.isCallingPackageAllowedToPerformAppOpsProtectedOperation(Settings.java:11327)
                                                    at android.provider.Settings.checkAndNoteWriteSettingsOperation(Settings.java:11209)
                                                    at com.android.providers.settings.SettingsProvider.mutateSystemSetting(SettingsProvider.java:1400)
                                                    at com.android.providers.settings.SettingsProvider.insertSystemSetting(SettingsProvider.java:1375)
                                                    at com.android.providers.settings.SettingsProvider.call(SettingsProvider.java:374)
                                                    at android.content.ContentProvider$Transport.call(ContentProvider.java:403)
                                                    at android.content.ContentProviderNative.onTransact(ContentProviderNative.java:272)
                                                    at android.os.Binder.execTransact(Binder.java:704)

 

然后在androidmanifest.xml加了 

android.permission.WRITE_SETTINGS,然后又加了動態權限 還是不行,

看了源碼后,才知道 非系統級應用不能使用putxxx()方法了,特此記錄一下,

 

 




免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM