public class AMapNavi
extends java.lang.Object
限定符和类型 | 方法和说明 |
---|---|
void |
addAimlessModeListener(AimlessModeListener listener)
注册巡航模式信息回调监听
注意:该接口仅驾车模式有效
|
void |
addAMapNaviListener(AMapNaviListener naviListener)
添加导航事件回调监听。
|
void |
addParallelRoadListener(ParallelRoadListener listener)
添加平行路切换监听,包括主辅路切换和高架上下切换
注意:该接口仅驾车模式有效
|
void |
addTTSPlayListener(TTSPlayListener listener)
添加内置语音播报监听
|
boolean |
calculateDriveRoute(java.util.List<NaviLatLng> to,
java.util.List<NaviLatLng> wayPoints,
int strategy)
计算驾车路径(不带起点,起点默认为当前位置)。
|
boolean |
calculateDriveRoute(java.util.List<NaviLatLng> from,
java.util.List<NaviLatLng> to,
java.util.List<NaviLatLng> wayPoints,
int strategy)
计算驾车路径(包含起点)。
|
boolean |
calculateDriveRoute(NaviPoi fromPoi,
NaviPoi toPoi,
java.util.List<NaviPoi> wayPoints,
int strategy)
驾车POI算路
该方法可以避免到达点问题导致的绕路,地铁等多出口类POI,也会导航到多个出口。
|
boolean |
calculateDriveRoute(java.lang.String toPoiId,
java.util.List<java.lang.String> wayPointIds,
int strategy)
计算驾车路径(不带起点,起点默认为当前位置)。
|
boolean |
calculateDriveRoute(java.lang.String fromPoiId,
java.lang.String toPoiId,
java.util.List<java.lang.String> wayPoints,
int strategy)
计算驾车路径(包含起点)。
|
boolean |
calculateEleBikeRoute(NaviLatLng to)
骑行(电动车)经纬度算路 (不带起点,默认为当前位置)。
|
boolean |
calculateEleBikeRoute(NaviLatLng from,
NaviLatLng to)
骑行(电动车)经纬度算路
|
boolean |
calculateEleBikeRoute(NaviPoi fromPoi,
NaviPoi toPoi,
TravelStrategy strategy)
骑行(电动车)POI算路
|
boolean |
calculateRideRoute(NaviLatLng to)
骑行(自行车)经纬度算路 (不带起点,默认为当前位置)。
|
boolean |
calculateRideRoute(NaviLatLng from,
NaviLatLng to)
骑行(自行车)经纬度算路 (包含起点)。
|
boolean |
calculateRideRoute(NaviPoi fromPoi,
java.util.List<NaviPoi> wayPoints,
NaviPoi toPoi,
TravelStrategy strategy)
骑行(自行车)POI算路 特别注意:当前接口为收费接口,您如果申请试用或者正式应用都请通过工单系统提交商务合作类工单进行沟通 https://lbs.amap.com/
|
boolean |
calculateRideRoute(NaviPoi fromPoi,
NaviPoi toPoi,
TravelStrategy strategy)
骑行(自行车)POI算路
|
boolean |
calculateWalkRoute(NaviLatLng to)
计算步行路径(不带起点,默认为当前位置)。
|
boolean |
calculateWalkRoute(NaviLatLng from,
NaviLatLng to)
计算步行路径(包含起点)。
|
boolean |
calculateWalkRoute(NaviPoi fromPoi,
java.util.List<NaviPoi> wayPoints,
NaviPoi toPoi,
TravelStrategy strategy)
步行POI算路 特别注意:当前接口为收费接口,您如果申请试用或者正式应用都请通过工单系统提交商务合作类工单进行沟通 https://lbs.amap.com/。
|
boolean |
calculateWalkRoute(NaviPoi fromPoi,
NaviPoi toPoi,
TravelStrategy strategy)
步行POI算路
|
static void |
destroy()
释放导航对象资源
退出时调用此接口释放导航资源,在调用此接口后不能再调用AMapNavi类里的其它接口。
|
int |
getControlMusicVolumeMode()
获取导航语音播报混合音状态
|
static java.lang.String |
getDeviceId(Context context)
获取设备唯一ID,使用导航SDK的时候建议使用这个作为设备唯一ID
|
int |
getEngineType()
获得导航引擎类型
|
static AMapNavi |
getInstance(Context context)
创建一个AMapNavi导航对象。
|
boolean |
getIsNaviTravelView() |
boolean |
getIsUseExtraGPSData()
获取是否使用外部定位数据
|
boolean |
getIsUseInnerVoice()
获取是否使用内部语音播报
|
boolean |
getListenToVoiceDuringCall()
获取当前通话过程中是否进行导航播报(只在使用内置语音时生效)
|
java.util.List<AMapNaviGuide> |
getNaviGuideList()
已过时。
|
AMapNaviPath |
getNaviPath()
获取当前规划的路线方案(路线结果),驾车、骑行与步行共用这一个对象
|
java.util.HashMap<java.lang.Integer,AMapNaviPath> |
getNaviPaths()
获取计算的多条路径
|
NaviSetting |
getNaviSetting()
获取导航配置类
|
int |
getNaviType()
获取导航位置变化驱动类型
|
boolean |
getRestrictareaInfo(AMapNaviPath path,
AMapNaviRestrictAreaInfoListener observer)
获取现行信息数据
|
boolean |
getServiceAreaDetailsEnable()
是否开启服务区详情开关
|
java.util.List<AMapTrafficStatus> |
getTrafficStatuses(int startPos,
int distance)
已过时。
|
static java.lang.String |
getVersion()
获取版本号
|
boolean |
independentCalculateRoute(NaviPoi fromPoi,
NaviPoi toPoi,
java.util.List<NaviPoi> wayPoints,
int strategy,
int transportType,
AMapNaviIndependentRouteListener observer)
POI独立算路 SDK9.4.0版本开始支持骑步行途径点算路,骑步行添加途径点算路为付费接口。
|
boolean |
isGpsReady()
获取手机卫星定位是否准备就绪
|
static boolean |
isTtsPlaying()
当前SDK内置语音的是否正在播报
注意:正在播报的时候请不要使用外部播放器播报语音,会导致与导航内置的播报冲突。
|
void |
pauseNavi()
暂停导航,仅支持模拟导航。
|
boolean |
playTTS(java.lang.String tts,
boolean forcePlay)
播放自定义文字,注意如果当前正在播放导航语音,可能导致播放失败,只在内置语音下生效
|
boolean |
readNaviInfo()
触发一次导航播报提示。
|
boolean |
readTrafficInfo(int frontDistance)
触发一次前方路况播报。
|
boolean |
reCalculateRoute(int strategy)
导航过程中重新规划路线(起点为当前位置,途经点、终点位置不变)
|
void |
removeAimlessModeListener(AimlessModeListener listener)
移除巡航模式信息回调监听
注意:该接口仅驾车模式有效
|
void |
removeAMapNaviListener(AMapNaviListener naviListener)
移除导航对象的监听。
|
void |
removeParallelRoadListener(ParallelRoadListener listener)
移除平行路切换监听,包括主辅路切换和高架上下切换
注意:该接口仅驾车模式有效
|
void |
removeTTSPlayListener(TTSPlayListener listener)
移除内置语音播报监听
|
void |
resumeNavi()
继续导航,仅支持模拟导航。
|
boolean |
selectRouteId(int id)
导航前选主路线
注意:该接口仅驾车模式有效
|
void |
setAMapNaviOnlineCarHailingType(AMapNaviOnlineCarHailingType type)
设置网约车导航模式,包括非网约车模式,网约车接驾模式、网约车送驾模式,默认为非网约车模式
注意:该接口仅驾车模式有效
|
static void |
setApiKey(Context context,
java.lang.String apiKey)
手动设置key,这是个静态方法,需要在一切导航接口前调用,建议在applicaiton中调用
|
boolean |
setBroadcastMode(int mode)
设置语音播报模式为"专家模式"还是"新手模式"【驾车有效】,导航中设置需要下次算路才生效,如偏航或刷新重算.
|
void |
setCameraInfoUpdateEnabled(boolean enable)
已过时。
已废弃,新引擎机制不再支持单播报模块控制
|
void |
setCarInfo(AMapCarInfo carInfo)
设置车辆信息(包括车型,车牌,车高,车重等),路径规划时会躲避车辆限行区域和路线。
|
void |
setConnectionTimeout(int connectionTimeOut)
设置建立连接超时时间,单位毫秒级,最低3000,默认10000.
|
void |
setControlMusicVolumeMode(int controlMusicVolumeMode)
设置导航播报时压低音乐、暂停音乐,只有在使用内置语音时生效(Android8.0以下系统不支持暂停音乐,设置暂停音乐无效)
|
void |
setEmulatorNaviSpeed(int speed)
设置模拟导航的速度。
|
void |
setExtraGPSData(int type,
Location location)
此方法用于设置外部定位数据,并使用外部定位数据进行导航
使用此方法前需要先调用
AMapNavi.setIsUseExtraGPSData(boolean) 将开关打开. |
void |
setGpsWeakDetecedInterval(long delayTime)
已过时。
此接口已失效
|
void |
setInnerOptRecordEnable(java.lang.String key)
【二环专用】设置是否启用OPT日志记录
* @param key
|
void |
setIsNaviTravelView(boolean isTravel)
设置是否为骑步行视图
|
void |
setIsOpenTrafficLight(java.lang.String key)
设置是否显示红绿灯倒计时
* @param key
|
void |
setIsUseExtraGPSData(boolean isUseExtraData)
设置是否使用外部定位数据.
|
void |
setListenToVoiceDuringCall(boolean isListenToVoiceDuringCall)
设置在通话过程中是否进行导航播报,只有在使用内置语音时生效
|
void |
setMultipleRouteNaviMode(boolean multipleRouteNaviMode)
设置多路线导航模式(导航中拥有若干条备选路线供用户选择), 或单路线导航模式(默认模式).
|
void |
setNaviNetworkProxy(AMapNaviNetWorkProxy proxy)
设置导航外部网络代理类
|
static void |
setNetWorkingProtocol(NetWorkingProtocol protocol)
设置网络请求协议
注意,该接口仅控制导航业务相关的网络请求,不影响定位、地图sdk内部的请求。
|
void |
setServiceAreaDetailsEnable(boolean enable)
设置服务区详情是否打开,打开后组件会显示服务区UI,API会返回服务区类型信息
|
void |
setSoTimeout(int soTimeOut)
设置服务器返回超时时间,单位毫秒级,最低3000,默认10000.
|
void |
setTrafficInfoUpdateEnabled(boolean enable)
设置是否打开移动交通台功能
默认是开启的,打开此功能后将有整体路况概览与前方路况播报功能,打开此功能后TBT会基本1分钟请求
一次前方路况(此时间间隔不是固定的)。
|
void |
setTrafficStatusUpdateEnabled(boolean enable)
设置交通状态是否更新
需要动态交通信息相关功能时需要调用此接口打开交通信息功能,默认是开启的,
打开后会每1分钟请求一次新的交通信息来更新交通信息。
|
void |
setTravelInfo(AMapTravelInfo travelInfo)
设置骑步行信息(骑行、步行)。
|
void |
setTruckMultipleRouteNaviMode(boolean truckMultipleRouteNaviMode)
设置货车多路线导航模式(导航中拥有若干条备选路线供用户选择), 或单路线导航模式(默认模式)
注意:此方法仅限于在开始导航前调用有效,步行与骑行导航无效,以下情况不会出现多备选路线:
模拟导航、路线存在途经点、路线长度超过80KM。
|
static void |
setTtsPlaying(boolean playing)
设置外部播放器是否正在播报
如果正在播报语音,请设置为true,如果没有在播报语音,请设置false;如一直设置true,SDK内部会认为外界一直在播报, 那么 AMapNaviListener.onGetNavigationText(int, String) ,就会一直不触发,导致无文字吐出;
如一直设置false,文字吐出的频率可能会过快,会出现语句打断情况,所以请根据实际情况设置。 |
void |
setUseInnerVoice(boolean isUseInnerVoice)
已过时。
|
void |
setUseInnerVoice(boolean isUseInnerVoice,
boolean isCallBackText)
设置使用内部语音播报
|
void |
startAimlessMode(int aimlessMode)
设置在巡航模式(无路线规划)的状态下,智能播报的类型
用户一旦设置,在巡航模式(无路线规划)的状态下,会获得以下回调: AimlessModeListener.onUpdateTrafficFacility(AMapNaviTrafficFacilityInfo[])
可以用于获得道路设施(包括转弯提示等)
AimlessModeListener.onUpdateAimlessModeElecCameraInfo(AMapNaviTrafficFacilityInfo[])
可以用于获得电子眼信息更新
AimlessModeListener.updateAimlessModeCongestionInfo(AimLessModeCongestionInfo)
可以用于获得周边道路拥堵信息
AimlessModeListener.updateAimlessModeStatistics(AimLessModeStat)
可以用于巡航模式的统计信息,巡航开启时间,巡航移动距离
AMapNaviListener.onGetNavigationText(int, String)
可以用于获得巡航语音播报文字
注意:该接口仅驾车模式有效 |
boolean |
startGPS()
启动手机卫星定位。
|
boolean |
startGPS(long interval)
启动手机卫星定位, 带定位时间间隔参数。
|
boolean |
startGPS(long time,
int dis)
已过时。
|
boolean |
startNavi(int naviType)
开始导航。
|
boolean |
startNaviWithPath(int naviType,
AMapNaviPathGroup pathGroup)
使用指定路线开始导航
|
void |
startSpeak()
开始内置语音播报,只有在使用内置语音的情况下才有效
|
void |
stopAimlessMode()
停止巡航模式
注意:该接口仅驾车模式有效
|
boolean |
stopGPS()
停止手机卫星定位。
|
void |
stopNavi()
停止导航,包含实时导航和模拟导航。
|
void |
stopSpeak()
停止内置语音播报,只有在使用内置语音的情况下有效
注意:7.1.0版本以后,调用该接口,会停止播放导航语音,但是仍然可以播放自定义语音
|
int |
strategyConvert(boolean avoidCongestion,
boolean avoidHighway,
boolean avoidCost,
boolean prioritiseHighway,
boolean multipleRoute)
进行算路策略转换,将传入的特定规则转换成PathPlanningStrategy的枚举值。
|
void |
switchParallelRoad()
已过时。
|
void |
switchParallelRoad(int parallelType)
切换平行路,目前支持主辅路和高架上下切换。
|
public static AMapNavi getInstance(Context context) throws com.amap.api.maps.AMapException
context
- 对应的Contextcom.amap.api.maps.AMapException
public static java.lang.String getVersion()
public static void setApiKey(Context context, java.lang.String apiKey)
context
- 对应的ContextapiKey
- 用户在高德官网申请的KEYpublic static void setTtsPlaying(boolean playing)
AMapNaviListener.onGetNavigationText(int, String)
,就会一直不触发,导致无文字吐出;
如一直设置false,文字吐出的频率可能会过快,会出现语句打断情况,所以请根据实际情况设置。
注意:7.1.0版本以后,若该接口设置为true,使用playTTS播放的自定义语音也不会播报。
playing
- true-外部播放器正在播报中,false-外部播放器空闲中public static boolean isTtsPlaying()
注意:正在播报的时候请不要使用外部播放器播报语音,会导致与导航内置的播报冲突。
public int strategyConvert(boolean avoidCongestion, boolean avoidHighway, boolean avoidCost, boolean prioritiseHighway, boolean multipleRoute)
avoidCongestion
- 是否躲避拥堵avoidHighway
- 是否不走高速avoidCost
- 是否避免收费prioritiseHighway
- 是否高速优先multipleRoute
- 单路径or多路径,6.3版本以后该参数已经无效,统一使用多路线算路。public static void destroy()
退出时调用此接口释放导航资源,在调用此接口后不能再调用AMapNavi类里的其它接口。
public boolean startNavi(int naviType)
naviType
- 导航类型,1:实时导航 2:模拟导航。public boolean startNaviWithPath(int naviType, AMapNaviPathGroup pathGroup)
naviType
- 导航类型 NaviType
pathGroup
- 路线组public void pauseNavi()
public void stopNavi()
public void resumeNavi()
public boolean readNaviInfo()
public boolean readTrafficInfo(int frontDistance)
frontDistance
- 要播报的前方路径距离,0为SDK默认距离,-1为整条路径,一般情况下前方路况播报设置为0。public boolean calculateDriveRoute(java.util.List<NaviLatLng> from, java.util.List<NaviLatLng> to, java.util.List<NaviLatLng> wayPoints, int strategy)
from
- 指定的导航起点。支持多个起点,起点列表的尾点为实际导航起点,其他坐标点为辅助信息,带有方向性,可有效避免算路到马路的另一侧;to
- 指定的导航终点。支持多个终点,终点列表的尾点为实际导航终点,其他坐标点为辅助信息,带有方向性,可有效避免算路到马路的另一侧。wayPoints
- 途经点,同时支持最多16个途经点的路径规划;strategy
- 规划策略,详情参见 PathPlanningStrategy
。普通客车、货车请使用"DRIVING_"开头的策略,驾车推荐使用默认策略 PathPlanningStrategy.DRIVING_MULTIPLE_ROUTES_DEFAULT
,
摩托车请使用"MOTOR_"开头的策略。public boolean calculateDriveRoute(java.util.List<NaviLatLng> to, java.util.List<NaviLatLng> wayPoints, int strategy)
to
- 指定的导航终点。支持多个终点,终点列表的尾点为实际导航终点,其他坐标点为辅助信息,带有方向性,可有效避免算路到马路的另一侧。wayPoints
- 途经点,同时支持最多16个途经点的路径规划。strategy
- 规划策略,详情参见 PathPlanningStrategy
。普通客车、货车请使用"DRIVING_"开头的策略,驾车推荐使用默认策略 PathPlanningStrategy.DRIVING_MULTIPLE_ROUTES_DEFAULT
,
摩托车请使用"MOTOR_"开头的策略。public boolean calculateDriveRoute(java.lang.String fromPoiId, java.lang.String toPoiId, java.util.List<java.lang.String> wayPoints, int strategy)
fromPoiId
- 指定的导航起点Poi的Id;toPoiId
- 指定的导航终点Poi的Id;wayPoints
- 途经点Poi,同时支持最多16个途经点的路径规划;strategy
- 规划策略,详情参见 PathPlanningStrategy
。普通客车、货车请使用"DRIVING_"开头的策略,驾车推荐使用默认策略 PathPlanningStrategy.DRIVING_MULTIPLE_ROUTES_DEFAULT
,
摩托车请使用"MOTOR_"开头的策略。AMapNaviListener
算路成功回调。public boolean calculateDriveRoute(java.lang.String toPoiId, java.util.List<java.lang.String> wayPointIds, int strategy)
AMapNavi.startGPS()
开启定位,获取算路的起点。toPoiId
- 指定的导航终点Poi的Id;wayPointIds
- 途经点Poi id,同时支持最多16个途经点的路径规划;strategy
- 规划策略,详情参见 PathPlanningStrategy
。普通客车、货车请使用"DRIVING_"开头的策略,驾车推荐使用默认策略 PathPlanningStrategy.DRIVING_MULTIPLE_ROUTES_DEFAULT
,
摩托车请使用"MOTOR_"开头的策略。AMapNaviListener
算路成功回调。public boolean calculateDriveRoute(NaviPoi fromPoi, NaviPoi toPoi, java.util.List<NaviPoi> wayPoints, int strategy)
该方法可以避免到达点问题导致的绕路,地铁等多出口类POI,也会导航到多个出口。 注意:NaviPoi对象中,优先使用Poi id进行算路,失败则使用经纬度进行算路。
fromPoi
- 起点poi NaviPoi
,若传入无效起点则使用当前位置toPoi
- 终点poi NaviPoi
wayPoints
- 途经点poi NaviPoi
strategy
- 规划策略,详情参见 PathPlanningStrategy
。普通客车、货车请使用"DRIVING_"开头的策略,驾车推荐使用默认策略 PathPlanningStrategy.DRIVING_MULTIPLE_ROUTES_DEFAULT
,
摩托车请使用"MOTOR_"开头的策略。public void setCarInfo(AMapCarInfo carInfo)
AMapCarInfo.setRestriction(boolean)
}用于控制是否规避限行路段。AMapCarInfo.setVehicleLoadSwitch(boolean)
用于控制算路时是否需要考虑车重。carInfo
- 车辆信息类public void setTravelInfo(AMapTravelInfo travelInfo)
travelInfo
- 车辆信息类public boolean reCalculateRoute(int strategy)
strategy
- 指定的驾车策略常量值,参见PathPlanningStrategy
;
骑步行忽略此参数,传0即可。public java.util.List<AMapTrafficStatus> getTrafficStatuses(int startPos, int distance)
AMapNaviPath.getTrafficStatuses()
startPos
- 参数已无效,传入0即可distance
- 参数已无效,传入0即可public AMapNaviPath getNaviPath()
public java.util.HashMap<java.lang.Integer,AMapNaviPath> getNaviPaths()
AMapNaviPath
对象public java.util.List<AMapNaviGuide> getNaviGuideList()
AMapNaviPath.getNaviGuideList()
public NaviSetting getNaviSetting()
public void setEmulatorNaviSpeed(int speed)
speed
- 模拟导航的速度,单位:km/h。public void addAMapNaviListener(AMapNaviListener naviListener)
naviListener
- 导航回调监听public void removeAMapNaviListener(AMapNaviListener naviListener)
naviListener
- 监听listener。public boolean startGPS()
用户可以手动启动卫星定位功能,如果没有启动,在导航启动时(startNavi)会自动启动。默认定位时间间隔为1秒,变化距离为0。
public boolean startGPS(long time, int dis)
AMapNavi.startGPS(long)
用户可以手动启动手机卫星定位,如果没有启动,在导航启动时(startNavi)会自动启动。
time
- 位置更新的时间间隔, 单位:毫秒。dis
- 位置更新的距离间隔, 单位:米。此参数已无效。public boolean startGPS(long interval)
用户可以手动启动手机卫星定位,如果没有启动,在导航启动时(startNavi)内部会自动启动。
interval
- 导航内部定位的时间间隔, 单位:毫秒。注意,该参数仅影响导航内部定位塞点的频率,与导航位置回调 AMapNaviListener.onLocationChange(AMapNaviLocation)
的频率无关。public boolean stopGPS()
public boolean calculateWalkRoute(NaviLatLng to)
to
- 导航终点。调用此接口前需要调用AMapNavi.startGPS()
开启定位,获取算路的起点。public boolean calculateWalkRoute(NaviLatLng from, NaviLatLng to)
from
- 导航起点。to
- 导航终点。public boolean calculateWalkRoute(NaviPoi fromPoi, NaviPoi toPoi, TravelStrategy strategy)
fromPoi
- 起点POItoPoi
- 终点POIstrategy
- 算路策略 TravelStrategy
public boolean calculateWalkRoute(NaviPoi fromPoi, java.util.List<NaviPoi> wayPoints, NaviPoi toPoi, TravelStrategy strategy)
fromPoi
- 起点POI,如果以“我的位置”作为起点,请传null。 如果fromPoi不为null,那么POIID合法,优先使用ID参与算路,否则使用坐标点。wayPoints
- 途径点POI,最多支持16个途经点,超过16个会取前16个。如果POIID合法,优先使用ID参与算路。否则使用坐标点。注意:POIID和坐标点不能同时为空。toPoi
- 终点POI,如果POIID合法,优先使用ID参与算路,否则使用坐标点。注意:POIID和坐标点不能同时为空。strategy
- 路径的计算策略public boolean calculateRideRoute(NaviLatLng to)
to
- 骑行终点。调用此接口前需要调用AMapNavi.startGPS()
开启定位,获取算路的起点。public boolean calculateRideRoute(NaviLatLng from, NaviLatLng to)
from
- 骑行起点。to
- 导航终点。public boolean calculateRideRoute(NaviPoi fromPoi, NaviPoi toPoi, TravelStrategy strategy)
fromPoi
- 起点POItoPoi
- 终点POIstrategy
- 算路策略 TravelStrategy
public boolean calculateRideRoute(NaviPoi fromPoi, java.util.List<NaviPoi> wayPoints, NaviPoi toPoi, TravelStrategy strategy)
fromPoi
- 起点POI,如果以“我的位置”作为起点,请传null. 如果fromPoi不为null,那么POIID合法,优先使用ID参与算路,否则使用坐标点wayPoints
- 途径点POI,最多支持16个途经点,超过16个会取前16个。如果POIID合法。优先使用ID参与算路。否则使用坐标点。注意:POIID和坐标点不能同时为空toPoi
- 终点POI,如果POIID合法,优先使用ID参与算路,否则使用坐标点。注意:POIID和坐标点不能同时为空strategy
- 路径的计算策略public boolean calculateEleBikeRoute(NaviLatLng to)
to
- 导航终点。public boolean calculateEleBikeRoute(NaviLatLng from, NaviLatLng to)
from
- 骑行起点。起点传null,或经纬度为 0 时,使用当前位置作为起点。to
- 导航终点。public boolean calculateEleBikeRoute(NaviPoi fromPoi, NaviPoi toPoi, TravelStrategy strategy)
fromPoi
- 起点POItoPoi
- 终点POIstrategy
- 算路策略 TravelStrategy
public int getEngineType()
EngineType
public int getNaviType()
NaviType
public void startAimlessMode(int aimlessMode)
AimlessModeListener.onUpdateTrafficFacility(AMapNaviTrafficFacilityInfo[])
可以用于获得道路设施(包括转弯提示等)
AimlessModeListener.onUpdateAimlessModeElecCameraInfo(AMapNaviTrafficFacilityInfo[])
可以用于获得电子眼信息更新
AimlessModeListener.updateAimlessModeCongestionInfo(AimLessModeCongestionInfo)
可以用于获得周边道路拥堵信息
AimlessModeListener.updateAimlessModeStatistics(AimLessModeStat)
可以用于巡航模式的统计信息,巡航开启时间,巡航移动距离
AMapNaviListener.onGetNavigationText(int, String)
可以用于获得巡航语音播报文字
aimlessMode
- 巡航播报模式,详情见AimLessMode
public void stopAimlessMode()
public void setConnectionTimeout(int connectionTimeOut)
connectionTimeOut
- 超时时间public void setSoTimeout(int soTimeOut)
soTimeOut
- 超时时间public boolean selectRouteId(int id)
id
- 路线的routeIdpublic boolean isGpsReady()
public boolean setBroadcastMode(int mode)
mode
- 参见BroadcastMode
public void switchParallelRoad()
AMapNavi.switchParallelRoad(int)
注意:该接口仅驾车模式有效public void switchParallelRoad(int parallelType)
此函数只有在实时导航开始后才能使用,用来将路径的起点切换到当前导航路径平行的其它路径上
例如: 当前路径在主路上,调用此接口将把路径切换到辅路上,如果当前道路周围没有平行道路,则路径不变,切换成功后将自动开始导航。 注意:该接口仅驾车模式有效parallelType
- 1-主辅路切换,2-高架上下切换public boolean getIsUseExtraGPSData()
public void setIsUseExtraGPSData(boolean isUseExtraData)
AMapNavi.setExtraGPSData(int, Location)
方法才会生效。isUseExtraData
- 是否使用外部定位数据public void setExtraGPSData(int type, Location location)
AMapNavi.setIsUseExtraGPSData(boolean)
将开关打开.type
- 坐标类型。如果使用系统默认返回的定位坐标,type值为1。使用高德坐标,type值传2location
- 外部定位数据。Longitude、Latitude、Accuracy、Speed、Bearing、Time 缺一不可public void setUseInnerVoice(boolean isUseInnerVoice)
AMapNaviListener.onGetNavigationText(int, java.lang.String)
方法将不再回调isUseInnerVoice
- 是否使用内部语音播报public void setUseInnerVoice(boolean isUseInnerVoice, boolean isCallBackText)
isUseInnerVoice
- 是否使用内部语音播报, 默认为falseisCallBackText
- isUseInnerVoice设置为true以后,AMapNaviListener.onGetNavigationText(int, java.lang.String)
接口会继续返回文字,默认为falsepublic boolean getIsUseInnerVoice()
public void setMultipleRouteNaviMode(boolean multipleRouteNaviMode)
multipleRouteNaviMode
- true:多路线导航模式, false:单路线导航模式(默认)public void setTruckMultipleRouteNaviMode(boolean truckMultipleRouteNaviMode)
truckMultipleRouteNaviMode
- true:多路线导航模式, false:单路线导航模式(默认)public void addParallelRoadListener(ParallelRoadListener listener)
listener
- public void removeParallelRoadListener(ParallelRoadListener listener)
listener
- public void addAimlessModeListener(AimlessModeListener listener)
listener
- public void removeAimlessModeListener(AimlessModeListener listener)
listener
- public void addTTSPlayListener(TTSPlayListener listener)
listener
- public void removeTTSPlayListener(TTSPlayListener listener)
listener
- public void setGpsWeakDetecedInterval(long delayTime)
delayTime
- 时间间隔,单位为毫秒public void stopSpeak()
public void startSpeak()
public void setAMapNaviOnlineCarHailingType(AMapNaviOnlineCarHailingType type)
type
- AMapNaviOnlineCarHailingType
public static void setNetWorkingProtocol(NetWorkingProtocol protocol)
注意,该接口仅控制导航业务相关的网络请求,不影响定位、地图sdk内部的请求。
protocol
- 请求协议枚举,详情见 NetWorkingProtocol
public boolean playTTS(java.lang.String tts, boolean forcePlay)
tts
- 要播放的文字forcePlay
- 是否强制进行播报
true 如果当前有其他导航语音,会等导航语音播放完毕后播放该文字,但是可能导致导航丢失掉关键引导信息
false 如果当前有其他导航语音,则不播报public static java.lang.String getDeviceId(Context context)
context
- public boolean independentCalculateRoute(NaviPoi fromPoi, NaviPoi toPoi, java.util.List<NaviPoi> wayPoints, int strategy, int transportType, AMapNaviIndependentRouteListener observer)
fromPoi
- 起点信息toPoi
- 终点信息wayPoints
- 途经点信息,最多支持16个途经点,超过16个会取前16个。如果POIID合法,优先使用ID参与算路,否则使用坐标点。注意:POIID和坐标点不能同时为空strategy
- 算路策略: 驾车参考 PathPlanningStrategy
, 骑步行参考 TravelStrategy
transportType
- 交通类型 1-驾车 2-骑行 3-步行observer
- 算路结果监听器public boolean getRestrictareaInfo(AMapNaviPath path, AMapNaviRestrictAreaInfoListener observer)
path
- 路线信息observer
- 路线现行信息结果监听器public void setTrafficStatusUpdateEnabled(boolean enable)
enable
- true-更新路况,false-不更新路况public void setTrafficInfoUpdateEnabled(boolean enable)
enable
- true-播报前方路况,false-不播报前方路况public void setCameraInfoUpdateEnabled(boolean enable)
enable
- true-播报前方电子眼,false-不播报前方电子眼public void setServiceAreaDetailsEnable(boolean enable)
enable
- public boolean getServiceAreaDetailsEnable()
public void setListenToVoiceDuringCall(boolean isListenToVoiceDuringCall)
isListenToVoiceDuringCall
- public boolean getListenToVoiceDuringCall()
public void setControlMusicVolumeMode(int controlMusicVolumeMode)
controlMusicVolumeMode
- 0:压低音乐; 1:暂停音乐 AMapNaviControlMusicVolumeMode
public int getControlMusicVolumeMode()
AMapNaviControlMusicVolumeMode
public void setNaviNetworkProxy(AMapNaviNetWorkProxy proxy)
public void setIsNaviTravelView(boolean isTravel)
public boolean getIsNaviTravelView()
public void setInnerOptRecordEnable(java.lang.String key)
public void setIsOpenTrafficLight(java.lang.String key)