Merge branch 'feature/v1.0.3' of http://gitlab.zhidaoauto.com/ecos/yycp-service/Launcher into feature/v1.0.3

This commit is contained in:
unknown
2020-03-31 16:41:47 +08:00
6 changed files with 53 additions and 29 deletions

View File

@@ -56,7 +56,7 @@ final class LoggerPrinter implements Printer {
public void e( String tag, Throwable throwable, String message, Object... args) {
if (throwable != null && message != null) {
message = message + " : " + throwable.toString();
message = message + " : " + Log.getStackTraceString( throwable);
}
if (throwable != null && message == null) {

View File

@@ -20,9 +20,11 @@ import com.mogo.utils.UiThreadHandler;
import com.mogo.utils.logger.Logger;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.Set;
/**
@@ -82,13 +84,21 @@ public class AppsPresenter extends Presenter<AppsView> {
}
private Map<Integer, List<AppInfo>> addGuideAppEntrance(Map<Integer, List<AppInfo>> appInfoMap) {
Map<Integer, List<AppInfo>> result;
if (appInfoMap == null) {
result = new HashMap<>();
} else {
result = new HashMap<>();
result.putAll(appInfoMap);
Map<Integer, List<AppInfo>> result = new HashMap<>();
if ( appInfoMap != null && !appInfoMap.isEmpty() ) {
// val deep copy
Set<Integer> keys = appInfoMap.keySet();
for ( Integer key : keys ) {
List<AppInfo> val = appInfoMap.get( key );
try {
result.put( key, new ArrayList<>( val ) );
} catch ( Exception e ) {
result.put( key, new ArrayList<>() );
}
}
}
if (result.isEmpty()) {
result.put(0, new ArrayList<>());
} else if (result.get(result.size() - 1) == null) {

View File

@@ -2,6 +2,7 @@ package com.mogo.module.navi.ui.search
import android.graphics.Bitmap
import android.graphics.BitmapFactory
import android.graphics.Rect
import android.os.Bundle
import android.text.TextUtils
import android.view.View
@@ -9,6 +10,7 @@ import androidx.fragment.app.Fragment
import androidx.recyclerview.widget.LinearLayoutManager
import com.mogo.commons.voice.AIAssist
import com.mogo.commons.voice.IMogoVoiceCmdCallBack
import com.mogo.map.MogoLatLng
import com.mogo.map.marker.IMogoMarker
import com.mogo.map.marker.IMogoMarkerClickListener
import com.mogo.map.marker.MogoMarkerOptions
@@ -22,6 +24,7 @@ import com.mogo.module.navi.ui.adapter.SearchCategoryAdapter
import com.mogo.module.navi.ui.base.BaseFragment
import com.mogo.module.navi.uitls.BitmapUtils
import com.mogo.module.navi.uitls.StringUtils
import com.mogo.utils.UiThreadHandler
import kotlinx.android.synthetic.main.fragment_search_category.cv_search_result
import kotlinx.android.synthetic.main.fragment_search_category.et_navi_search
import kotlinx.android.synthetic.main.fragment_search_category.iv_navi_back
@@ -33,8 +36,7 @@ import kotlinx.android.synthetic.main.fragment_search_category.tv_navi_navi
* @author zyz
* 2020-01-09.
*/
class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBack
{
class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBack {
// override fun onMarkerClicked(marker: IMogoMarker?): Boolean {
//
// return true
@@ -62,8 +64,9 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
}
private val TAG: String = "CategorySearchFragment"
private var addMarkers: List<IMogoMarker>? = null
private var addMarkers: ArrayList<IMogoMarker> = ArrayList()
var arrayList = ArrayList<MogoMarkerOptions>()
var locationList = ArrayList<MogoLatLng>()
private lateinit var cmds: ArrayList<String>
override fun renderSearchPoiResult(datums: List<MogoPoiItem>?) {
@@ -74,6 +77,7 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
.speakTTSVoice(String.format("搜索到%d个位置请选择", datums?.size))
arrayList.clear()
locationList.clear()
for (index in 0 until datums!!.size) {
var decodeResource =
@@ -94,8 +98,9 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
// .anchor(0.5f, 1f)
.longitude(datums[index].point?.lng ?: 0.0)
arrayList.add(options)
locationList.add(datums[index].point)
var int2String = StringUtils.int2String(index+1)
var int2String = StringUtils.int2String(index + 1)
AIAssist.getInstance(context)
.registerUnWakeupCommand(
"position" + index, arrayOf("" + int2String + "", "" + int2String + ""), this
@@ -103,16 +108,27 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
cmds.add("position" + index)
}
addMarkers = SearchServiceHolder.getMarkerManger()
.addMarkers(TAG, arrayList, true)
moveMapToRight()
addMarkers()
}
private fun addMarkers() {
addMarkers.clear()
var marginBounder = resources.getDimensionPixelSize(R.dimen.dp_60)*2
SearchServiceHolder.getMapUIController()
.showBounds(TAG, null, locationList, Rect(cv_search_result.width+marginBounder,marginBounder, marginBounder, marginBounder), false)
for (options in arrayList) {
var addMarker = SearchServiceHolder.getMarkerManger()
.addMarker(TAG, options)
addMarkers.add(addMarker)
}
addClick()
}
private fun registerVoice() {
for (index in 0 until cmds.size) {
var int2String = StringUtils.int2String(index+1)
var int2String = StringUtils.int2String(index + 1)
AIAssist.getInstance(context)
.registerUnWakeupCommand(
"position" + index, arrayOf("" + int2String + "", "" + int2String + ""), this
@@ -124,23 +140,20 @@ class CategorySearchFragment : BaseFragment(), CategoryView, IMogoVoiceCmdCallBa
override fun onHiddenChanged(hidden: Boolean) {
super.onHiddenChanged(hidden)
if (!hidden) {
addMarkers = SearchServiceHolder.getMarkerManger()
.addMarkers(TAG, arrayList, true)
registerVoice()
addClick()
addMarkers()
} else {
unRegisterVoice()
}
}
private fun addClick(){
private fun addClick() {
if (addMarkers != null) {
for (item in addMarkers!!){
for (item in addMarkers!!) {
item.setOnMarkerClickListener {
var index = it.mogoMarkerOptions.`object` as Int
mAdapter.current=index
mAdapter.current = index
rv_search_result.smoothScrollToPosition(index)
updateMarker()
true

View File

@@ -202,6 +202,9 @@ public class MogoServices implements IMogoMapListener,
* 自动刷新锁车、缩放比例16、半径 2KM
*/
private void invokeAutoRefresh() {
if ( mStatusManager.isSearchUIShow() || mStatusManager.isADASShow() ) {
return;
}
mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, false );
mUiController.changeZoom( ServiceConst.DEFAULT_LOCK_CAR_ZOOM_LEVEL );
mUiController.setLockZoom( ServiceConst.DEFAULT_LOCK_CAR_ZOOM_LEVEL );
@@ -987,7 +990,6 @@ public class MogoServices implements IMogoMapListener,
AIAssist.getInstance( mContext ).unregisterUnWakeupCommand( ServiceConst.CMD_BACK );
// 控制SearchUIShow 打点逻辑
setMarkerStatus(false);
} else {
mUiController.showMyLocation( false );
AIAssist.getInstance( mContext )

View File

@@ -171,10 +171,9 @@ public class MapMarkerInfoView extends MapMarkerBaseView {
clMarkerContent.setBackgroundResource(R.drawable.bg_map_marker_red_info);
ivReverseTriangle.setImageResource(R.drawable.bg_shape_reverse_triangle_red);
case MarkerPoiTypeEnum.FOURS_NEALY:
// TODO: 2020-03-30
ivIcon.setImageResource(R.drawable.module_service_ic_rc_accident2);
clMarkerContent.setBackgroundResource(R.drawable.bg_map_marker_red_info);
ivReverseTriangle.setImageResource(R.drawable.bg_shape_reverse_triangle_red);
ivIcon.setImageResource(R.drawable.icon_map_marker_shear_news);
clMarkerContent.setBackgroundResource(R.drawable.bg_map_marker_blue_info);
ivReverseTriangle.setImageResource(R.drawable.bg_shape_reverse_triangle_blue);
break;
default:
ivIcon.setImageResource(R.drawable.icon_map_marker_shear_news);

View File

@@ -143,8 +143,8 @@ public class MapMarkerView extends MapMarkerBaseView {
ivBg.setImageResource(R.drawable.module_service_ic_rc_accident);
break;
case MarkerPoiTypeEnum.FOURS_NEALY:
// TODO: 2020-03-30
ivBg.setImageResource(R.drawable.module_service_ic_rc_accident);
ivIcon.setImageResource(R.drawable.icon_map_marker_shear_news);
ivBg.setImageResource(R.drawable.bg_map_marker_blue);
break;
default:
ivIcon.setImageResource(R.drawable.icon_map_marker_shear_news);