version:3.0 beta
fix: update:更换地图sdk为百度地图
This commit is contained in:
@@ -72,8 +72,8 @@ android {
|
||||
//新平台正式
|
||||
newly {
|
||||
flavorDimensions "default"
|
||||
versionCode 20
|
||||
versionName "2.9"
|
||||
versionCode 21
|
||||
versionName "3.0"
|
||||
buildConfigField "String", "platform", '"ZhanRui"'
|
||||
manifestPlaceholders = [
|
||||
AMAP_KEY: "6e339305206eeb43f2b4cc1f31751f89"
|
||||
@@ -295,7 +295,9 @@ dependencies {
|
||||
// implementation 'cn.jiguang.sdk:jpush:4.3.0' // 此处以JPush 3.5.6 版本为例。
|
||||
// implementation 'cn.jiguang.sdk:jcore:2.9.0' // 此处以JCore 2.2.8 版本为例。
|
||||
//高德地图定位
|
||||
implementation 'com.amap.api:location:5.1.0'
|
||||
// implementation 'com.amap.api:location:5.1.0'
|
||||
//百度地图
|
||||
implementation 'com.baidu.lbsyun:BaiduMapSDK_Location:9.1.8'
|
||||
//MMKV
|
||||
implementation 'com.tencent:mmkv-static:1.2.13'
|
||||
//腾讯移动推送 TPNS
|
||||
|
||||
@@ -66,6 +66,41 @@
|
||||
<uses-permission android:name="com.aoleyun.sn.permissions.INSTALL_APK" />
|
||||
<permission android:name="com.aoleyun.sn.permissions.INSTALL_APK" />
|
||||
|
||||
<!--百度-->
|
||||
<!-- 这个权限用于进行网络定位-->
|
||||
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
|
||||
<!-- 这个权限用于访问GPS定位-->
|
||||
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
|
||||
<!-- 用于访问wifi网络信息,wifi信息会用于进行网络定位-->
|
||||
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
|
||||
<!-- 获取运营商信息,用于支持提供运营商信息相关的接口-->
|
||||
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE"/>
|
||||
<!-- 这个权限用于获取wifi的获取权限,wifi信息会用来进行网络定位-->
|
||||
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE"/>
|
||||
<!-- 写入扩展存储,向扩展卡写入数据,用于写入离线定位数据-->
|
||||
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/>
|
||||
<!-- 访问网络,网络定位需要上网 -->
|
||||
<uses-permission android:name="android.permission.INTERNET"/>
|
||||
<!-- 允许挂载和反挂载文件系统可移动存储 -->
|
||||
<uses-permission android:name="android.permission.MOUNT_UNMOUNT_FILESYSTEMS"/>
|
||||
<!-- 允许程序读取底层系统日志文件 -->
|
||||
<uses-permission android:name="android.permission.READ_LOGS"/>
|
||||
<!-- 允许访问振动设备 -->
|
||||
<uses-permission android:name="android.permission.VIBRATE"/>
|
||||
<!-- 允许使用PowerManager的 WakeLocks保持进程在休眠时从屏幕消失 -->
|
||||
<uses-permission android:name="android.permission.WAKE_LOCK"/>
|
||||
<!-- 允许程序读取或写入系统设置 -->
|
||||
<uses-permission android:name="android.permission.WRITE_SETTINGS"/>
|
||||
<!-- android 9.0上使用前台服务,需要添加权限 -->
|
||||
<uses-permission android:name="android.permission.FOREGROUND_SERVICE" />
|
||||
<!-- 用于读取手机当前的状态 -->
|
||||
<uses-permission android:name="android.permission.READ_PHONE_STATE" />
|
||||
<!-- 读取缓存数据 -->
|
||||
<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
|
||||
<!-- 获取模拟定位信息 -->
|
||||
<uses-permission android:name="android.permission.ACCESS_MOCK_LOCATION"/>
|
||||
|
||||
|
||||
<!-- 【必须】 移动推送 TPNS SDK VIP版本所需权限 -->
|
||||
<permission
|
||||
android:name="com.aoleyun.sn.permission.XGPUSH_RECEIVE"
|
||||
@@ -257,6 +292,14 @@
|
||||
<action android:name="aoleyun.intent.action.BOOT_COMPLETED" />
|
||||
</intent-filter>
|
||||
</receiver>
|
||||
|
||||
|
||||
<!-- 声明service组件 -->
|
||||
<service
|
||||
android:name="com.baidu.location.f"
|
||||
android:enabled="true"
|
||||
android:process=":remote"/>
|
||||
|
||||
<!-- <receiver android:name=".log.LogReceiver" -->
|
||||
<!-- android:permission="android.permission.DUMP" > -->
|
||||
<!-- <intent-filter> -->
|
||||
@@ -569,13 +612,13 @@
|
||||
<meta-data
|
||||
android:name="com.amap.api.v2.apikey"
|
||||
android:value="${AMAP_KEY}" />
|
||||
<!-- 定位需要的服务 适配Android Q需要加上android:foregroundServiceType="location" -->
|
||||
<service
|
||||
android:name="com.amap.api.location.APSService"
|
||||
android:foregroundServiceType="location" />
|
||||
<meta-data
|
||||
android:name="com.aoleyun.sn.base.CustomGlideModule"
|
||||
android:value="AppGlideModule" />
|
||||
<meta-data
|
||||
android:name="com.baidu.lbsapi.API_KEY"
|
||||
android:value="bQxx6zC6AvZ6O41UUPYq6X1LsQuC36dh" >
|
||||
</meta-data>
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@@ -1,29 +1,35 @@
|
||||
package com.aoleyun.sn.manager;
|
||||
|
||||
import android.annotation.SuppressLint;
|
||||
import android.content.Context;
|
||||
import android.util.Log;
|
||||
|
||||
import com.amap.api.location.AMapLocation;
|
||||
import com.amap.api.location.AMapLocationClient;
|
||||
import com.amap.api.location.AMapLocationClientOption;
|
||||
import com.amap.api.location.AMapLocationListener;
|
||||
import com.aoleyun.sn.utils.SPUtils;
|
||||
import com.baidu.location.BDAbstractLocationListener;
|
||||
import com.baidu.location.BDLocation;
|
||||
import com.baidu.location.LocationClient;
|
||||
import com.baidu.location.LocationClientOption;
|
||||
|
||||
public class AmapManager {
|
||||
private String TAG = AmapManager.class.getSimpleName();
|
||||
|
||||
@SuppressLint("StaticFieldLeak")
|
||||
private static AmapManager sInstance;
|
||||
private Context mContext;
|
||||
public static AMapLocationClient locationClient = null;
|
||||
private String TAG = AmapManager.class.getSimpleName();
|
||||
private LocationClient mLocationClient = null;
|
||||
private LocationClientOption mOption;
|
||||
|
||||
private AmapManager(Context context) {
|
||||
this.mContext = context;
|
||||
}
|
||||
|
||||
public static void init(Context context) {
|
||||
if (context == null) {
|
||||
throw new RuntimeException("Context is NULL");
|
||||
}
|
||||
if (sInstance == null) {
|
||||
sInstance = new AmapManager(context);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public static AmapManager getInstance() {
|
||||
@@ -34,57 +40,130 @@ public class AmapManager {
|
||||
return sInstance;
|
||||
}
|
||||
|
||||
public AMapLocationClient getLocationClient() {
|
||||
if (null == locationClient) {
|
||||
public void initAmap() {
|
||||
mLocationClient = new LocationClient(mContext);
|
||||
mLocationClient.setLocOption(getDefaultLocationClientOption());
|
||||
mLocationClient.registerLocationListener(mListener);
|
||||
mLocationClient.stop();
|
||||
mLocationClient.start();
|
||||
}
|
||||
|
||||
public LocationClient getLocationClient() {
|
||||
if (mLocationClient == null) {
|
||||
initAmap();
|
||||
}
|
||||
return locationClient;
|
||||
return mLocationClient;
|
||||
}
|
||||
|
||||
public void initAmap() {
|
||||
locationClient = new AMapLocationClient(mContext);
|
||||
AMapLocationClientOption option = new AMapLocationClientOption();
|
||||
option.setLocationPurpose(AMapLocationClientOption.AMapLocationPurpose.SignIn);
|
||||
option.setLocationMode(AMapLocationClientOption.AMapLocationMode.Hight_Accuracy);
|
||||
option.setNeedAddress(true);
|
||||
//获取一次定位结果:
|
||||
//该方法默认为false。
|
||||
option.setOnceLocation(true);
|
||||
//获取最近3s内精度最高的一次定位结果:
|
||||
//设置setOnceLocationLatest(boolean b)接口为true,启动定位时SDK会返回最近3s内精度最高的一次定位结果。
|
||||
// 如果设置其为true,setOnceLocation(boolean b)接口也会被设置为true,反之不会,默认为false。
|
||||
option.setOnceLocationLatest(true);
|
||||
locationClient.setLocationOption(option);
|
||||
//设置定位模式为AMapLocationMode.Hight_Accuracy,高精度模式。
|
||||
//设置定位监听
|
||||
locationClient.setLocationListener(new AMapLocationListener() {
|
||||
/***
|
||||
*
|
||||
* @return DefaultLocationClientOption 默认O设置
|
||||
*/
|
||||
public LocationClientOption getDefaultLocationClientOption() {
|
||||
if (mOption == null) {
|
||||
mOption = new LocationClientOption();
|
||||
mOption.setCoorType("bd09ll"); // 可选,默认gcj02,设置返回的定位结果坐标系,如果配合百度地图使用,建议设置为bd09ll;
|
||||
mOption.setScanSpan(0); // 可选,默认0,即仅定位一次,设置发起连续定位请求的间隔需要大于等于1000ms才是有效的
|
||||
mOption.setIsNeedAddress(true); // 可选,设置是否需要地址信息,默认不需要
|
||||
mOption.setIsNeedLocationDescribe(true); // 可选,设置是否需要地址描述
|
||||
mOption.setNeedDeviceDirect(false); // 可选,设置是否需要设备方向结果
|
||||
mOption.setLocationNotify(false); // 可选,默认false,设置是否当gps有效时按照1S1次频率输出GPS结果
|
||||
mOption.setIgnoreKillProcess(true); // 可选,默认true,定位SDK内部是一个SERVICE,并放到了独立进程,设置是否在stop
|
||||
mOption.setIsNeedLocationDescribe(true); // 可选,默认false,设置是否需要位置语义化结果,可以在BDLocation
|
||||
mOption.setIsNeedLocationPoiList(true); // 可选,默认false,设置是否需要POI结果,可以在BDLocation
|
||||
mOption.SetIgnoreCacheException(false); // 可选,默认false,设置是否收集CRASH信息,默认收集
|
||||
mOption.setLocationMode(LocationClientOption.LocationMode.Hight_Accuracy); // 可选,默认高精度,设置定位模式,高精度,低功耗,仅设备,模糊
|
||||
mOption.setIsNeedAltitude(false); // 可选,默认false,设置定位时是否需要海拔信息,默认不需要,除基础定位版本都可用
|
||||
// 可选,设置首次定位时选择定位速度优先还是定位准确性优先,默认为速度优先
|
||||
// mOption.setFirstLocType(LocationClientOption.FirstLocType.SPEED_IN_FIRST_LOC);
|
||||
}
|
||||
return mOption;
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLocationChanged(AMapLocation aMapLocation) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||
if (aMapLocation.getErrorCode() == 0) {
|
||||
Log.e(TAG, "onLocationChanged: " + "定位成功");
|
||||
Log.e(TAG, "onLocationChanged: " + aMapLocation.getAddress());
|
||||
sb.append(aMapLocation.getAddress()).append("\n");
|
||||
SPUtils.put(mContext, "AmapAddress", aMapLocation.getAddress());
|
||||
SPUtils.put(mContext, "longitude", aMapLocation.getLongitude());
|
||||
SPUtils.put(mContext, "latitude", aMapLocation.getLatitude());
|
||||
SPUtils.put(mContext, "AmapError", "");
|
||||
} else {
|
||||
//定位失败
|
||||
sb.append("定位失败" + "\n");
|
||||
Log.e(TAG, "onLocationChanged: " + "定位失败");
|
||||
SPUtils.put(mContext, "AmapError", String.valueOf(aMapLocation.getErrorInfo()));
|
||||
}
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapAddress", "-"));
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapError", "-"));
|
||||
Log.e(TAG, "amap: " + sb.toString());
|
||||
|
||||
/*****
|
||||
*
|
||||
* 定位结果回调,重写onReceiveLocation方法,可以直接拷贝如下代码到自己工程中修改
|
||||
*
|
||||
*/
|
||||
private BDAbstractLocationListener mListener = new BDAbstractLocationListener() {
|
||||
|
||||
/**
|
||||
* 定位请求回调函数
|
||||
* @param location 定位结果
|
||||
*/
|
||||
@Override
|
||||
public void onReceiveLocation(BDLocation location) {
|
||||
// TODO Auto-generated method stub
|
||||
if (null != location && location.getLocType() != BDLocation.TypeServerError) {
|
||||
Log.e(TAG, "onLocationChanged: " + "定位成功");
|
||||
Log.e(TAG, "onLocationChanged: " + location.getAddress());
|
||||
SPUtils.put(mContext, "AmapAddress", location.getAddress());
|
||||
SPUtils.put(mContext, "longitude", location.getLongitude());
|
||||
SPUtils.put(mContext, "latitude", location.getLatitude());
|
||||
SPUtils.put(mContext, "AmapError", "");
|
||||
}
|
||||
});
|
||||
//设置场景模式后最好调用一次stop,再调用start以保证场景模式生效
|
||||
locationClient.stopLocation();
|
||||
locationClient.startLocation();
|
||||
Log.e(TAG, "initAmap: " + "startLocation");
|
||||
}
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapAddress", "-"));
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapError", "-"));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onConnectHotSpotMessage(String s, int i) {
|
||||
super.onConnectHotSpotMessage(s, i);
|
||||
}
|
||||
|
||||
/**
|
||||
* 回调定位诊断信息,开发者可以根据相关信息解决定位遇到的一些问题
|
||||
* @param locType 当前定位类型
|
||||
* @param diagnosticType 诊断类型(1~9)
|
||||
* @param diagnosticMessage 具体的诊断信息释义
|
||||
*/
|
||||
@Override
|
||||
public void onLocDiagnosticMessage(int locType, int diagnosticType, String diagnosticMessage) {
|
||||
super.onLocDiagnosticMessage(locType, diagnosticType, diagnosticMessage);
|
||||
// int tag = 2;
|
||||
StringBuffer sb = new StringBuffer(256);
|
||||
sb.append("诊断结果: ");
|
||||
if (locType == BDLocation.TypeNetWorkLocation) {
|
||||
if (diagnosticType == 1) {
|
||||
sb.append("网络定位成功,没有开启GPS,建议打开GPS会更好");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 2) {
|
||||
sb.append("网络定位成功,没有开启Wi-Fi,建议打开Wi-Fi会更好");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
} else if (locType == BDLocation.TypeOffLineLocationFail) {
|
||||
if (diagnosticType == 3) {
|
||||
sb.append("定位失败,请您检查您的网络状态");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
} else if (locType == BDLocation.TypeCriteriaException) {
|
||||
if (diagnosticType == 4) {
|
||||
sb.append("定位失败,无法获取任何有效定位依据");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 5) {
|
||||
sb.append("定位失败,无法获取有效定位依据,请检查运营商网络或者Wi-Fi网络是否正常开启,尝试重新请求定位");
|
||||
sb.append(diagnosticMessage);
|
||||
} else if (diagnosticType == 6) {
|
||||
sb.append("定位失败,无法获取有效定位依据,请尝试插入一张sim卡或打开Wi-Fi重试");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 7) {
|
||||
sb.append("定位失败,飞行模式下无法获取有效定位依据,请关闭飞行模式重试");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 9) {
|
||||
sb.append("定位失败,无法获取任何有效定位依据");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
} else if (locType == BDLocation.TypeServerError) {
|
||||
if (diagnosticType == 8) {
|
||||
sb.append("定位失败,请确认您定位的开关打开状态,是否赋予APP定位权限");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
}
|
||||
Log.e(TAG, "onLocationChanged: " + "定位失败");
|
||||
SPUtils.put(mContext, "AmapError", sb);
|
||||
Log.e(TAG, "onLocDiagnosticMessage: " + sb);
|
||||
// logMsg(sb.toString(), tag);
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
@@ -20,10 +20,8 @@ import androidx.annotation.Nullable;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.amap.api.location.AMapLocationClient;
|
||||
import com.aoleyun.sn.BuildConfig;
|
||||
import com.aoleyun.sn.KeepAliveConnection;
|
||||
import com.aoleyun.sn.base.BaseApplication;
|
||||
import com.aoleyun.sn.bean.BaseResponse;
|
||||
import com.aoleyun.sn.comm.CommonConfig;
|
||||
import com.aoleyun.sn.comm.PackageNames;
|
||||
@@ -45,6 +43,7 @@ import com.arialyy.annotations.Download;
|
||||
import com.arialyy.aria.core.Aria;
|
||||
import com.arialyy.aria.core.download.DownloadEntity;
|
||||
import com.arialyy.aria.core.task.DownloadTask;
|
||||
import com.baidu.location.LocationClient;
|
||||
|
||||
import java.io.IOException;
|
||||
import java.util.List;
|
||||
@@ -241,9 +240,9 @@ public class GuardService extends Service {
|
||||
break;
|
||||
case Intent.ACTION_SCREEN_ON: {
|
||||
long time = System.currentTimeMillis();
|
||||
AMapLocationClient aMapLocationClient = AmapManager.getInstance().getLocationClient();
|
||||
aMapLocationClient.stopLocation();
|
||||
aMapLocationClient.startLocation();
|
||||
LocationClient locationClient = AmapManager.getInstance().getLocationClient();
|
||||
locationClient.stop();
|
||||
locationClient.start();
|
||||
getLockState("2", String.valueOf(time));
|
||||
// sendScreenStatus(1);
|
||||
}
|
||||
|
||||
@@ -22,9 +22,6 @@ import android.widget.Toast;
|
||||
|
||||
import com.alibaba.fastjson.JSON;
|
||||
import com.alibaba.fastjson.JSONObject;
|
||||
import com.amap.api.location.AMapLocation;
|
||||
import com.amap.api.location.AMapLocationClient;
|
||||
import com.amap.api.location.AMapLocationListener;
|
||||
import com.aoleyun.sn.R;
|
||||
import com.aoleyun.sn.base.BaseApplication;
|
||||
import com.aoleyun.sn.bean.BaseResponse;
|
||||
@@ -55,6 +52,9 @@ import com.aoleyun.sn.utils.ServiceAliveUtils;
|
||||
import com.aoleyun.sn.utils.ToastUtil;
|
||||
import com.aoleyun.sn.utils.Utils;
|
||||
import com.arialyy.aria.core.Aria;
|
||||
import com.baidu.location.BDAbstractLocationListener;
|
||||
import com.baidu.location.BDLocation;
|
||||
import com.baidu.location.LocationClient;
|
||||
import com.google.gson.Gson;
|
||||
import com.google.gson.GsonBuilder;
|
||||
import com.google.gson.JsonObject;
|
||||
@@ -618,36 +618,69 @@ public class MessageReceiver extends XGPushBaseReceiver {
|
||||
} else {
|
||||
Log.e(TAG, "mPresenter is NULL");
|
||||
}
|
||||
AMapLocationClient aMapLocationClient = AmapManager.getInstance().getLocationClient();
|
||||
aMapLocationClient.stopLocation();
|
||||
aMapLocationClient.startLocation();
|
||||
aMapLocationClient.setLocationListener(new AMapLocationListener() {
|
||||
LocationClient locationClient = AmapManager.getInstance().getLocationClient();
|
||||
locationClient.stop();
|
||||
locationClient.start();
|
||||
locationClient.registerLocationListener(new BDAbstractLocationListener() {
|
||||
@Override
|
||||
public void onLocationChanged(AMapLocation aMapLocation) {
|
||||
StringBuilder sb = new StringBuilder();
|
||||
//errCode等于0代表定位成功,其他的为定位失败,具体的可以参照官网定位错误码说明
|
||||
if (aMapLocation.getErrorCode() == 0) {
|
||||
public void onReceiveLocation(BDLocation bdLocation) {
|
||||
Log.e(TAG, "onReceiveLocation: ");
|
||||
if (null != bdLocation && bdLocation.getLocType() != BDLocation.TypeServerError) {
|
||||
Log.e(TAG, "onLocationChanged: " + "定位成功");
|
||||
Log.e(TAG, "onLocationChanged: " + aMapLocation.getAddress());
|
||||
sb.append(aMapLocation.getAddress()).append("\n");
|
||||
SPUtils.put(mContext, "AmapAddress", aMapLocation.getAddress());
|
||||
SPUtils.put(mContext, "longitude", aMapLocation.getLongitude());
|
||||
SPUtils.put(mContext, "latitude", aMapLocation.getLatitude());
|
||||
} else {
|
||||
//定位失败
|
||||
sb.append("定位失败" + "\n");
|
||||
SPUtils.put(mContext, "AmapError", String.valueOf(aMapLocation.getErrorCode()));
|
||||
Log.e(TAG, "onLocationChanged: " + bdLocation.getAddress());
|
||||
SPUtils.put(mContext, "AmapAddress", bdLocation.getAddress());
|
||||
SPUtils.put(mContext, "longitude", bdLocation.getLongitude());
|
||||
SPUtils.put(mContext, "latitude", bdLocation.getLatitude());
|
||||
SPUtils.put(mContext, "AmapError", "");
|
||||
}
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapAddress", "-"));
|
||||
Log.e(TAG, (String) SPUtils.get(mContext, "AmapError", "-"));
|
||||
Log.e(TAG, "amap: " + sb.toString());
|
||||
NetInterfaceManager.getInstance().updateDeviceInfo(new NetInterfaceManager.onCompleteCallback() {
|
||||
@Override
|
||||
public void onComplete() {
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onLocDiagnosticMessage(int locType, int diagnosticType, String diagnosticMessage) {
|
||||
super.onLocDiagnosticMessage(locType, diagnosticType, diagnosticMessage);
|
||||
StringBuffer sb = new StringBuffer(256);
|
||||
sb.append("诊断结果: ");
|
||||
if (locType == BDLocation.TypeNetWorkLocation) {
|
||||
if (diagnosticType == 1) {
|
||||
sb.append("网络定位成功,没有开启GPS,建议打开GPS会更好");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 2) {
|
||||
sb.append("网络定位成功,没有开启Wi-Fi,建议打开Wi-Fi会更好");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
});
|
||||
|
||||
} else if (locType == BDLocation.TypeOffLineLocationFail) {
|
||||
if (diagnosticType == 3) {
|
||||
sb.append("定位失败,请您检查您的网络状态");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
} else if (locType == BDLocation.TypeCriteriaException) {
|
||||
if (diagnosticType == 4) {
|
||||
sb.append("定位失败,无法获取任何有效定位依据");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 5) {
|
||||
sb.append("定位失败,无法获取有效定位依据,请检查运营商网络或者Wi-Fi网络是否正常开启,尝试重新请求定位");
|
||||
sb.append(diagnosticMessage);
|
||||
} else if (diagnosticType == 6) {
|
||||
sb.append("定位失败,无法获取有效定位依据,请尝试插入一张sim卡或打开Wi-Fi重试");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 7) {
|
||||
sb.append("定位失败,飞行模式下无法获取有效定位依据,请关闭飞行模式重试");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
} else if (diagnosticType == 9) {
|
||||
sb.append("定位失败,无法获取任何有效定位依据");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
} else if (locType == BDLocation.TypeServerError) {
|
||||
if (diagnosticType == 8) {
|
||||
sb.append("定位失败,请确认您定位的开关打开状态,是否赋予APP定位权限");
|
||||
sb.append("\n" + diagnosticMessage);
|
||||
}
|
||||
}
|
||||
Log.e(TAG, "onLocationChanged: " + "定位失败");
|
||||
SPUtils.put(mContext, "AmapError", sb);
|
||||
Log.e(TAG, "onLocDiagnosticMessage: " + sb);
|
||||
}
|
||||
});
|
||||
break;
|
||||
|
||||
Reference in New Issue
Block a user