这两天终于解决了这个GPS室内定位的问题,速度控制在3s以内,采用了百度的移动地图api,定位的思路是,先采用GPS定位,如果GPS无法获取,就采用NET_WORK进行定位,如果net_work无法获取,就采用基站定位,综合这三种方式,一定可以获取你当前所在为位置的经纬度的!
解决方案 »
- Android2.3 & Android4.0
- ndk编译sdl问题
- 项目错误
- 请问怎么将透明的Activity全屏,标题栏可以消失,通知栏无法隐藏!
- 请教个问题...tinyx能移植到android平台吗..?
- 求助了,希望大家能帮帮我,谢谢了
- android 里自定义view 填充GridView 的视图 可以吗
- XmlPull生成xml问题
- 关于PopupWindow中,startActivityForResult后onActivityResult无反应
- 保证程序只有一个在运行
- ListView里面包含Textview,TextView中有autolink的话,ListView的所有事件就无效了
- MAC系统下 APK怎么可以直接安装?
lm = (LocationManager) context.getSystemService(Context.LOCATION_SERVICE);
currentLocation = lm.getLastKnownLocation(LocationManager.GPS_PROVIDER);
updateView(currentLocation);
lm.requestLocationUpdates(LocationManager.GPS_PROVIDER, 1000, 0,gpsListener);
private LocationListener gpsListener = new LocationListener() {
/**
* 位置信息变化时触发
*/
@Override
public void onLocationChanged(Location location) {
if (isBetterLocation(location, currentLocation)) {
currentLocation = location;
updateView(location);
Toast.makeText(context, "位置信息变化时触发", Toast.LENGTH_LONG).show();
}
}
/**
* GPS禁用时触发
*/
@Override
public void onProviderDisabled(String provider) {
updateView(null);
}
/**
* GPS开启时触发
*/
@Override
public void onProviderEnabled(String provider) {
Location location = lm.getLastKnownLocation(provider);
updateView(location);
}
/**
* GPS状态变化时触发
*/
@Override
public void onStatusChanged(String provider, int status, Bundle extras) {
}
};
怎么解决