Runtime(Dangerous)Permissionの取得方法についてまとめます。
現在、Runtime Permissoinの取得方法は2つあります。
ここで紹介するのは、ActivityResultContracts(※)を使う方法です。
この方法は、リクエスト(Permissionの申請)と結果を受け取る専用のコールバックが1対1に対応しています。ですので、複数のリクエストを行っても、RequestCodeによる分岐処理は必要ありません。システムが結果を各コールバックへ割り振ってくれます。
つまり、「システムがリクエストを管理」してくれます。
ドキュメントで推奨されている方法です。
Permissionの詳細は「Permissionとその一覧」を参照してください。
※ライブラリandroidx.activity:activity≧1.20が必要
