问题描述
我遇到问题,需要帮助。
我将Here Sdk用于ANDROID。我将指标设置为可见,并且可以工作,但位置仍然不固定。就像我在同一个地点,但是指示器在我静止不动(设备静止不动)的同时不断弹跳并且我的地图不断移动
这是我的代码:
if (m_mapFragment != null) {
/* Initialize the AndroidXMapFragment,results will be given via the called back. */
m_mapFragment.init(new OnEngineInitListener() {
@Override
public void onEngineInitializationCompleted(OnEngineInitListener.Error error) {
//Markers image to be defined
final Image image = new Image();
global_class.setAppLocale(lang_prf,m_activity);
if (error == Error.NONE) {
//GET MAP ATTRIBUTES AND SHAPE
m_map = m_mapFragment.getMap();
//edited on 2020 06 24 || edited on 2020 07 02c
m_map.setZoomLevel(18);
//SET MAP SCHEME - COLORS AND APPEARANCE
m_map.setMapScheme(Map.Scheme.CARNAV_DAY_GREY);
m_navigationManager = NavigationManager.getInstance();
//POSITIONNING
posManager = PositioningManager.getInstance();
positionListener = new PositioningManager.OnPositionChangedListener() {
@Override
public void onPositionUpdated(PositioningManager.LocationMethod method,GeoPosition position,boolean isMapMatched) {
currentPosition = position.getCoordinate();
//m_map.setCenter(position.getCoordinate(),Map.Animation.LINEAR);
while(currentPosition==null){
Toast.makeText(m_activity,R.string.loadingposition,Toast.LENGTH_LONG).show();
}
if(currentPosition!=null){
//AFTER PROVIDING CURRENT POSITION : SET MY ACTUAL POSITION TO THE CENTER OF THE MAP
m_map.setCenter(position.getCoordinate(),Map.Animation.LINEAR);
//APPLY ZOOM ONCE AGAIN
m_map.setZoomLevel(18);
m_map.addTransformListener(onTransformListener);
//SET TRAFFIC INFORMATIONS
m_map.setTrafficInfoVisible(true);
// create a map marker to show current position
m_map.getPositionIndicator().setVisible(true);
}
}
@Override
public void onPositionFixChanged(PositioningManager.LocationMethod method,PositioningManager.LocationStatus status) {
// CODE ...
}
};
try {
posManager.addListener(new WeakReference<>(positionListener));
if(!posManager.start(PositioningManager.LocationMethod.GPS_NETWORK)) {
Log.e("HERE","PositioningManager.start: Failed to start...");
}
} catch (Exception e) {
Log.e("HERE","Caught: " + e.getMessage());
}
} else {
new AlertDialog.Builder(m_activity).setMessage(
R.string.error + error.name() + "\n\n" + error.getDetails())
.setTitle(R.string.engine_init_error)
.setNegativeButton(android.R.string.cancel,new DialogInterface.OnClickListener() {
@Override
public void onClick(
DialogInterface dialog,int which) {
m_activity.finish();
}
}).create().show();
}
}
});
}
欢迎所有建议,评论和解决方案...
解决方法
暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!
如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。
小编邮箱:dio#foxmail.com (将#修改为@)