2012-07-21 92 views
0

我想構建一個應用程序,該應用程序將使用cellular NetworkWiFi提供當前位置。Android:通過蜂窩網絡和WiFi進行位置檢測

我喜歡從兩個提供商同時獲得位置,然後決定哪個提供商給我最好的。

現在我從網絡

LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 
LocationListener locationlistenerforNetwork = new mylocationlistenerNetwork(); 
lm.requestLocationUpdates(LocationManager.NETWORK_PROVIDER, 0, 0, locationlistenerforNetwork); 

private class mylocationlistenerNetwork implements LocationListener { 
     @Override 
     public void onLocationChanged(Location location) { 
      if (location != null) { 
      Log.d("LOCATION CHANGED", location.getLatitude() + " "); 
      Log.d("LOCATION CHANGED", location.getLongitude() + " "); 
      Toast.makeText(LocationActivity.this,"latitude: "+ 
       location.getLatitude() + "longitude: " + location.getLongitude() 
       + " Provider:" + location.getProvider() + " Accuracy:" + location.getAccuracy(), 
       Toast.LENGTH_LONG).show(); 

      } 
     } 
     @Override 
     public void onProviderDisabled(String provider) { 
     } 
     @Override 
     public void onProviderEnabled(String provider) { 
     } 
     @Override 
     public void onStatusChanged(String provider, int status, Bundle extras) {} 
     } 

越來越位置我也想從WiFi位置。請幫忙。

回答

1

LocationManager

有這些供應商:

從文檔:

public static final String NETWORK_PROVIDER

網絡位置提供程序的名稱。該提供商根據蜂窩塔和WiFi接入點的可用性確定 位置。 通過網絡查找檢索結果。需要 權限android.permission.ACCESS_COARSE_LOCATION或 android.permission.ACCESS_FINE_LOCATION。

沒有單獨的WiFi提供商。使用NETWORK_PROVIDER您正在確定位置也基於WiFi接入點。

相關問題