test cloud data

This commit is contained in:
zhongchao
2021-07-21 17:52:14 +08:00
parent b624c0b4b3
commit fddb808ead
3 changed files with 42 additions and 18 deletions

View File

@@ -318,18 +318,18 @@ public class MogoApplication extends AbsMogoApplication {
// }
ARouter.getInstance().navigation(ITestCrashReportProvider.class);
Log.i("timer", "cost " + (System.currentTimeMillis() - start) + "ms");
try {
if (DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_LENOVO) {
Intent intent = new Intent();
intent.setComponent(new ComponentName("com.zhidao.speech",
"com.zhidao.speech.MainActivity"));
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
startActivity(intent);
}
} catch (Exception e) {
e.printStackTrace();
}
// try {
// if (DebugConfig.getCarMachineType() == DebugConfig.CAR_MACHINE_TYPE_LENOVO) {
// Intent intent = new Intent();
// intent.setComponent(new ComponentName("com.zhidao.speech",
// "com.zhidao.speech.MainActivity"));
// intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);
// startActivity(intent);
// }
// } catch (Exception e) {
// e.printStackTrace();
// }
//
}
@Override

View File

@@ -48,7 +48,7 @@ public abstract class MvpActivity< V extends IView, P extends Presenter< V > >
protected void onResume() {
super.onResume();
hideBottomUIMenu();
// startVoicePad();
startVoicePad();
}
/**

View File

@@ -180,7 +180,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
newDiffSet.add(cloudRoadData);
}
}
removeUselessMarker(mMarkersCaches);
delayRemoveUselessMarker();
removeUselessLastRecord();
// 需要新增的 marker 数量
int newDiffSetSize = newDiffSet.size();
@@ -198,9 +198,8 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
renderSnapshotOneFrame(marker, uniqueKey, cloudRoadData, newMarkersCaches);
}
}
sendMessage(MSG_REMOVE_DIRTY_MARKERS, mMarkersCaches);
mMarkersCaches.clear();
mMarkersCaches = newMarkersCaches;
// sendMessage(MSG_REMOVE_DIRTY_MARKERS, mMarkersCaches);
mMarkersCaches.putAll(newMarkersCaches);
}
/**
@@ -224,6 +223,31 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
}
}
private void delayRemoveUselessMarker() {
if (mMarkersCaches.isEmpty()) {
return;
}
IMogoADASController adasControllerApi = MogoApisHandler.getInstance().getApis().getAdasControllerApi();
if (TextUtils.isEmpty(adasControllerApi.getSatelliteTime())) {
return;
}
Iterator<IMogoMarker> iterator = mMarkersCaches.values().iterator();
while (iterator.hasNext()) {
IMogoMarker result = iterator.next();
SocketDownData.CloudRoadDataProto proto = ((SocketDownData.CloudRoadDataProto) result.getObject());
long internal = Long.parseLong(adasControllerApi.getSatelliteTime()) - proto.getSatelliteTime();
Log.d("EmArrow", "delayRemoveUselessMarker uuid : " + proto.getUuid()
+ " adasTime : " + adasControllerApi.getSatelliteTime()
+ " protoTime : " + proto.getSatelliteTime()
+ " internal : " + internal);
if (internal > 2000) {
iterator.remove();
result.remove();
result.destroy();
}
}
}
private void removeUselessLastRecord() { // todo 最好重新设计一个数据结构用于多线程数据过期失效的场景参见redis数据过期
if (mLastPositions.isEmpty()) {
return;
@@ -236,7 +260,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
Log.d("EmArrow", "removeUselessLastRecord size : " + mLastPositions.size());
while (iterator.hasNext()) {
SocketDownData.CloudRoadDataProto result = iterator.next();
long internal = result.getSatelliteTime() - Long.parseLong(adasControllerApi.getSatelliteTime());
long internal = Long.parseLong(adasControllerApi.getSatelliteTime()) - result.getSatelliteTime();
if (internal > 3000) {
iterator.remove();
}