Android三种GSM手机定位技术分析_Android

复制代码 代码如下:

// 声明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("");
}
}

时间: 2024-09-18 16:04:12

Android三种GSM手机定位技术分析_Android的相关文章

Android三种GSM手机定位技术分析

复制代码 代码如下: // 声明LocationManager对象 LocationManager loctionManager; // 通过系统服务,取得LocationManager对象 loctionManager = (LocationManager) getSystemService(Context.LOCATION_SERVICE); 方式一: 复制代码 代码如下: // 通过GPS位置提供器获得位置 String providerGPS = LocationManager.GPS_

三种Web开发主流技术的性价评价_服务器

  ASP:MS IIS 4/Visuale Interdev 6   PHP:Apache 1.2.x/HomeSite 4.5/PHP 4   Java:iPlanet Web Server 4.1/JBuilder 3.5/JDK 1.2.2   以上技术本人却实使用过,而且已经使用它们做过项目,基于以前的工作经验给初学者和正在对自己应用系统进行选择的同仁谈谈自己对它们的评价,以做参考,同时也请大家提出自己的想法和意见 ,多交流.但是我有一个这样的看法:"一个产品它存在就有存在的理由,它不

Android三种方式实现ProgressBar自定义圆形进度条_Android

进度条样式在项目中经常可以见到,下面小编给大家分享Android三种方式实现ProgressBar自定义圆形进度条. Android进度条有4种风格可以使用. 默认值是progressBarStyle. 设置成progressBarStyleSmall后,图标变小. 设置成progressBarStyleLarge后,图标变大 设置成progressBarStyleHorizontal后,变成横向长方形. 自定义圆形进度条ProgressBar的一般有三种方式: 一.通过动画实现 定义res/a

对比三种模块化数据中心技术

现如今数据中心单从规模上来讲,一方面向着超大规格的方向迅猛发展,数据中心的规模越来越大,包含数十万台服务器的超级数据中心都纷纷出现;另一方面却向着相反的方向发展,规模越来越小,当然这里所说的规模越来越小并不是以牺牲性能为代价的,具有相同性能的数据中心规模越来越小,集成化程度越来越高,也就是常说的模块化数据中心.模块化的优点是可以非常迅速地部署完毕,通常只需要几周时间,相比之下,建造传统数据中心通常需要几个月,甚至几年.模块化数据中心成本较低,节省空间,同时也较易搬动.模块化数据中心也有三大类具体

Android三种方式实现ProgressBar自定义圆形进度条

进度条样式在项目中经常可以见到,下面小编给大家分享Android三种方式实现ProgressBar自定义圆形进度条. Android进度条有4种风格可以使用. 默认值是progressBarStyle. 设置成progressBarStyleSmall后,图标变小. 设置成progressBarStyleLarge后,图标变大 设置成progressBarStyleHorizontal后,变成横向长方形. 自定义圆形进度条ProgressBar的一般有三种方式: 一.通过动画实现 定义res/a

Android 三种延迟操作的实现方法

Android 三种延迟操作的实现方法 实现方法: 一.线程 new Thread(new Runnable(){ public void run(){ Thread.sleep(XXXX); handler.sendMessage();----告诉主线程执行任务 } }).start 二.延时器 TimerTask task = new TimerTask(){ public void run(){ //execute the task } }; Timer timer = new Timer

Android 三种动画详解及简单实例

Android 三种动画详解 帧动画 一张张图片不断的切换,形成动画效果 在drawable目录下定义xml文件,子节点为animation-list,在这里定义要显示的图片和每张图片的显示时长 <animation-list xmlns:android="http://schemas.android.com/apk/res/android" android:oneshot="false"> <item android:drawable="

Android三种菜单实例分析

  本文实例讲述了Android的三种菜单.分享给大家供大家参考.具体分析如下: Android的菜单分为三种类型:选项菜单(Option Menu).上下文菜单(Context Menu).子菜单(Sub Menu) 一.选项菜单 当用户单击设备上的菜单按钮(Menu),触发事件弹出的菜单就是选项菜单.选项菜单最多只有六个,超过六个第六个就会自动显示 更多 选项来展示显示. 创建方法: 1.覆盖Activity的onCreateOptionsMenu(Menu menu)方法,当我们第一次打开

三种Web开发主流技术的评价之ASP

web|评价|主流 三种主流技术是哪三种呢?我主要讲一下ASP(ActiveX Server Page).PHP.Java这三种技术.主要是基于我到现在已经使用的以下产品而谈: ASP:MS IIS 4/Visuale Interdev 6 PHP:Apache 1.2.x/HomeSite 4.5/PHP 4 Java:iPlanet Web Server 4.1/JBuilder 3.5/JDK 1.2.2 以上技术本人却实使用过,而且已经使用它们做过项目,基于以前的工作经验给初学者和正在对