Android アプリで動的にパーミッションを取得する

Android 6 より前では、AndroidManifest.xml で外部ストレージの権限を記録しただけで、 Download フォルダなど、パブリックなフォルダにアクセス可能となっていました。でも今は、アプリの実行時に権限を問い合わせ、ユーザーに操作を求めなくてはいけません。

ネイティブアプリで実行時に権限を得る方法に苦労しましたが、JNI で Java コードを呼び出すことにより、標準ダイアログによる問い合わせ、「今後表示しない」による不許可や、一時的な不許可、そしてユーザー操作による問い合わせの復活など、ひととおり確認できましたので、まとめています。

動的にパーミッションを取得する」をご覧ください。