public class LocationUtils {
static LocationUtils mLocationUtils = null;
AMapLocationClientOption mLocationOption
private LocationUtils() {
initOption();
}
public static LocationUtils getInstance() {
if (mLocationUtils == null) {
synchronized (LocationUtils.class) {
if (mLocationUtils == null) {
mLocationUtils = new LocationUtils();
}
}
}
return mLocationUtils;
}
public void getLoacattion(OnLocationChangedListener listener) {
mListener = listener;
init();
}
private void initOption(){
//初始化定位参数
AMapLocationClientOption mLocationOption = new AMapLocationClientOption()
.setNeedAddress(true)//设置是否返回地址信息(默认返回地址信息)
.setLocationMode(AMapLocationClientOption.
AMapLocationMode.Hight_Accuracy)//设置定位模式为高精度模式
// .setInterval(Constants.upload_position_time)//设置定位间隔,单位毫秒,默认为2000ms
.setOnceLocation(true);//获取一次定位结果
mLocationOption.setOnceLocationLatest(true);//获取最近3s内精度最高的一次定位结果
}
private void init() {
AMapLocationClient mlocationClient = new AMapLocationClient(ContextApplication.mContext);
mlocationClient.setLocationListener(new AMapLocationListener() {
@Override
public void onLocationChanged(AMapLocation amapLocation) {
if (amapLocation != null) {
if (amapLocation.getErrorCode() == 0) {
//定位成功回调信息,设置相关消息
amapLocation.getLocationType();//获取当前定位结果来源,如网络定位结果,详见定位类型表
if (mListener != null) {
mListener.onSuccess(amapLocation.getLatitude(), amapLocation.getLongitude(), amapLocation.getAddress());
}
} else {
if (mListener != null) {
mListener.onFail(amapLocation.getErrorCode(), amapLocation.getErrorInfo());
}
}
}
}
});
//设置定位参数
mlocationClient.setLocationOption(mLocationOption);
mlocationClient.startLocation();
}
OnLocationChangedListener mListener;
interface OnLocationChangedListener {
/**
* 成功
*
* @param latitude 纬度
* @param longitude 精度
* @param addressstr 地址
*/
void onSuccess(double latitude, double longitude, String addressstr);
/**
* 失败
*
* @param errCode 错误码
* @param errInfo 错误信息
*/
void onFail(int errCode, String errInfo);
}
}
高德地图获取位置封装
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
- 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
- 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
- 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
推荐阅读更多精彩内容
- //设置想要获取的view的指定位置,传入view即可let weizhiLeft = gdMapView.con...
- if (aMap == null) {aMap = mMapView.getMap();}setPosition(...
- var search: AMapSearchAPI!//搜索search = AMapSearchAPI()sea...