fix: 增加单个数据导航功能
This commit is contained in:
parent
c503bff070
commit
7f8c96b238
@ -40,6 +40,14 @@ android {
|
|||||||
targetCompatibility JavaVersion.VERSION_1_8
|
targetCompatibility JavaVersion.VERSION_1_8
|
||||||
}
|
}
|
||||||
ndkVersion '21.3.6528147'
|
ndkVersion '21.3.6528147'
|
||||||
|
packagingOptions {
|
||||||
|
pickFirst 'lib/x86/libc++_shared.so'
|
||||||
|
pickFirst 'lib/x86_64/libjsc.so'
|
||||||
|
pickFirst 'lib/arm64-v8a/libjsc.so'
|
||||||
|
pickFirst 'lib/arm64-v8a/libc++_shared.so'
|
||||||
|
pickFirst 'lib/x86_64/libc++_shared.so'
|
||||||
|
pickFirst 'lib/armeabi-v7a/libc++_shared.so'
|
||||||
|
}
|
||||||
}
|
}
|
||||||
//efs {
|
//efs {
|
||||||
// //是否对启动过程进程插桩的开关,如果使用自动集成监控则必须开启
|
// //是否对启动过程进程插桩的开关,如果使用自动集成监控则必须开启
|
||||||
@ -118,16 +126,16 @@ dependencies {
|
|||||||
|
|
||||||
//腾讯地图
|
//腾讯地图
|
||||||
// 地图库
|
// 地图库
|
||||||
implementation 'com.tencent.map:tencent-map-vector-sdk:4.4.2'
|
implementation 'com.tencent.map:tencent-map-vector-sdk:4.5.4'
|
||||||
// 地图组件库,包括小车平移、点聚合等组件功能,详见开发指南。
|
// 地图组件库,包括小车平移、点聚合等组件功能,详见开发指南。
|
||||||
implementation 'com.tencent.map:sdk-utilities:1.0.6'
|
implementation 'com.tencent.map:sdk-utilities:1.0.6'
|
||||||
// 导航库
|
// 导航库
|
||||||
implementation 'com.tencent.map:tencent-map-nav-sdk:5.3.8.3'
|
implementation "com.tencent.map:tencent-map-nav-sdk:5.3.8.1"
|
||||||
// 导航依赖库
|
// 导航依赖库
|
||||||
implementation 'com.tencent.map:tencent-map-nav-surport:1.1.0.1'
|
implementation 'com.tencent.map:tencent-map-nav-surport:1.0.2.9'
|
||||||
|
|
||||||
//腾讯地图 定位
|
// //腾讯地图 定位
|
||||||
implementation 'com.tencent.map.geolocation:TencentLocationSdk-openplatform:7.2.6'
|
// implementation 'com.tencent.map.geolocation:TencentLocationSdk-openplatform:7.2.6'
|
||||||
|
|
||||||
// 权限请求框架:https://github.com/getActivity/XXPermissions
|
// 权限请求框架:https://github.com/getActivity/XXPermissions
|
||||||
implementation 'com.github.getActivity:XXPermissions:11.6'
|
implementation 'com.github.getActivity:XXPermissions:11.6'
|
||||||
|
@ -18,6 +18,7 @@ import com.navinfo.outdoor.fragment.TreasureFragment;
|
|||||||
import com.navinfo.outdoor.http.HttpInterface;
|
import com.navinfo.outdoor.http.HttpInterface;
|
||||||
import com.navinfo.outdoor.room.PoiDatabase;
|
import com.navinfo.outdoor.room.PoiDatabase;
|
||||||
import com.navinfo.outdoor.util.BackHandlerHelper;
|
import com.navinfo.outdoor.util.BackHandlerHelper;
|
||||||
|
import com.navinfo.outdoor.util.NaviUtils;
|
||||||
import com.navinfo.outdoor.util.NoSlideViewPager;
|
import com.navinfo.outdoor.util.NoSlideViewPager;
|
||||||
|
|
||||||
import androidx.annotation.NonNull;
|
import androidx.annotation.NonNull;
|
||||||
|
@ -45,6 +45,7 @@ import com.navinfo.outdoor.util.TimestampUtil;
|
|||||||
import com.navinfo.outdoor.util.ToastUtils;
|
import com.navinfo.outdoor.util.ToastUtils;
|
||||||
import com.tencent.lbssearch.httpresponse.Poi;
|
import com.tencent.lbssearch.httpresponse.Poi;
|
||||||
import com.tencent.map.navi.car.TencentCarNaviManager;
|
import com.tencent.map.navi.car.TencentCarNaviManager;
|
||||||
|
import com.tencent.map.navi.data.NaviPoi;
|
||||||
import com.tencent.tencentmap.mapsdk.maps.model.LatLng;
|
import com.tencent.tencentmap.mapsdk.maps.model.LatLng;
|
||||||
import org.locationtech.jts.geom.Geometry;
|
import org.locationtech.jts.geom.Geometry;
|
||||||
|
|
||||||
@ -197,17 +198,42 @@ public class GatherGetFragment extends BaseFragment implements View.OnClickListe
|
|||||||
NaviUtils.getInstance().selectNaviType((AppCompatActivity) getActivity(), new NaviUtils.SelectNaviTypeListener() {
|
NaviUtils.getInstance().selectNaviType((AppCompatActivity) getActivity(), new NaviUtils.SelectNaviTypeListener() {
|
||||||
@Override
|
@Override
|
||||||
public void selectNaviType(Constant.NAV_TYPE nav_type) {
|
public void selectNaviType(Constant.NAV_TYPE nav_type) {
|
||||||
|
// 显示导航类型选择的对话框
|
||||||
|
Constant.currentNaviType = nav_type;
|
||||||
|
startNav();
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
} else {
|
} else {
|
||||||
// 已选择导航方式
|
// 已选择导航方式
|
||||||
|
startNav();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 开始路径规划
|
||||||
|
* */
|
||||||
|
private void startNav() {
|
||||||
|
if (Constant.currentLocation == null) {
|
||||||
|
ToastUtils.Message(getActivity(), "无法获取当前位置,请检查是否授权应用获取位置权限!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
if (poiEntity == null || poiEntity.getX() == null || poiEntity.getY() == null) {
|
||||||
|
ToastUtils.Message(getActivity(), "无法获取当前数据的位置,请重新打开此数据尝试!");
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
// 使用当前数据起点作为导航的终点,规划路径
|
||||||
|
NaviPoi startPoi = new NaviPoi(Constant.currentLocation.getLatitude(), Constant.currentLocation.getLongitude());
|
||||||
|
NaviPoi endPoi = new NaviPoi(Double.parseDouble(poiEntity.getY()), Double.parseDouble(poiEntity.getX()));
|
||||||
|
try {
|
||||||
|
NaviUtils.getInstance().searchRoute(Constant.currentNaviType, NaviUtils.getInstance().obitainnaviManager(getActivity(), Constant.currentNaviType), startPoi, endPoi);
|
||||||
|
} catch (Exception e) {
|
||||||
|
e.printStackTrace();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
*
|
||||||
* */
|
* */
|
||||||
|
@ -82,6 +82,7 @@ import com.navinfo.outdoor.util.Geohash;
|
|||||||
import com.navinfo.outdoor.util.GeometryTools;
|
import com.navinfo.outdoor.util.GeometryTools;
|
||||||
import com.navinfo.outdoor.util.MapManager;
|
import com.navinfo.outdoor.util.MapManager;
|
||||||
import com.navinfo.outdoor.util.MyTecentLocationSource;
|
import com.navinfo.outdoor.util.MyTecentLocationSource;
|
||||||
|
import com.navinfo.outdoor.util.NaviUtils;
|
||||||
import com.navinfo.outdoor.util.NetWorkUtils;
|
import com.navinfo.outdoor.util.NetWorkUtils;
|
||||||
import com.navinfo.outdoor.util.TencentMarkerUtils;
|
import com.navinfo.outdoor.util.TencentMarkerUtils;
|
||||||
import com.navinfo.outdoor.util.TimestampUtil;
|
import com.navinfo.outdoor.util.TimestampUtil;
|
||||||
@ -282,6 +283,8 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen
|
|||||||
initUM();
|
initUM();
|
||||||
//检查是否有没有填完的页面
|
//检查是否有没有填完的页面
|
||||||
initSharePre();
|
initSharePre();
|
||||||
|
// 初始化导航工具类
|
||||||
|
NaviUtils.getInstance().init(getActivity(), tencentMap, findViewById(R.id.fram_navi_view));
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@ -307,6 +310,7 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen
|
|||||||
imgAutoMatchRoad.setVisibility(View.VISIBLE);
|
imgAutoMatchRoad.setVisibility(View.VISIBLE);
|
||||||
}
|
}
|
||||||
imgAutoMatchRoad.setOnClickListener(new View.OnClickListener() {
|
imgAutoMatchRoad.setOnClickListener(new View.OnClickListener() {
|
||||||
|
@RequiresApi(api = Build.VERSION_CODES.N)
|
||||||
@Override
|
@Override
|
||||||
public void onClick(View v) {
|
public void onClick(View v) {
|
||||||
Intent autoMatchIntent = new Intent(getContext(), AutoTakePictureActivity.class);
|
Intent autoMatchIntent = new Intent(getContext(), AutoTakePictureActivity.class);
|
||||||
@ -1148,6 +1152,8 @@ public class TreasureFragment extends BaseFragment implements View.OnClickListen
|
|||||||
}
|
}
|
||||||
removableScreenMarker.clear();
|
removableScreenMarker.clear();
|
||||||
}
|
}
|
||||||
|
// 如果当前正在导航,自动停止
|
||||||
|
NaviUtils.getInstance().stopNavi();
|
||||||
}
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
|
@ -14,8 +14,10 @@ import com.kongzue.dialog.v3.CustomDialog;
|
|||||||
import com.navinfo.outdoor.R;
|
import com.navinfo.outdoor.R;
|
||||||
import com.navinfo.outdoor.api.Constant;
|
import com.navinfo.outdoor.api.Constant;
|
||||||
import com.tencent.map.navi.CalcRouteCallback;
|
import com.tencent.map.navi.CalcRouteCallback;
|
||||||
|
import com.tencent.map.navi.INaviView;
|
||||||
import com.tencent.map.navi.TencentNaviManager;
|
import com.tencent.map.navi.TencentNaviManager;
|
||||||
import com.tencent.map.navi.TencentRouteSearchCallback;
|
import com.tencent.map.navi.TencentRouteSearchCallback;
|
||||||
|
import com.tencent.map.navi.car.CarNaviView;
|
||||||
import com.tencent.map.navi.car.CarRouteSearchOptions;
|
import com.tencent.map.navi.car.CarRouteSearchOptions;
|
||||||
import com.tencent.map.navi.car.TencentCarNaviManager;
|
import com.tencent.map.navi.car.TencentCarNaviManager;
|
||||||
import com.tencent.map.navi.data.CalcRouteResult;
|
import com.tencent.map.navi.data.CalcRouteResult;
|
||||||
@ -23,9 +25,12 @@ import com.tencent.map.navi.data.NaviPoi;
|
|||||||
import com.tencent.map.navi.data.RouteColors;
|
import com.tencent.map.navi.data.RouteColors;
|
||||||
import com.tencent.map.navi.data.RouteData;
|
import com.tencent.map.navi.data.RouteData;
|
||||||
import com.tencent.map.navi.data.TrafficItem;
|
import com.tencent.map.navi.data.TrafficItem;
|
||||||
|
import com.tencent.map.navi.ride.RideNaviView;
|
||||||
import com.tencent.map.navi.ride.RideRouteSearchOptions;
|
import com.tencent.map.navi.ride.RideRouteSearchOptions;
|
||||||
import com.tencent.map.navi.ride.TencentRideNaviManager;
|
import com.tencent.map.navi.ride.TencentRideNaviManager;
|
||||||
|
import com.tencent.map.navi.ui.car.CarNaviInfoPanel;
|
||||||
import com.tencent.map.navi.walk.TencentWalkNaviManager;
|
import com.tencent.map.navi.walk.TencentWalkNaviManager;
|
||||||
|
import com.tencent.map.navi.walk.WalkNaviView;
|
||||||
import com.tencent.tencentmap.mapsdk.maps.CameraUpdateFactory;
|
import com.tencent.tencentmap.mapsdk.maps.CameraUpdateFactory;
|
||||||
import com.tencent.tencentmap.mapsdk.maps.TencentMap;
|
import com.tencent.tencentmap.mapsdk.maps.TencentMap;
|
||||||
import com.tencent.tencentmap.mapsdk.maps.model.BitmapDescriptorFactory;
|
import com.tencent.tencentmap.mapsdk.maps.model.BitmapDescriptorFactory;
|
||||||
@ -42,6 +47,11 @@ public class NaviUtils {
|
|||||||
private static NaviUtils instance;
|
private static NaviUtils instance;
|
||||||
private Context mContext;
|
private Context mContext;
|
||||||
private TencentMap tencentMap;
|
private TencentMap tencentMap;
|
||||||
|
private View framNaviView; // 各类型导航界面的父界面,可以通过该view获取驾车导航、骑行导航和步行导航的view
|
||||||
|
private CarNaviView carNaviView; // 驾车导航界面
|
||||||
|
private RideNaviView rideNaviView; // 骑行导航界面
|
||||||
|
private WalkNaviView walkNaviView; // 步行导航界面
|
||||||
|
private TencentNaviManager naviManager = null;
|
||||||
public static NaviUtils getInstance() {
|
public static NaviUtils getInstance() {
|
||||||
if (instance == null) {
|
if (instance == null) {
|
||||||
instance = new NaviUtils();
|
instance = new NaviUtils();
|
||||||
@ -49,9 +59,14 @@ public class NaviUtils {
|
|||||||
return instance;
|
return instance;
|
||||||
}
|
}
|
||||||
|
|
||||||
public void init(Context mContext, TencentMap tencentMap) {
|
// 在调用路径规划和导航前必须提前调用该方法,后续流程都需要用到参数中的内容
|
||||||
|
public void init(Context mContext, TencentMap tencentMap, View framNaviView) {
|
||||||
this.mContext = mContext;
|
this.mContext = mContext;
|
||||||
this.tencentMap = tencentMap;
|
this.tencentMap = tencentMap;
|
||||||
|
this.framNaviView = framNaviView;
|
||||||
|
this.carNaviView = framNaviView.findViewById(R.id.carnaviview);
|
||||||
|
this.rideNaviView = framNaviView.findViewById(R.id.ridenaviview);
|
||||||
|
this.walkNaviView = framNaviView.findViewById(R.id.walknaviview);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void selectNaviType(AppCompatActivity mContext, SelectNaviTypeListener selectNaviTypeListener) {
|
public void selectNaviType(AppCompatActivity mContext, SelectNaviTypeListener selectNaviTypeListener) {
|
||||||
@ -102,19 +117,64 @@ public class NaviUtils {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
});
|
})
|
||||||
|
.setCancelable(false);
|
||||||
selectNaviTypeDialog.show();
|
selectNaviTypeDialog.show();
|
||||||
}
|
}
|
||||||
|
|
||||||
public TencentNaviManager obitainnaviManager(Context mContext, Constant.NAV_TYPE nav_type) {
|
public TencentNaviManager obitainnaviManager(Context mContext, Constant.NAV_TYPE nav_type) {
|
||||||
TencentNaviManager naviManager = null;
|
framNaviView.setVisibility(View.VISIBLE);
|
||||||
if (nav_type == Constant.NAV_TYPE.CAR) {
|
carNaviView.setVisibility(View.GONE);
|
||||||
|
rideNaviView.setVisibility(View.GONE);
|
||||||
|
walkNaviView.setVisibility(View.GONE);
|
||||||
|
if (nav_type == Constant.NAV_TYPE.CAR) { // 驾车
|
||||||
naviManager = new TencentCarNaviManager(mContext);
|
naviManager = new TencentCarNaviManager(mContext);
|
||||||
} else if (nav_type == Constant.NAV_TYPE.RIDE) {
|
carNaviView.setVisibility(View.VISIBLE);
|
||||||
|
naviManager.addNaviView(carNaviView);
|
||||||
|
CarNaviInfoPanel carNaviInfoPanel = carNaviView.showNaviInfoPanel();
|
||||||
|
carNaviInfoPanel.setOnNaviInfoListener(new CarNaviInfoPanel.OnNaviInfoListener() {
|
||||||
|
@Override
|
||||||
|
public void onBackClick() {
|
||||||
|
((TencentCarNaviManager)naviManager).stopNavi();
|
||||||
|
|
||||||
|
framNaviView.setVisibility(View.GONE);
|
||||||
|
carNaviView.setVisibility(View.GONE);
|
||||||
|
SystemTTS.getInstance(mContext).playText("结束导航");
|
||||||
|
}
|
||||||
|
});
|
||||||
|
} else if (nav_type == Constant.NAV_TYPE.RIDE) { // 骑行
|
||||||
naviManager = new TencentRideNaviManager(mContext);
|
naviManager = new TencentRideNaviManager(mContext);
|
||||||
|
rideNaviView.setVisibility(View.VISIBLE);
|
||||||
|
((TencentRideNaviManager)naviManager).addTencentNaviListener(rideNaviView);
|
||||||
|
CarNaviInfoPanel carNaviInfoPanel = rideNaviView.showNaviInfoPanel();
|
||||||
|
carNaviInfoPanel.setOnNaviInfoListener(new CarNaviInfoPanel.OnNaviInfoListener() {
|
||||||
|
@Override
|
||||||
|
public void onBackClick() {
|
||||||
|
((TencentRideNaviManager)naviManager).stopNavi();
|
||||||
|
|
||||||
|
framNaviView.setVisibility(View.GONE);
|
||||||
|
rideNaviView.setVisibility(View.GONE);
|
||||||
|
SystemTTS.getInstance(mContext).playText("结束导航");
|
||||||
|
}
|
||||||
|
});
|
||||||
} else {
|
} else {
|
||||||
naviManager = new TencentRideNaviManager(mContext);
|
naviManager = new TencentRideNaviManager(mContext);
|
||||||
|
walkNaviView.setVisibility(View.VISIBLE);
|
||||||
|
((TencentWalkNaviManager)naviManager).addTencentNaviListener(walkNaviView);
|
||||||
|
CarNaviInfoPanel carNaviInfoPanel = walkNaviView.showNaviInfoPanel();
|
||||||
|
carNaviInfoPanel.setOnNaviInfoListener(new CarNaviInfoPanel.OnNaviInfoListener() {
|
||||||
|
@Override
|
||||||
|
public void onBackClick() {
|
||||||
|
((TencentWalkNaviManager)naviManager).stopNavi();
|
||||||
|
|
||||||
|
framNaviView.setVisibility(View.GONE);
|
||||||
|
walkNaviView.setVisibility(View.GONE);
|
||||||
|
SystemTTS.getInstance(mContext).playText("结束导航");
|
||||||
|
}
|
||||||
|
});
|
||||||
}
|
}
|
||||||
|
// 开启语音播报
|
||||||
|
naviManager.setInternalTtsEnabled(true);
|
||||||
return naviManager;
|
return naviManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -152,6 +212,21 @@ public class NaviUtils {
|
|||||||
// 添加道路Route到地图,默认选取第一条
|
// 添加道路Route到地图,默认选取第一条
|
||||||
addRoutes(arrayList);
|
addRoutes(arrayList);
|
||||||
zoomToRoute(arrayList.get(0));
|
zoomToRoute(arrayList.get(0));
|
||||||
|
try {
|
||||||
|
// 自动开始导航
|
||||||
|
if (Constant.currentNaviType == Constant.NAV_TYPE.CAR) {
|
||||||
|
((TencentCarNaviManager)naviManager).startNavi(0);
|
||||||
|
// ((TencentCarNaviManager)naviManager).startSimulateNavi(0);
|
||||||
|
} else if (Constant.currentNaviType == Constant.NAV_TYPE.RIDE) {
|
||||||
|
((TencentRideNaviManager)naviManager).startNavi(0);
|
||||||
|
// ((TencentRideNaviManager)naviManager).startSimulateNavi(0);
|
||||||
|
} else {
|
||||||
|
((TencentWalkNaviManager)naviManager).startNavi(0);
|
||||||
|
// ((TencentWalkNaviManager)naviManager).startSimulateNavi(0);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
|
||||||
|
}
|
||||||
// addMarkerStart(start.getLatitude(),start.getLongitude());
|
// addMarkerStart(start.getLatitude(),start.getLongitude());
|
||||||
// addMarkerDestination(dest.getLatitude(),dest.getLongitude());
|
// addMarkerDestination(dest.getLatitude(),dest.getLongitude());
|
||||||
// addMarkerPass(wayPoints);
|
// addMarkerPass(wayPoints);
|
||||||
@ -294,6 +369,25 @@ public class NaviUtils {
|
|||||||
}
|
}
|
||||||
return trafficItems;
|
return trafficItems;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void stopNavi() {
|
||||||
|
if (naviManager!=null&&naviManager.isNavigating()) {
|
||||||
|
if (Constant.currentNaviType == Constant.NAV_TYPE.CAR) {
|
||||||
|
((TencentCarNaviManager)naviManager).stopNavi();
|
||||||
|
} else if (Constant.currentNaviType == Constant.NAV_TYPE.RIDE) {
|
||||||
|
((TencentRideNaviManager)naviManager).stopNavi();
|
||||||
|
} else if (Constant.currentNaviType == Constant.NAV_TYPE.WALK) {
|
||||||
|
((TencentWalkNaviManager)naviManager).stopNavi();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
private TencentNaviManager getNaviManager() {
|
||||||
|
if (naviManager!=null) {
|
||||||
|
return naviManager;
|
||||||
|
}
|
||||||
|
return null;
|
||||||
|
}
|
||||||
public interface SelectNaviTypeListener {
|
public interface SelectNaviTypeListener {
|
||||||
void selectNaviType(Constant.NAV_TYPE nav_type);
|
void selectNaviType(Constant.NAV_TYPE nav_type);
|
||||||
}
|
}
|
||||||
|
@ -18,7 +18,7 @@ import org.greenrobot.eventbus.EventBus;
|
|||||||
import java.util.ArrayList;
|
import java.util.ArrayList;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
public class TalentLocationUtils implements TencentLocationListener{
|
public class TalentLocationUtils implements TencentLocationListener {
|
||||||
private TencentLocationManager locationManager;
|
private TencentLocationManager locationManager;
|
||||||
private TencentLocationRequest locationRequest;
|
private TencentLocationRequest locationRequest;
|
||||||
private List<LocationSource.OnLocationChangedListener> locationChangedListenerList;
|
private List<LocationSource.OnLocationChangedListener> locationChangedListenerList;
|
||||||
@ -38,7 +38,7 @@ public class TalentLocationUtils implements TencentLocationListener{
|
|||||||
private void init(Context mContext) {
|
private void init(Context mContext) {
|
||||||
locationChangedListenerList = new ArrayList<>();
|
locationChangedListenerList = new ArrayList<>();
|
||||||
//用于访问腾讯定位服务的类, 周期性向客户端提供位置更新
|
//用于访问腾讯定位服务的类, 周期性向客户端提供位置更新
|
||||||
locationManager = TencentLocationManager.getInstance(mContext);
|
locationManager = TencentLocationManager.getInstance(mContext, null);
|
||||||
//设置坐标系
|
//设置坐标系
|
||||||
locationManager.setCoordinateType(TencentLocationManager.COORDINATE_TYPE_GCJ02);
|
locationManager.setCoordinateType(TencentLocationManager.COORDINATE_TYPE_GCJ02);
|
||||||
//创建定位请求
|
//创建定位请求
|
||||||
@ -46,7 +46,7 @@ public class TalentLocationUtils implements TencentLocationListener{
|
|||||||
locationRequest.setInterval(1000); // 每1秒返回一次地址数据
|
locationRequest.setInterval(1000); // 每1秒返回一次地址数据
|
||||||
locationRequest.setAllowDirection(true);
|
locationRequest.setAllowDirection(true);
|
||||||
locationRequest.setAllowGPS(true);
|
locationRequest.setAllowGPS(true);
|
||||||
locationRequest.setIndoorLocationMode(true);
|
// locationRequest.setIndoorLocationMode(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void startLocation(Context mContext) { // 启动定位服务
|
public void startLocation(Context mContext) { // 启动定位服务
|
||||||
@ -54,7 +54,7 @@ public class TalentLocationUtils implements TencentLocationListener{
|
|||||||
this.init(mContext);
|
this.init(mContext);
|
||||||
}
|
}
|
||||||
if (!isLocationStart) {
|
if (!isLocationStart) {
|
||||||
int err = locationManager.requestLocationUpdates(locationRequest, this, Looper.myLooper());
|
int err = locationManager.requestLocationUpdates(locationRequest, this, Looper.myLooper(), 0);
|
||||||
isLocationStart = true;
|
isLocationStart = true;
|
||||||
switch (err) {
|
switch (err) {
|
||||||
case 1:
|
case 1:
|
||||||
@ -138,6 +138,16 @@ public class TalentLocationUtils implements TencentLocationListener{
|
|||||||
Log.v("State changed", s + "===" + s1);
|
Log.v("State changed", s + "===" + s1);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onGnssInfoChanged(Object o) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void onNmeaMsgChanged(String s) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
public List<LocationSource.OnLocationChangedListener> getLocationChangedListenerList() {
|
public List<LocationSource.OnLocationChangedListener> getLocationChangedListenerList() {
|
||||||
return locationChangedListenerList;
|
return locationChangedListenerList;
|
||||||
}
|
}
|
||||||
|
@ -1,8 +1,9 @@
|
|||||||
<?xml version="1.0" encoding="utf-8"?>
|
<?xml version="1.0" encoding="utf-8"?>
|
||||||
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||||
android:layout_width="match_parent"
|
|
||||||
android:padding="@dimen/default_widget_padding"
|
android:padding="@dimen/default_widget_padding"
|
||||||
android:layout_height="match_parent">
|
android:background="@drawable/selector_hui_bg"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="wrap_content">
|
||||||
|
|
||||||
<TextView
|
<TextView
|
||||||
android:id="@+id/navi_type_title"
|
android:id="@+id/navi_type_title"
|
||||||
@ -24,7 +25,7 @@
|
|||||||
android:id="@+id/navi_type_car"
|
android:id="@+id/navi_type_car"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:button="null"
|
android:button="@null"
|
||||||
android:text="驾车"
|
android:text="驾车"
|
||||||
android:background="@drawable/selector_default_btn_round_corner_bg"
|
android:background="@drawable/selector_default_btn_round_corner_bg"
|
||||||
style="@style/btn_round_corner"></RadioButton>
|
style="@style/btn_round_corner"></RadioButton>
|
||||||
@ -32,7 +33,7 @@
|
|||||||
android:id="@+id/navi_type_ride"
|
android:id="@+id/navi_type_ride"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:button="null"
|
android:button="@null"
|
||||||
android:text="骑行"
|
android:text="骑行"
|
||||||
android:layout_marginHorizontal="@dimen/fab_margin"
|
android:layout_marginHorizontal="@dimen/fab_margin"
|
||||||
android:background="@drawable/selector_default_btn_round_corner_bg"
|
android:background="@drawable/selector_default_btn_round_corner_bg"
|
||||||
@ -41,7 +42,7 @@
|
|||||||
android:id="@+id/navi_type_walk"
|
android:id="@+id/navi_type_walk"
|
||||||
android:layout_width="wrap_content"
|
android:layout_width="wrap_content"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:button="null"
|
android:button="@null"
|
||||||
android:text="步行"
|
android:text="步行"
|
||||||
android:background="@drawable/selector_default_btn_round_corner_bg"
|
android:background="@drawable/selector_default_btn_round_corner_bg"
|
||||||
style="@style/btn_round_corner"></RadioButton>
|
style="@style/btn_round_corner"></RadioButton>
|
||||||
|
@ -163,6 +163,25 @@
|
|||||||
app:layout_constraintLeft_toLeftOf="@id/iv_refrish"
|
app:layout_constraintLeft_toLeftOf="@id/iv_refrish"
|
||||||
app:layout_constraintTop_toBottomOf="@id/iv_refrish" />
|
app:layout_constraintTop_toBottomOf="@id/iv_refrish" />
|
||||||
</androidx.constraintlayout.widget.ConstraintLayout>
|
</androidx.constraintlayout.widget.ConstraintLayout>
|
||||||
|
|
||||||
|
<FrameLayout
|
||||||
|
android:id="@+id/fram_navi_view"
|
||||||
|
android:visibility="gone"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent">
|
||||||
|
<com.tencent.map.navi.car.CarNaviView
|
||||||
|
android:id="@+id/carnaviview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<com.tencent.map.navi.ride.RideNaviView
|
||||||
|
android:id="@+id/ridenaviview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
<com.tencent.map.navi.walk.WalkNaviView
|
||||||
|
android:id="@+id/walknaviview"
|
||||||
|
android:layout_width="match_parent"
|
||||||
|
android:layout_height="match_parent" />
|
||||||
|
</FrameLayout>
|
||||||
</FrameLayout>
|
</FrameLayout>
|
||||||
|
|
||||||
<LinearLayout
|
<LinearLayout
|
||||||
|
Loading…
x
Reference in New Issue
Block a user