android 如何写模拟定位程序

时间:2024-10-18 18:17:24

1、获取位置对象LocationManager locationManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

android 如何写模拟定位程序

2、获取位置提供者对象LocationProvider provider = locationManager.getProvider(LocationManager.GPS_PROVIDER);

android 如何写模拟定位程序

3、添加一个模拟位置提供者locationManager.addTestProvider(provider.getName(), provider.requiresNetwork() // 请求网络, provider.requiresSatellite() // 请求卫星, provider.requiresCell() // 基站网络, provider.hasMonetaryCost() // 收费还是免费, provider.supportsAltitude() // 支持高度信息, provider.supportsSpeed() // 支持速度信息, provider.supportsBearing() // 支持方向信息, provider.getPowerRequirement() // 电源需求, provider.getAccuracy() // 经度);

android 如何写模拟定位程序

4、模拟一个定的定位的位置Location location = new Location(LocationManager.GPS_PROVIDER);location.setAccuracy(0);location.setSpeed(0);location.setBearing(0);location.setLatitude(31.23491);location.setLongitude(121.474755);location.setAccuracy(0);location.setTime(System.currentTimeMillis());location.setElapsedRealtimeNanos(SystemClock.elapsedRealtimeNanos());

android 如何写模拟定位程序

5、开启模拟位置提供者locationManager.setTestProviderEnabled(LocationManager.GPS_PROVIDER, true);locationManager.setTestProviderStatus(LocationManager.GPS_PROVIDER,LocationProvider.AVAILABLE,null,System.currentTimeMillis());设置模拟位置locationManager.setTestProviderLocation(LocationManager.GPS_PROVIDER, location);

android 如何写模拟定位程序

6、获取刚才模拟的位置location = (Location) locationManager.getLastKnownLocation(locationManager.GPS_PROVIDER);StringBuilder sb = new StringBuilder();sb.append("位置信息:\n");sb.append("经度:");sb.append(String.valueOf(location.getLongitude()));sb.append("\n纬度:");sb.append(String.valueOf(location.getLatitude()));sb.append("\n高度:");sb.append(String.valueOf(location.getAltitude()));sb.append("\n速度:");sb.append(String.valueOf(location.getSpeed()));sb.append("\n方向:");sb.append(String.valueOf(location.getBearing()));String info = sb.toString();Toast.makeText(Main.this, info, Toast.LENGTH_LONG).show();

android 如何写模拟定位程序
© 手抄报圈