2016-12-18 15 views
0

我使用this庫,並嘗試檢索當前位置座標如下:獲取'供應商未啓用| ProviderError {provider ='network'}'調用'tracker.startListening();'即使無線網絡啓用

settings = 
       new TrackerSettings() 
         .setUseGPS(false) 
         .setUseNetwork(true) 
         .setUsePassive(true) 
         .setTimeBetweenUpdates(30 * 60 * 1000); 

     tracker = new LocationTracker(getBaseContext(), settings) { 
      @Override 
      public void onLocationFound(Location location) { 
       // Do some stuff 
       currentLatDouble = location.getLatitude(); 
       currentLngDouble = location.getLongitude(); 
      } 

      @Override 
      public void onTimeout() { 

      } 
     }; 
     tracker.startListening(); 

但是,我得到這個錯誤:

W/LocationTracker: Provider (network) 
        fr.quentinklein.slt.ProviderError: Provider is not enabled | ProviderError{provider='network'} 

設備不支持WiFi網絡提供商還是我需要編寫一些與LocationManager相關的代碼?

請讓我知道這裏有什麼問題。

+0

檢查https://github.com/quentin7b/android-location-tracker/issues/19 – Nas

+0

@Nas是啊,我也在那裏開了一個問題。 –

+0

在那個庫它有android.permission.ACCESS_FINE_LOCATION只有在嘗試添加WiFi狀態訪問權限時 – Nas

回答

0

增加了以下權限清單文件

<uses-permission android:name="android.permission.INTERNET" /> 
Allows applications to open network sockets. 
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" /> 
Allows an app to access approximate location. 
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" /> 
Allows an app to access precise location. 
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> 
Allows applications to access information about networks. 
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> 
Allows applications to access information about Wi-Fi networks. 

此外

<uses-feature 
    android:name="android.hardware.location.network" 
    android:required="false" /> 
<uses-feature 
    android:name="android.hardware.location.gps" 
    android:required="false" /> 
+0

沒有改變...仍然是相同的錯誤! –

+0

是你在設備還是模擬器中運行?什麼是你的操作系統版本? – Nas

+0

我在設備上運行 –

相關問題