手机
当前位置:查字典教程网 >编程开发 >安卓软件开发 >Android三种GSM手机定位技术分析
Android三种GSM手机定位技术分析
摘要:复制代码代码如下://声明LocationManager对象LocationManagerloctionManager;//通过系统服务,取...

复制代码 代码如下:

// 声明LocationManager对象

LocationManager loctionManager;

// 通过系统服务,取得LocationManager对象

loctionManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE);

方式一:

复制代码 代码如下:

// 通过GPS位置提供器获得位置

String providerGPS = LocationManager.GPS_PROVIDER;

Location location = loctionManager.getLastKnownLocation(providerGPS);

方式二:

复制代码 代码如下:

// 通过基站位置提供器获得位置

String providerNetwork = LocationManager.NETWORK_PROVIDER;

Location location = loctionManager.getLastKnownLocation(providerNetwork);

方式三:

复制代码 代码如下:

// 使用标准集合,让系统自动选择可用的最佳位置提供器,提供位置

Criteria criteria = new Criteria();

criteria.setAccuracy(Criteria.ACCURACY_FINE);// 高精度

criteria.setAltitudeRequired(false);// 不要求海拔

criteria.setBearingRequired(false);// 不要求方位

criteria.setCostAllowed(true);// 允许有花费

criteria.setPowerRequirement(Criteria.POWER_LOW);// 低功耗

// 从可用的位置提供器中,匹配以上标准的最佳提供器

String provider = loctionManager.getBestProvider(criteria, true);

// 获得最后一次变化的位置

Location location = loctionManager.getLastKnownLocation(provider);

处理:

复制代码 代码如下:

// 显示在EditText中

updateWithNewLocation(location);

// 监听位置变化,2秒一次,距离10米以上

loctionManager.requestLocationUpdates(provider, 1000, 1, locationListener);

监听器及显示:

复制代码 代码如下:

// 位置监听器

private final LocationListener locationListener = new LocationListener() {

@Override

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

}

@Override

public void onProviderEnabled(String provider) {

}

@Override

public void onProviderDisabled(String provider) {

}

// 当位置变化时触发

@Override

public void onLocationChanged(Location location) {

// 使用新的location更新TextView显示

updateWithNewLocation(location);

}

};

private void updateWithNewLocation(Location location) {

if (location != null) {

double lat = location.getLatitude();

double lng = location.getLongitude();

latStr = format.format(lat);

lonStr = format.format(lng);

txtLat.setText(latStr);

txtLon.setText(lonStr);

} else {

txtLat.setText("");

txtLon.setText("");

}

}

【Android三种GSM手机定位技术分析】相关文章:

Android手机内存中文件的读写方法小结

android通用xml解析方法

Android上使用jspf插件框架的方法

Android相册效果

Android手机保持屏幕高亮方法

Android中的文件I/O操作

Android三种播放视频的方式

Android 五种布局模式

Android中3种图片压缩处理方法

Android 原始资源文件的使用详解

精品推荐
分类导航