Ab Android 6.0 (API-Stufe 23) gewähren Benutzer Berechtigungen für Anwendungen, während die App ausgeführt wird, nicht wenn sie die App installieren. Dieser Ansatz optimiert den App-Installationsprozess, da der Benutzer keine Berechtigungen erteilen muss, wenn er die App installiert oder aktualisiert. Es gibt dem Benutzer auch mehr Kontrolle über die Funktionalität der App. Beispielsweise könnte ein Benutzer einer Kamera-App den Zugriff auf die Kamera, nicht aber den Standort des Geräts gewähren. Der Benutzer kann die Berechtigungen jederzeit widerrufen, indem er zum Bildschirm Einstellungen der App geht.
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
package="com.example.myapp" >
...
<uses-permission
android: name = "android.permission.ACCESS_COARSE_LOCATION" /> android: name = "android.permission.ACCESS_FINE_LOCATION" />
android: name = "android.permission.ACCESS_COARSE_LOCATION"/> ...
diesen Code auf Ihre Aktivität in OnCreate hinzufügen
askForPermission(Manifest.permission.ACCESS_FINE_LOCATION,LOCATION);
/// c all diese Methode
private void askForPermission(String permission, Integer requestCode) {
if (ContextCompat.checkSelfPermission(MainActivity.this, permission) != PackageManager.PERMISSION_GRANTED) {
// Should we show an explanation?
if (ActivityCompat.shouldShowRequestPermissionRationale(MainActivity.this, permission)) {
//This is called if user has denied the permission before
//In this case I am just asking the permission again
ActivityCompat.requestPermissions(MainActivity.this, new String[]{permission}, requestCode);
} else {
ActivityCompat.requestPermissions(MainActivity.this, new String[]{permission}, requestCode);
}
} else {
Toast.makeText(this, "" + permission + " is already granted.", Toast.LENGTH_SHORT).show();
}
}
Bitte geben Sie die Version der Google Play-Dienste des Geräts an. Jede Ausnahme ausgelöst? Sind Google Play-Dienste auf dem Gerät vorhanden? Überprüfen Sie, ob die Play-Dienste verfügbar sind, da sie aufgrund der chinesischen Gesetzgebung ohne Play Services https://developers.google.com/android/reference/com/google/android/gms/common/GoogleApiAvailability#isGooglePlayServicesAvailable(android.content) ausgeliefert werden .Context) Sie müssen die Auflösung starten, wenn die Play-Dienste nicht vorhanden sind. –
Welchen Fehler erhalten Sie? – AndroidHacker
Keine Fehler. Nur die Aktivität beginnt und schließt sofort. Es erscheinen keine Fehler im Fehler Logcat @AndroidHacker – Kaushal28