Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/225.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Android:通过蜂窝网络和WiFi进行位置检测_Android_Location_Android Wifi - Fatal编程技术网

Android:通过蜂窝网络和WiFi进行位置检测

Android:通过蜂窝网络和WiFi进行位置检测,android,location,android-wifi,Android,Location,Android Wifi,我想创建一个应用程序,它将使用蜂窝网络和WiFi提供当前位置 我喜欢同时从两个提供商那里获得位置,然后决定哪个提供商给我的最好 现在我从网络上获取位置信息 LocationManager lm = (LocationManager) getSystemService(Context.LOCATION_SERVICE); LocationListener locationlistenerforNetwork = new mylocationlistenerNetwork(); lm.request

我想创建一个应用程序,它将使用
蜂窝网络
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
定位。请帮助。

请参阅

有以下供应商:

从文档:

公共静态最终字符串网络\u提供程序

网络位置提供程序的名称。此提供程序确定 位置取决于基站和WiFi接入点的可用性。 通过网络查找检索结果。需要以下任一项 权限android.permission.ACCESS\u位置或 android.permission.ACCESS\u FINE\u位置

没有单独的WiFi提供商。使用
NETWORK\u PROVIDER
您还可以根据WiFi接入点确定位置