29_移植gps获取到手机
来源:互联网 发布:网络维护经验 编辑:程序博客网 时间:2024/05/18 03:34
一、GPS工具类
public class GPSInfoProvider {
// 保证位置提供者只会注册一次监听器 只会初始化一次.(单例设计模式)
private GPSInfoProvider() {
} // 私有化构造方法
private static GPSInfoProvider mGpsInfoProvider;
private static LocationManager lm;
private static SharedPreferences sp;
private static MyListener listener;
public static GPSInfoProvider getInstance(Context context) {
if (mGpsInfoProvider == null) {
mGpsInfoProvider = new GPSInfoProvider(); //实例化唯一实例
lm = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
Criteria criteria = new Criteria();
sp = context.getSharedPreferences("config", Context.MODE_PRIVATE);
criteria.setAccuracy(Criteria.ACCURACY_FINE);
criteria.setCostAllowed(true);
criteria.setPowerRequirement(Criteria.POWER_HIGH);
criteria.setSpeedRequired(true);
String provider = lm.getBestProvider(criteria, true);
// 第一个参数 位置提供者 第二个参数 最短更新时间 第三参数 最短的更新的距离
listener = mGpsInfoProvider.new MyListener();
lm.requestLocationUpdates(provider, 0, 0, listener);
}
return mGpsInfoProvider;
}
private class MyListener implements LocationListener {
/**
* 当位置改变的时候调用
*/
public void onLocationChanged(Location location) {
float accuracy = location.getAccuracy(); //精确度
double wlong = location.getLatitude(); // 纬度
double jlong = location.getLongitude(); // 经度
//经度和纬度信息存起来.
Editor editor = sp.edit();
editor.putString("lastlocation", wlong+"-"+jlong+"-"+accuracy);
editor.commit();
}
/**
* 某一个位置提供者的状态发生改变的时候调用的方法
*/
public void onStatusChanged(String provider, int status, Bundle extras) {
}
public void onProviderEnabled(String provider) {
}
public void onProviderDisabled(String provider) {
}
}
/**
* 返回最后一次手机的位置.
* @return
*/
public String getPhoneLocation() {
return sp.getString("lastlocation", "");
}
}
二、Activity中
String lastloaction = GPSInfoProvider.getInstance(context).getPhoneLocation();
- 29_移植gps获取到手机
- Android 获取手机GPS
- 手机GPS获取海拔
- 获取手机是否开启GPS
- 移植GPS到8810机器(coolpad)
- 29GPS代码的移植
- Android手机开发:获取GPS信息
- Android模拟器利用GPS获取手机位置
- GPS 定位获取 手机当前的位置
- Android--使用手机GPS获取经纬度
- 利用手机gps获取经纬信息定位
- Android手机获取GPS卫星数量问题
- Android--使用手机GPS获取经纬度
- 利用手机的GPS获取经纬度
- gps移植
- android通过gps获取到当前位置
- 70_获取手机内存大小
- 70_获取手机应用程序
- 如何解决Jquery库及其他库之间的$命名冲突
- 在Python虚拟环境中安装 fabric 时候报错
- 快速开发之01——button的按钮效果
- 黑马程序员-----OC内存管理(三)
- jQuery常用技巧
- 29_移植gps获取到手机
- DSP2833x_Headers_nonBIOS.cmd
- Ubuntu Kylin 鼠标闪烁解决办法
- centos6.5安装conky
- 玩转cocos2d-x 从零开始的cocos2d-x开发之路
- 对于Android之ViewPager类的浅析
- 快速开发之02——textview能有点击事件发生
- Git的一些使用方法(建立新的branch)
- POJ 2002--Squares