当前位置:  编程技术>移动开发

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

    来源: 互联网  发布时间:2014-10-11

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

代码如下:

// 声明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通过gps获取定位的位置数据和gps经纬度
  • Android实现GPS定位代码实例
  • Android中实现GPS定位的简单例子
  • Android中GPS定位的用法实例
  • Android基站定位原理及实现代码
  • android 定位的4种方式介绍
  • Android GPS定位测试(附效果图和示例)
  • 在Android里完美实现基站和WIFI定位
  • Android控件之TextView的分析探究
  • Android中gravity与layout_gravity的使用区别分析
  • 关于Android WebView的loadData方法的注意事项分析
  • Android入门之RelativeLayout、FrameLayout用法分析
  • android开发环境遇到adt无法启动的问题分析及解决方法
  • 浅谈AnDroidDraw+DroidDraw实现Android程序UI设计的分析说明
  • Fedora14下android开发: eclipse与ibus确有冲突的问题分析
  • Android图片占用内存全面分析
  • 基于android中读取assets目录下a.txt文件并进行解析的深入分析
  • Android获取通话时间实例分析
  • Android CheckBox 的使用案例分析
  • Android SharedPreferences的使用分析
  • Android学习笔记(二)App工程文件分析
  • android生命周期深入分析(一)
  • android播放视频时在立体声与单声道之间切换无变化原因分析及解决
  • android 网络连接处理分析
  • Android入门之AlertDialog用法实例分析
  • android4.0混淆XmlPullParser报错原因分析解决
  • Android Mms之:联系人管理的应用分析
  • Android NDK中socket的用法以及注意事项分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • 申请Android Map 的API Key(v2)的最新申请方式(SHA1密钥)
  • Android瀑布流实例 android_waterfall
  • Android开发需要的几点注意事项总结
  • Android系统自带样式 (android:theme)
  • android 4.0 托管进程介绍及优先级和回收机制
  • Android网络共享软件 Android Wifi Tether
  • Android访问与手机通讯相关类的介绍
  • Android 图标库 Android GraphView
  • Android及andriod无线网络Wifi开发的几点注意事项
  • 轻量级Android开发工具 Android Tools
  • Android 2.3 下StrictMode介绍
  • Android 开发环境 Android Studio
  • IDEA的Android开发插件 idea-android
  • Android手机事件提醒 Android Notifier
  • Android Mms之:联系人管理的应用分析 iis7站长之家
  • Android小游戏 Android Shapes
  • Android电池监控 Android Battery Dog
  • android开发:“android:WindowTitle”没有对应项no resource
  • Android 上类似IOS 的开关控件。 Android ToggleButton
  • Android 将 android view 的位置设为右下角的解决方法
  • Android 2D游戏引擎 Android Angle


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3