Lors du développement d'applications Android ces jours-ci, je souffre souvent de l'autorisation d'exécution Android. Runtime avec ajoutez simplement une ligne </ font> pour prendre en charge cette autorisation d'exécution J'ai créé une bibliothèque qui peut gérer l'autorisation. https://github.com/TakuKobayashi/RuntimePermissionChecker Si vous le souhaitez, j'aimerais recevoir des "étoiles" et des "j'aime", ou "partager" et les diffuser. M (_ _) m
build.gradle (voir l'image ci-dessous)
Ajout du contenu suivant aux dépendances de
build.gradle
dependencies {
implementation 'net.taptappun.taku.kobayashi:runtimepermissionchecker:1.1.1'
}
Cela introduira la bibliothèque dans votre projet Android.
Une fois la bibliothèque installée, ajoutez-la à votre activité comme indiqué dans l'exemple ci-dessous.
MainActivity.java
public class MainActivity extends Activity {
private static final int REQUEST_CODE = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
RuntimePermissionChecker.requestAllPermissions(this, REQUEST_CODE);
}
}
cette
RuntimePermissionChecker.requestAllPermissions(Activity activity, int requestCode);
Après cela, le processus de confirmation de l'autorisation Android est automatiquement exécuté en ajoutant à n'importe quel endroit. * La boîte de dialogue de confirmation de l'autorisation Android apparaîtra uniquement, n'oubliez donc pas d'ajouter le paramètre d'autorisation à AndroidManifest.xml comme indiqué ci-dessous. </ Font> >
AndroidManifest.xml
<uses-permission android:name="Nom de l'autorisation" />
MainActivity.java
public class MainActivity extends Activity {
private static final int REQUEST_CODE = 1;
@Override
protected void onCreate(Bundle savedInstanceState) {
...
RuntimePermissionChecker.requestPermission(this, REQUEST_CODE, Manifest.permission.CAMERA);
}
}
cette
RuntimePermissionChecker.requestPermission(Activity activity, int requestCode, String requestPermission);
En ajoutant à n'importe quel endroit, le processus de confirmation de l'autorisation spécifiée est exécuté en spécifiant le nom de l'autorisation que vous souhaitez entendre individuellement dans le troisième argument ci-dessus (String requestPermission). (Dans le cas ci-dessus, l'écran de confirmation d'autorisation de la caméra sera affiché.)
Dans ce cas, [onRequestPermissionsResult](https://developer.android.com/reference/android/app/Activity.html#onRequestPermissionsResult(int, java.lang.String [], int [])) comme indiqué dans l'exemple ci-dessous. Fait exécuter le processus lorsque le rappel de est appelé.
MainActivity.java
public class MainActivity extends Activity {
private static final int REQUEST_CODE = 1;
@Override
public void onRequestPermissionsResult(int requestCode, String permissions[], int[] grantResults) {
if (requestCode != REQUEST_CODE)
return;
if(!RuntimePermissionChecker.existConfirmPermissions(this)){
// write features you want to execute.
}
}
}
cette
RuntimePermissionChecker.existConfirmPermissions(Activity activity);
Sera ture </ font> s'il y a encore des autorisations à écouter.
Si vous souhaitez vérifier si une autorisation individuelle est autorisée plutôt que lorsque toutes les autorisations sont autorisées ci-dessus
RuntimePermissionChecker.hasSelfPermission(Activity activity, String requestPermission);
Vous pouvez vérifier en utilisant cette méthode. Nom de l'autorisation que vous souhaitez vérifier individuellement dans le deuxième argument de cette méthode Si vous le spécifiez et qu'il est déjà autorisé, ce sera ture </ font>.
Le traitement ci-dessus inclut également la correspondance dans ce cas.
Le traitement ci-dessus inclut également la correspondance dans ce cas.
À partir d'Android 6.0 Marshmallow (niveau d'API 23), vous devez demander l'autorisation d'un utilisateur pour utiliser une fonctionnalité spécifique lors de l'exécution de l'application, et vous ne pouvez pas utiliser la fonctionnalité sans l'autorisation de cet utilisateur. .. (Stockage d'informations sur une caméra, un microphone, une carte SD, etc.) Bref, c'est un dialogue comme celui-ci. Bien entendu, pour afficher cette boîte de dialogue, il est nécessaire d'écrire le processus côté application. Voir ici pour plus de détails
En tant que personne qui développe de nombreuses applications Android et développe des applications Android depuis l'époque de la série Android 2, je ne veux pas penser à mettre en œuvre cette autorisation d'exécution, donc comme concession maximale, j'ai réussi à ajouter une seule ligne. Je voulais. Par conséquent, quelle que soit l'application que vous créez
J'ai donc essayé d'en faire quelque chose qui résoudrait tout.
Postscript 2017/12/13 (mercredi) J'ai pu m'inscrire à Bintray. J'ai également pu m'inscrire sur jcenter, j'ai donc mis à jour la méthode d'installation de la bibliothèque.
Recommended Posts