4232
Androidで位置情報を利用するアプリを作っているのですが、端末の位置情報を利用する設定がオフになっている場合にダイアログを出す処理を作りたいです。
端末の位置情報が有効になっているかどうかをJavaのプログラムで取得するにはどうしたら良いのでしょうか？
CC BY-SA 3.0
2015-01-07T03:35:07.027
3229
2015-01-07T07:57:01.720
450
question
android java
位置情報が有効になっているかを調べたい
必要なパーミッション(`ACCESS_COARSE_LOCATION` や
`ACCESS_FINE_LOCATION`)があるなら、`LocationManager#isProviderEnabled(providerName)`
で確認できます。

<http://developer.android.com/reference/android/location/LocationManager.html#isProviderEnabled(java.lang.String)>

```

    LocationManager lm = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
    final boolean gpsEnabled = lm.isProviderEnabled(LocationManager.GPS_PROVIDER);
    final boolean wifiEnabled = lm.isProviderEnabled(LocationManager.NETWORK_PROVIDER);
    
```

あるいは、<https://stackoverflow.com/a/22219239> のように `LOCATION_MODE` を見る方法もあるようです。
CC BY-SA 3.0
2015-01-07T07:57:01.720
4232
2015-01-07T07:57:01.720
2017-05-23T12:38:55.307
-1
4575
3229
answer