2016-05-19 6 views
0

Ich habe eine freigegebene App, die auf dem Gerät eines Kunden abstürzt (die ich aber nicht reproduzieren kann).Was würde dazu führen, dass Context.checkPermission() beim Starten von Aktivitäten aufgerufen wird?

Sie gab mir einige Log-Info:

05-17 16:56:34.884 31256 31256 E AndroidRuntime: java.lang.RuntimeException: Unable to start activity ComponentInfo{com.aaa.bbb/com.aaa.ccc.activity.UserLaunch}: java.lang.NullPointerException: Attempt to invoke virtual method 'int android.content.Context.checkPermission(java.lang.String, int, int)' on a null object reference 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2434) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2494) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.app.ActivityThread.access$900(ActivityThread.java:157) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1356) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.os.Handler.dispatchMessage(Handler.java:102) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.os.Looper.loop(Looper.java:148) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at android.app.ActivityThread.main(ActivityThread.java:5551) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at java.lang.reflect.Method.invoke(Native Method) 
05-17 16:56:34.884 31256 31256 E AndroidRuntime:  at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:730) 

jedoch die UserLaunch Aktivität nicht check nicht nennen(), und in der Tat nichts überall nennt check(). Deshalb habe ich mich gefragt, ob es andere Dinge gibt, die dazu führen würden, dass checkPermission() indirekt aufgerufen wird?

Würde ein Aufruf von checkSelfPermission() zu einem indirekten Aufruf von checkPermission() führen?

Antwort

0

checkSelfPermission() nannte intern die Methode check permission. Bitte vergewissern Sie sich, dass Sie die aktuelle Aktivitätsreferenz an CheckSelfPermision übergeben. wie UserLaunch.this

Verwandte Themen