2016-05-25 1 views
1

3GまたはWIFIでユーザーの場所を取得する必要があります。LocationManagerがNETWORK_PROVIDERを無効にしました

これは私がやろうとしているものです:

LocationListener locationListener = new LocationListener() { 
      public void onLocationChanged(Location location) { 
       manageLocation(location); 
      } 

      public void onStatusChanged(String provider, int status, Bundle extras) { 

      } 

      public void onProviderEnabled(String provider) { 

      } 

      public void onProviderDisabled(String provider) { 

      } 
     }; 
     locationManager.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationListener); 

問題が呼ばれるコールバックのみがonProviderDisabledパラメータとしてLocationManager.NETWORK_PROVIDER与えているということです。

私はマニフェストにその権限を持っている:

<uses-permission android:name="android.permission.INTERNET" /> 
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 

私は自分のアプリケーション内の場所の種類を有効にするにはどうすればよいですか?

答えて

3

ユーザーは、端末の[設定]アプリにアクセスして、位置情報プロバイダを有効にする必要があります。あなたはそれを直接有効にすることはできません。

+0

gpsが有効になっている必要があります。 – JackTurky

+0

@JackTurky:ユーザーは、GPSを使用する必要はありません。デバイスが個々のロケーションデータソースの有効/無効をサポートしているかどうかは、OSバージョンおよびデバイスの製造元によって異なります。 – CommonsWare

関連する問題