[Android]複数の権限をリクエストする

アプリの権限をリクエストする場合に、複数同時にリクエストする必要があるケースがあります

Android Studio
2021.2.1




RequestMultiplePermissions

 
1 つの権限だけをリクエストするには、RequestPermission を使用しますが
複数の権限を同時にリクエストするには、RequestMultiplePermissions を使用します
 
複数の権限でも別々の機能である場合は、必要な場面でリクエストすればいいのですが、例えばカメラ撮影の場合、撮影場所の位置情報を同時に取得して画像ファイルに埋め込みます(EXIF規格)そういったケースで位置情報取得の権限とカメラ権限を同時にリクエストすることになります
 

 

複数のパーミッションを扱う

 
複数のパーミッションを扱うには、配列あるいはArrayとして例えばPERMISSIONS[]を作り ます
 


 
checkSelfPermissionをforで権限の数だけ繰り返します


RequestMultiplePermissions
にてユーザーに権限のリクエストを行う

 

サンプルコード

 
こちらのサンプルコード(1)に追加してカメラ撮影の権限をリクエストしてみます(実際にはカメラは扱いません)
 

cat57 00 100x100 - [Android]複数の権限をリクエストする
位置情報といえばGPSと思う人が多いとは思いますが、スマホでの位置情報はGPS以外にWiFiや電話網を駆使して短時間で効率の良い情報を取得で...

 

AndroidManifest.xml


 
 
MainActivity.java


 

レイアウトです
activity_main.xml

strings.xml

build.gradle

 

 
関連記事:

 
References:
アプリの権限をリクエストする
直近の位置情報を取得する – Android Developers

シェアする

  • このエントリーをはてなブックマークに追加

フォローする