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にすると、

許可と出る。