我面臨的問題與運行時權限與Android 6及以上,同時禁用「手機」權限,多行應用程序崩潰。 崩潰不在應用程序級別發生,所以無法找到應用程序崩潰的位置。 請查閱下面的崩潰日誌。Android的棉花糖權限問題與SDK 23
Logs:
07-07 12:43:53.066 28451-28451/ V/TdmCallReceiver: App receiver must live!
07-07 12:43:53.073 28451-28479/ D/MessagesContentProvider: Query SORT: null
07-07 12:43:53.076 28451-28481/ E/AndroidRuntime: FATAL EXCEPTION: AsyncTask #4
Process:, PID: 28451
java.lang.RuntimeException: An error occurred while executing doInBackground()
at android.os.AsyncTask$3.done(AsyncTask.java:309)
at java.util.concurrent.FutureTask.finishCompletion(FutureTask.java:354)
at java.util.concurrent.FutureTask.setException(FutureTask.java:223)
at java.util.concurrent.FutureTask.run(FutureTask.java:242)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
Caused by: java.lang.SecurityException: Permission Denial: opening provider com.android.providers.contacts.CallLogProvider from ProcessRecord{9cb4e5d 28451:/u0a694} (pid=28451, uid=10694) requires android.permission.READ_CALL_LOG or android.permission.WRITE_CALL_LOG
at android.os.Parcel.readException(Parcel.java:1629)
at android.os.Parcel.readException(Parcel.java:1582)
at android.app.ActivityManagerProxy.getContentProvider(ActivityManagerNative.java:3598)
at android.app.ActivityThread.acquireProvider(ActivityThread.java:5108)
at android.app.ContextImpl$ApplicationContentResolver.acquireUnstableProvider(ContextImpl.java:2026)
at android.content.ContentResolver.acquireUnstableProvider(ContentResolver.java:1481)
at android.content.ContentResolver.query(ContentResolver.java:488)
at android.content.CursorLoader.loadInBackground(CursorLoader.java:64)
at android.content.CursorLoader.loadInBackground(CursorLoader.java:42)
at android.content.AsyncTaskLoader.onLoadInBackground(AsyncTaskLoader.java:312)
at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:69)
at android.content.AsyncTaskLoader$LoadTask.doInBackground(AsyncTaskLoader.java:57)
at android.os.AsyncTask$2.call(AsyncTask.java:295)
at java.util.concurrent.FutureTask.run(FutureTask.java:237)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
at java.lang.Thread.run(Thread.java:818)
registering bus
請讓我知道是否有人有任何想法解決這個問題。 這僅在「電話」權限禁用狀態下才會發生。
發佈您的代碼以供參考 – EKN
分享的AsyncTask的代碼和相關 – Cochi
活動/片段我targetSDKVersion是23的代碼和編譯的版本是25,我ahve給予所有權限第一次和安裝後,我已經禁用了我的「手機」權限設置,它是在崩潰的應用程序 – Sanketh