0

startActivityForResult(intent, requestCode);final Intent intent = new Intent(Settings.ACTION_USAGE_ACCESS_SETTINGS);インテントにしようとすると、java.lang.SecurityExceptionが表示されます。興味深いのは、このクラッシュは、Android 5.1 - 5.1.とHuaweiでのみ発生する私はHuaweiデバイスがありません。あなたは私にそれができることをアドバイスしてください。何らかの理由でjava.lang.SecurityException:許可の否認:開始インテント{act = android.settings.USAGE_ACCESS_SETTINGS}

STACKTRACE

Fatal Exception: java.lang.SecurityException: Permission Denial: starting Intent { act=android.settings.USAGE_ACCESS_SETTINGS cmp=com.android.settings/.Settings$UsageAccessSettingsActivity } from ProcessRecord{11b5f1a1 19764:com.myproject.my/u0a167} (pid=19764, uid=10167) not exported from uid 1000 
     at android.os.Parcel.readException(Parcel.java:1546) 
     at android.os.Parcel.readException(Parcel.java:1499) 
     at android.app.ActivityManagerProxy.startActivity(ActivityManagerNative.java:2448) 
     at android.app.Instrumentation.execStartActivity(Instrumentation.java:1496) 
     at android.app.Activity.startActivityForResult(Activity.java:3794) 
     at android.support.v4.app.BaseFragmentActivityJB.startActivityForResult(BaseFragmentActivityJB.java:48) 
     at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:77) 
     at android.app.Activity.startActivityForResult(Activity.java:3755) 
     at android.support.v4.app.FragmentActivity.startActivityForResult(FragmentActivity.java:859) 
     at com.myproject.my.utils.PermissionsHelper$2.onClick(PermissionsHelper.java:134) 
     at android.support.v7.app.AlertController$ButtonHandler.handleMessage(AlertController.java:157) 
     at android.os.Handler.dispatchMessage(Handler.java:102) 
     at android.os.Looper.loop(Looper.java:135) 
     at android.app.ActivityThread.main(ActivityThread.java:5298) 
     at java.lang.reflect.Method.invoke(Method.java) 
     at java.lang.reflect.Method.invoke(Method.java:372) 
     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:911) 
     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:706) 
+0

あなたの質問を編集して、全体のJavaスタックトレースを投稿してください。 – CommonsWare

+0

@CommonsWareスタックトレースを追加しました。ありがとうございます。 – LeShChEnKoUa

答えて

2

、Huawei社は、この活動のための場所で<intent-filter>を残したが、エクスポートされていないとして、彼らはそれをマーク。アクティビティを開始する方法はありません。あなたが行うことができるのは例外をキャッチし、そこにナビゲートできないことをユーザーに説明することです。

+0

ありがとうございました! – LeShChEnKoUa

0

アンドロイドデベロッパーのドキュメントによると、

場合によっては、一致するアクティビティが存在しない可能性がありますので、 を確実に保護してください。

リンク:ACTION_USAGE_ACCESS_SETTINGS

+0

はい、感謝しています – LeShChEnKoUa

関連する問題