Android 6.0から、Runtime Permissionの仕組みが導入された。
アプリの権限をリクエストする | Android デベロッパー | Android Developers
ContextCompat.checkSelfPermissionで、指定の権限が許可されているかをチェックする。
ContextCompat | Android Developers
[Android] GPS パーミッションを考慮して実装する
久しぶり過ぎて、
ここにつくろう。
newで。
Empty。
こんな感じ。
AndroidManifest.xmlで、
パーミッションにACCESS_FINE_LOCATIONを追加。
strings.xmlで、
Button1を追加。
activity_main.xmlで、
デフォルトは違うんだけど、LinearLayoutとButtonを配置。
MainActivity.javaで、
Button1を押したら、ACCESS_FINE_LOCATIONをcheckSelfPermissionする。
6.0以上で、
設定からアプリ一覧で、
ContextCompat_アプリを見つけたら押して、
許可のところで権限が付与されていない。
今のところ、位置情報はOFF。
アプリを起動すると、
Button1があるだけ。
押すと、
許可されていないと出る。
ONにすると、
許可と出る。