2016-04-12 4 views
6

In AndroidManifest.xml:ActivityCompat.requestPermissions zeigt nicht Dialog

<uses-sdk 
    android:minSdkVersion="14" 
    android:targetSdkVersion="23" /> 
<uses-permission-sdk-m android:name="android.permission.ACCESS_FINE_LOCATION"/> 

Und in PreActivity.java

if (PermissionChecker.checkSelfPermission(preActivity, Manifest.permission.ACCESS_FINE_LOCATION) != PackageManager.PERMISSION_GRANTED) { 
    if (ActivityCompat.shouldShowRequestPermissionRationale(preActivity, Manifest.permission.ACCESS_FINE_LOCATION)){ 
     setDisplay(); 

    } else { 
     // show dialog here 
     ActivityCompat.requestPermissions(preActivity, new String[]{Manifest.permission.ACCESS_FINE_LOCATION}, REQUEST_PERMISSION_CODE); 

    } 
} else { 
    ~~~~~ 
} 

Nach requestPermissions() aufgerufen wird, onRequestPermissionsResult ohne zeigt Bestätigungsdialogfeld aufgerufen wird .

Weiß jemand, was das Problem ist, oder wie dieser Dialog angezeigt wird?

Vielen Dank.

+0

Erfolgt das auch, wenn Sie die App deinstallieren und von Grund auf neu installieren? –

+0

Sind Sie sicher, dass Sie Ihrer App noch keine Genehmigung erteilt haben? – SMR

+0

Ja, das passiert. Ich habe versucht, viele Male neu zu installieren, aber das Problem hat nicht gelöst ... –

Antwort

0

Dies passiert wahrscheinlich, weil Sie Ihrer App bereits die erforderliche Berechtigung erteilt haben.

Um von Grund auf neu zu testen, deinstallieren Sie zunächst Ihre App und versuchen Sie es erneut. Auf diese Weise werden alle zuvor erteilten Berechtigungen widerrufen.

+0

Danke für die Antwort, SMR. Aber sorry, das Problem löst nicht. Ich rufe dies beim Start meiner App, und wenn ich eine Methode mit GPS bei der nächsten aufrufen, tritt SecurityException auf und meine App wird zwangsweise beendet. –

Verwandte Themen