public final class LocationClient
extends java.lang.Object
implements com.baidu.location.utils.VersionConfig, com.baidu.location.common.FirstLocRequest.FirstLocationListener
限定符和类型 | 字段和说明 |
---|---|
static int |
CONNECT_HOT_SPOT_FALSE
连接wifi不是移动热点
|
static int |
CONNECT_HOT_SPOT_TRUE
连接wifi是移动热点
|
static int |
CONNECT_HOT_SPOT_UNKNOWN
连接移动热点状态未知
|
static int |
LOC_DIAGNOSTIC_TYPE_BETTER_OPEN_GPS
诊断信息:打开GPS定位会更加精准
|
static int |
LOC_DIAGNOSTIC_TYPE_BETTER_OPEN_WIFI
诊断信息:打开wifi(不用连接)定位会更加精准
|
static int |
LOC_DIAGNOSTIC_TYPE_FAIL_UNKNOWN
诊断信息:未知定位异常原因,请确认周围环境或者检查手机有无管家软件没有授权APP定位权限等
|
static int |
LOC_DIAGNOSTIC_TYPE_NEED_CHECK_LOC_PERMISSION
诊断信息:定位失败,请确认是否授予APP定位权限
|
static int |
LOC_DIAGNOSTIC_TYPE_NEED_CHECK_NET
诊断信息:定位失败,请检查网络是否畅通
|
static int |
LOC_DIAGNOSTIC_TYPE_NEED_CLOSE_FLYMODE
诊断信息:飞行模式无法定位,请关闭飞行模式重试
|
static int |
LOC_DIAGNOSTIC_TYPE_NEED_INSERT_SIMCARD_OR_OPEN_WIFI
诊断信息:无法获取任何定位依据,请插入SIM卡或者打开wifi重试
|
static int |
LOC_DIAGNOSTIC_TYPE_NEED_OPEN_PHONE_LOC_SWITCH
诊断信息:定位失败,请打开手机定位开关
|
static int |
LOC_DIAGNOSTIC_TYPE_SERVER_FAIL
诊断信息:服务端定位失败
|
构造器和说明 |
---|
LocationClient(android.content.Context context)
构造函数
|
LocationClient(android.content.Context context,
LocationClientOption locOption)
构造函数
|
限定符和类型 | 方法和说明 |
---|---|
void |
disableAssistantLocation()
停止H5辅助定位
|
void |
disableLocInForeground(boolean removeNotification)
关闭前台定位服务
|
void |
enableAssistantLocation(android.webkit.WebView webView)
开发者应用如果有H5页面使用了百度JS接口,该接口可以辅助百度JS更好的进行定位
|
void |
enableLocInForeground(int id,
android.app.Notification notification)
开发者应用如果有后台定位需求,在退到后台的时候,为了保证定位可以在后台一直运行,
可以调用该函数,会将定位SDK的SERVICE设置成为前台服务,适配ANDROID 8后台无法定位问题,其他版本下也会提高定位进程存活率
|
java.lang.String |
getAccessKey()
获取用户设置的KEY
|
static BDLocation |
getBDLocationInCoorType(BDLocation src,
java.lang.String transferType)
根据设定的转换坐标系类型得到相应坐标系下的BDLocation
|
BDLocation |
getLastKnownLocation()
同步定位,返回最近一次定位结果
|
LocationClientOption |
getLocOption() |
java.lang.String |
getVersion()
获取定位sdk版本信息
|
boolean |
isStarted()
client是否started,很多开发者会在start之后去检查此函数,定位客户端启动会有一定时间,所以会有一定延时,实际上调用start方法后定位SDK会默认立即发起定位请求,开发者不用额外检查
|
void |
onReceiveLightLocString(java.lang.String locStr) |
void |
onReceiveLocation(BDLocation location) |
void |
registerLocationListener(BDAbstractLocationListener listener)
注册 BDAbstractLocationListener 定位监听函数
|
void |
registerLocationListener(BDLocationListener listener)
已过时。
请使用registerLocationListener (BDAbstractLocationListener listener)
|
void |
registerNotify(BDNotifyListener mNotify)
注册位置提醒监听
|
void |
registerNotifyLocationListener(BDLocationListener listener)
NA
|
void |
removeNotifyEvent(BDNotifyListener mNotify)
取消注册的位置提醒监听
|
boolean |
requestHotSpotState()
触发请求当前连接wifi是否是移动热点的状态
|
int |
requestLocation()
请求定位,异步返回,结果在locationListener中获取.
|
void |
requestNotifyLocation()
NA
|
int |
requestOfflineLocation()
离线定位请求,异步返回,结果在locationListener中获取.
|
void |
restart()
重启定位SDK,后台常驻运行的APP可以尝试在回到前台的情况下重启定位SDK,防止因长时间后台运行被系统回收定位权限造成定位失败
|
void |
setLocOption(LocationClientOption locOption)
设置 LocationClientOption
|
void |
start()
启动定位sdk
|
boolean |
startIndoorMode()
打开室内定位模式,该模式下会加快定位速度并输出连续室内定位结果;当BDLocation.getFloor() !
|
boolean |
startVdr(java.util.ArrayList<java.lang.String> naviPoints)
开启vdr
|
void |
stop()
停止定位sdk
|
boolean |
stopIndoorMode()
关闭室内定位模式
|
void |
unRegisterLocationListener(BDAbstractLocationListener listener)
取消之前注册的 BDAbstractLocationListener 定位监听函数
|
void |
unRegisterLocationListener(BDLocationListener listener)
已过时。
请使用unRegisterLocationListener(BDAbstractLocationListener listener)
|
boolean |
updateLocation(android.location.Location gpslocation)
NA
|
public static final int CONNECT_HOT_SPOT_TRUE
public static final int CONNECT_HOT_SPOT_FALSE
public static final int CONNECT_HOT_SPOT_UNKNOWN
public static final int LOC_DIAGNOSTIC_TYPE_BETTER_OPEN_GPS
public static final int LOC_DIAGNOSTIC_TYPE_BETTER_OPEN_WIFI
public static final int LOC_DIAGNOSTIC_TYPE_NEED_CHECK_NET
public static final int LOC_DIAGNOSTIC_TYPE_NEED_CHECK_LOC_PERMISSION
public static final int LOC_DIAGNOSTIC_TYPE_NEED_OPEN_PHONE_LOC_SWITCH
public static final int LOC_DIAGNOSTIC_TYPE_NEED_INSERT_SIMCARD_OR_OPEN_WIFI
public static final int LOC_DIAGNOSTIC_TYPE_NEED_CLOSE_FLYMODE
public static final int LOC_DIAGNOSTIC_TYPE_SERVER_FAIL
public static final int LOC_DIAGNOSTIC_TYPE_FAIL_UNKNOWN
public LocationClient(android.content.Context context)
context
- 需要全局有效的context,建议通过getApplicationContext传入public LocationClient(android.content.Context context, LocationClientOption locOption)
context
- 需要全局有效的context,建议通过getApplicationContext传入locOption
- client相关的参数设定public LocationClientOption getLocOption()
public void setLocOption(LocationClientOption locOption)
locOption
- client相关的参数设定public boolean updateLocation(android.location.Location gpslocation)
public void requestNotifyLocation()
public int requestOfflineLocation()
public int requestLocation()
public boolean isStarted()
public BDLocation getLastKnownLocation()
public java.lang.String getVersion()
public void restart()
public void enableLocInForeground(int id, android.app.Notification notification)
id
- 为通知栏notifation设置唯一id,必须大于0notification
- 开发者自定义通知public void disableLocInForeground(boolean removeNotification)
removeNotification
- 是否移除通知栏通知public void enableAssistantLocation(android.webkit.WebView webView)
webView
- WebView对象public void disableAssistantLocation()
public void start()
public void stop()
public void registerNotify(BDNotifyListener mNotify)
mNotify
- 参考位置提醒类public void removeNotifyEvent(BDNotifyListener mNotify)
mNotify
- 参考位置提醒类public void registerNotifyLocationListener(BDLocationListener listener)
public void registerLocationListener(BDLocationListener listener)
listener
- 注册位置回调接口public void unRegisterLocationListener(BDLocationListener listener)
listener
- 取消位置回调接口public void registerLocationListener(BDAbstractLocationListener listener)
listener
- 注册位置回调接口public void unRegisterLocationListener(BDAbstractLocationListener listener)
listener
- 取消位置回调接口public boolean startIndoorMode()
public boolean stopIndoorMode()
public boolean requestHotSpotState()
public boolean startVdr(java.util.ArrayList<java.lang.String> naviPoints)
naviPoints
- public java.lang.String getAccessKey()
public static BDLocation getBDLocationInCoorType(BDLocation src, java.lang.String transferType)
src
- 原始BDLocationtransferType
- BDLocation.BDLOCATION_GCJ02_TO_BD09/BDLOCATION_GCJ02_TO_BD09LL/BDLOCATION_BD09_TO_GCJ02/
BDLOCATION_BD09LL_TO_GCJ02/BDLOCATION_WGS84_TO_GCJ02public void onReceiveLocation(BDLocation location)
onReceiveLocation
在接口中 com.baidu.location.common.FirstLocRequest.FirstLocationListener
public void onReceiveLightLocString(java.lang.String locStr)
onReceiveLightLocString
在接口中 com.baidu.location.common.FirstLocRequest.FirstLocationListener