0

我想将西(或北、东或北)的 X 距离添加到坐标中。

我得到这样的坐标:

        LocationListener locationListener = new MyLocationListener();                   
        locationManager.requestLocationUpdates(
                LocationManager.GPS_PROVIDER, 5000, 10, locationListener);
private class MyLocationListener implements LocationListener {

        @Override
        public void onLocationChanged(Location loc) {

             longitude = loc.getLongitude();
             latitude  = loc.getLatitude();
             altitude  = loc.getAltitude();

        }

        @Override
        public void onProviderDisabled(String provider) {}

        @Override
        public void onProviderEnabled(String provider) {}

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

我找到这样的模拟位置:

try { 
                    Location mockLocation = new Location(provider); // a string
                    mockLocation.setLatitude(latitude);  // double 
                    mockLocation.setLongitude(longitude); 
                    mockLocation.setAltitude(altitude);  
                    mockLocation.setTime(System.currentTimeMillis());
                    mockLocation.setAccuracy( Float.parseFloat("20"));
                    mockLocation.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());

                    locationManager_mock.addTestProvider(LocationManager.GPS_PROVIDER, 
                            false, false, false, false, true, true, true,
                            Criteria.POWER_LOW, Criteria.ACCURACY_FINE);

                    locationManager_mock.setTestProviderLocation(provider, mockLocation); 
                } catch (Exception e) { 
                     Toast.makeText(getApplicationContext(), 
                             toastt, Toast.LENGTH_LONG).show();
                }

            }
        });

但我不想向西或某处增加 20 米?

提前致谢。

我找到了我的解决方案:

https://stackoverflow.com/a/38424087/1332870

4

0 回答 0