0

cellular Networkと を使用して現在の位置を提供するアプリを作成したいと思い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。助けてください。

4

1 に答える 1

1

ロケーションマネージャーを見る

次のプロバイダーがあります。

ドキュメントから:

public static final 文字列 NETWORK_PROVIDER

ネットワーク ロケーション プロバイダーの名前。このプロバイダーは、セル タワーと WiFi アクセス ポイントの可用性に基づいて場所を決定します。結果は、ネットワーク ルックアップによって取得されます。アクセス許可 android.permission.ACCESS_COARSE_LOCATION または android.permission.ACCESS_FINE_LOCATION のいずれかが必要です。

WiFi 用の個別のプロバイダーはありません。あなたを使用しNETWORK_PROVIDERて、WiFiアクセスポイントにも基づいて場所を決定しています.

于 2012-07-21T13:44:09.187 に答える