2016-04-11 19 views
0

こんにちは私はネットワークプロバイダが有効かどうかを確認しようとしている小さなアンドロイドアプリケーションを開発しています。そうでない場合は、GPSプロバイダを探します。しかし、私の場合、ネットワークプロバイダは常にtrueを返す。私は次のようにチェックしようとした。isProviderEnabledは常にネットワークプロバイダのtrueを返します

if (locManager.isProviderEnabled(LocationManager.NETWORK_PROVIDER)) { 
locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, this); 
getLastLocation(LocationManager.NETWORK_PROVIDER); 

} else if (locManager.isProviderEnabled(LocationManager.GPS_PROVIDER)) { 

locationManager.requestLocationUpdates(LocationManager.GPS_PROVIDER,0,0, this); 
getLastLocation(LocationManager.GPS_PROVIDER); 
} 

上記のコードネットワークプロバイダは常にtrueを返す。私はネットワークプロバイダを持っていません。私は何か悪いことはありますか?助けが要る。ありがとうございました。

+0

あなたのWi-Fiもありませんか? – tyczj

+0

ええ私はWiFiの設定でもWi-Fiを持っていません。「常に利用可能です」も無効になっています。 – nilkash

答えて

2

ネットワークロケーションを無効にするには、ロケーションモードをオフまたはGPSのみに設定する必要があります。

ので、isProviderEnabled(LocationManager.NETWORK_PROVIDER)はfalseを返すためには、(完全に無効)このように検討する必要があります次のいずれか

enter image description here

またはこの(場所が有効になって、GPSのみ):

enter image description here

KitKatの外観は次のとおりです。 https://stackoverflow.com/a/30580898/4409409

関連する問題