merge qa_yingyan_custom
This commit is contained in:
@@ -65,7 +65,7 @@ public class MogoApplication extends AbsMogoApplication {
|
||||
crashSystem.init();
|
||||
//设置debug模式,日志不上传
|
||||
crashSystem.setDebug(BuildConfig.DEBUG);
|
||||
Logger.init(BuildConfig.DEBUG ? LogLevel.DEBUG : LogLevel.OFF);
|
||||
Logger.init(BuildConfig.DEBUG ? LogLevel.OFF : LogLevel.OFF);
|
||||
|
||||
if (DebugConfig.isNeedLoadGuideModule()) {
|
||||
MogoModulePaths.addModule(new MogoModule(MogoModulePaths.PATH_GUIDE, MogoModulePaths.PATH_GUIDE));
|
||||
|
||||
@@ -11,4 +11,35 @@ mapAutoView.getMapAutoViewHelper()?.setMapViewVisualAngle(type)
|
||||
type 0=近景 1=中景 2=远景
|
||||
|
||||
视角切换监听事件
|
||||
mapAutoView.setOnMapViewVisualAngleChangeListener
|
||||
mapAutoView.setOnMapViewVisualAngleChangeListener
|
||||
|
||||
8.5.17
|
||||
更新了顺义数据
|
||||
|
||||
8.5.19
|
||||
修改自车模型
|
||||
|
||||
8.5.22
|
||||
修改自车模型
|
||||
2D锚点缩放功能
|
||||
普通模式poi显示问题
|
||||
|
||||
8.5.24
|
||||
优化渲染时间
|
||||
更新衡阳数据
|
||||
临时处理绘制3D模型策略
|
||||
|
||||
8.5.25
|
||||
修改远景下拖动地图偶现黑屏问题
|
||||
关闭部分多余日志
|
||||
|
||||
8.5.26
|
||||
更新顺义高精数据
|
||||
优化渲染效率
|
||||
修改切换后台黑屏问题
|
||||
|
||||
8.5.28
|
||||
修改远视角高度bug并修正切换动画
|
||||
修改路牌显示
|
||||
修改红绿灯摄像头显示bug
|
||||
优化渲染效率
|
||||
@@ -42,7 +42,7 @@ public interface IMogoMarkerManager {
|
||||
void removeMarkers( String tag );
|
||||
|
||||
/**
|
||||
* 移除地图上所有markers
|
||||
* 移除地图上添加的所有markers
|
||||
*/
|
||||
void removeMarkers();
|
||||
|
||||
@@ -63,6 +63,7 @@ public interface IMogoMarkerManager {
|
||||
* @return
|
||||
*/
|
||||
List< IMogoMarker > getMarkers( String tag );
|
||||
|
||||
/**
|
||||
* 获取所有类型的marker。
|
||||
*
|
||||
|
||||
@@ -74,6 +74,16 @@ public class MogoMarkerManager implements IMogoMarkerManager {
|
||||
MogoMarkersHandler.getInstance().removeAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void visibleAllMarkers() {
|
||||
MogoMarkersHandler.getInstance().visibleAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public void inVisibleAllMarkers() {
|
||||
MogoMarkersHandler.getInstance().inVisibleAll();
|
||||
}
|
||||
|
||||
@Override
|
||||
public List< IMogoMarker > getMarkers( String tag ) {
|
||||
return MogoMarkersHandler.getInstance().getMarkers( tag );
|
||||
|
||||
@@ -1,7 +1,7 @@
|
||||
package com.mogo.module.common.drawer;
|
||||
|
||||
import android.os.Message;
|
||||
import android.text.TextUtils;
|
||||
import android.util.Log;
|
||||
|
||||
import com.mogo.cloud.socket.entity.SocketDownData;
|
||||
import com.mogo.commons.debug.DebugConfig;
|
||||
@@ -12,9 +12,9 @@ import com.mogo.module.common.MogoApisHandler;
|
||||
import com.mogo.module.common.constants.DataTypes;
|
||||
import com.mogo.module.common.utils.SimpleHandlerThreadPool;
|
||||
import com.mogo.service.adas.entity.ADASRecognizedResult;
|
||||
import com.mogo.service.adas.IMogoADASController;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -79,7 +79,7 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
return;
|
||||
}
|
||||
|
||||
Map<String, IMogoMarker> newAdasRecognizedMarkersCaches = new HashMap<>();
|
||||
Map<String, IMogoMarker> newAdasRecognizedMarkersCaches = new ConcurrentHashMap<>();
|
||||
List<ADASRecognizedResult> newDiffSet = new ArrayList<>();
|
||||
for (ADASRecognizedResult recognizedListResult : resultList) {
|
||||
|
||||
@@ -91,21 +91,23 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
String uniqueKey = recognizedListResult.uuid;
|
||||
IMogoMarker marker = mMarkersCaches.remove(uniqueKey);
|
||||
if (marker != null && !marker.isDestroyed()) {
|
||||
updateCacheMarkerRes(marker, recognizedListResult);
|
||||
renderAdasOneFrame(marker, uniqueKey, recognizedListResult, newAdasRecognizedMarkersCaches);
|
||||
} else {
|
||||
// 新增差集
|
||||
// 新增添加进差集
|
||||
newDiffSet.add(recognizedListResult);
|
||||
}
|
||||
}
|
||||
|
||||
removeUselessMarker();
|
||||
removeUselessLastRecord();
|
||||
|
||||
// 能复用的 marker 数量
|
||||
int cachedMarkerSize = mMarkersCaches.size();
|
||||
// 需要新增的 marker 数量
|
||||
int newDiffSetSize = newDiffSet.size();
|
||||
// 能复用的数量
|
||||
int size = cachedMarkerSize >= newDiffSetSize ? newDiffSetSize : cachedMarkerSize;
|
||||
int size = Math.min(cachedMarkerSize, newDiffSetSize);
|
||||
|
||||
// 复用过期 marker
|
||||
if (newDiffSetSize > 0) {
|
||||
@@ -118,30 +120,17 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
ADASRecognizedResult old = mLastPositions.remove(entry.getKey());
|
||||
IMogoMarker marker = entry.getValue();
|
||||
if (marker == null) {
|
||||
Log.d("EmArrow", "存在复用marker为空数据");
|
||||
continue;
|
||||
}
|
||||
|
||||
// 更新资源内容
|
||||
// 复用,更新marker 3D资源
|
||||
if (old == null || old.type != recognizedListResult.type) {
|
||||
String resIdVal = null;
|
||||
int resId = getModelRes(recognizedListResult.type);
|
||||
resIdVal = resId + "";
|
||||
String resName = mMarkerCachesResMd5Values.get(resIdVal);
|
||||
if (!TextUtils.isEmpty(resName)) {
|
||||
if (!TextUtils.equals(resName, marker.getMarkerResName())) {
|
||||
marker.use3DResource(resName);
|
||||
}
|
||||
} else {
|
||||
resName = marker.use3DResource(resId);
|
||||
mMarkerCachesResMd5Values.put(resIdVal, resName);
|
||||
}
|
||||
updateCacheMarkerRes(marker, recognizedListResult);
|
||||
}
|
||||
|
||||
renderAdasOneFrame(marker, uniqueKey, recognizedListResult, newAdasRecognizedMarkersCaches);
|
||||
}
|
||||
|
||||
// 复用过后还需新增的 marker
|
||||
|
||||
for (int i = size; i < newDiffSetSize; i++) {
|
||||
ADASRecognizedResult recognizedListResult = newDiffSet.get(i);
|
||||
String uniqueKey = recognizedListResult.uuid;
|
||||
@@ -158,6 +147,46 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
mMarkersCaches = newAdasRecognizedMarkersCaches;
|
||||
}
|
||||
|
||||
/**
|
||||
* todo 后面涉及到此类变化的数据均改动
|
||||
*
|
||||
* @param marker
|
||||
* @param recognizedListResult
|
||||
*/
|
||||
private void updateCacheMarkerRes(IMogoMarker marker, ADASRecognizedResult recognizedListResult) {
|
||||
String resIdVal;
|
||||
int resId = getModelRes(recognizedListResult.type);
|
||||
resIdVal = resId + "";
|
||||
String resName = mMarkerCachesResMd5Values.get(resIdVal);
|
||||
if (!TextUtils.isEmpty(resName)) {
|
||||
if (!TextUtils.equals(resName, marker.getMarkerResName())) {
|
||||
marker.use3DResource(resName);
|
||||
}
|
||||
} else {
|
||||
resName = marker.use3DResource(resId);
|
||||
mMarkerCachesResMd5Values.put(resIdVal, resName);
|
||||
}
|
||||
}
|
||||
|
||||
private void removeUselessLastRecord() { // todo 最好重新设计一个数据结构,用于多线程数据过期失效的场景,参见redis数据过期
|
||||
if (mLastPositions == null || mLastPositions.isEmpty()) {
|
||||
return;
|
||||
}
|
||||
IMogoADASController adasControllerApi = MogoApisHandler.getInstance().getApis().getAdasControllerApi();
|
||||
if (TextUtils.isEmpty(adasControllerApi.getSatelliteTime()) || adasControllerApi.getSatelliteTime().equals("0")) {
|
||||
return;
|
||||
}
|
||||
Iterator<ADASRecognizedResult> iterator = mLastPositions.values().iterator();
|
||||
Log.d("EmArrow","removeUselessLastRecord size : " + mLastPositions.size());
|
||||
while (iterator.hasNext()) {
|
||||
ADASRecognizedResult result = iterator.next();
|
||||
long internal = result.satelliteTime - Long.parseLong(adasControllerApi.getSatelliteTime());
|
||||
if (internal > 1000) {
|
||||
iterator.remove();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
private boolean isUselessValue(ADASRecognizedResult recognizedListResult) {
|
||||
if (recognizedListResult == null) {
|
||||
return true;
|
||||
@@ -174,7 +203,7 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
}
|
||||
|
||||
/**
|
||||
* 绘制某个物体的一个数据
|
||||
* 绘制某个物体的一个数据 todo 缓存问题
|
||||
*
|
||||
* @param recognizedListResult
|
||||
* @param newAdasRecognizedMarkersCaches
|
||||
@@ -185,22 +214,21 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
Map<String, IMogoMarker> newAdasRecognizedMarkersCaches) {
|
||||
|
||||
final long start = System.currentTimeMillis();
|
||||
|
||||
ADASRecognizedResult lastPosition = mLastPositions.remove(uniqueKey);
|
||||
double lastLon = -1;
|
||||
double lastLat = -1;
|
||||
if (lastPosition != null) {
|
||||
lastLon = lastPosition.lon;
|
||||
lastLat = lastPosition.lat;
|
||||
}
|
||||
double[] matchLonLat = getMatchLonLat(recognizedListResult.uuid, recognizedListResult.lon, recognizedListResult.lat, recognizedListResult.heading, lastLon, lastLat);
|
||||
|
||||
recognizedListResult.lon = matchLonLat[0];
|
||||
recognizedListResult.lat = matchLonLat[1];
|
||||
Log.d("EmArrow", "renderAdasOneFrame uuid : " + uniqueKey + " type : " + recognizedListResult.type);
|
||||
ADASRecognizedResult lastPosition = mLastPositions.remove(uniqueKey); //todo 缓存数据太多
|
||||
// double lastLon = -1;
|
||||
// double lastLat = -1;
|
||||
// if (lastPosition != null) {
|
||||
// lastLon = lastPosition.lon;
|
||||
// lastLat = lastPosition.lat;
|
||||
// }
|
||||
// double[] matchLonLat = getMatchLonLat(recognizedListResult.uuid, recognizedListResult.lon, recognizedListResult.lat, recognizedListResult.heading, lastLon, lastLat);
|
||||
//
|
||||
// recognizedListResult.lon = matchLonLat[0];
|
||||
// recognizedListResult.lat = matchLonLat[1];
|
||||
|
||||
mLastPositions.put(uniqueKey, recognizedListResult);
|
||||
// Logger.d( "matchRoad", "cost = %s", System.currentTimeMillis() - start );
|
||||
|
||||
// Log.d( "matchRoad", "cost = %s", System.currentTimeMillis() - start );
|
||||
newAdasRecognizedMarkersCaches.put(uniqueKey, marker);
|
||||
if (lastPosition != null) {
|
||||
long interval = computeAnimDuration(lastPosition.systemTime, recognizedListResult.systemTime, lastPosition.satelliteTime, recognizedListResult.satelliteTime);
|
||||
@@ -208,9 +236,9 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
final MogoLatLng renderLoc = new MogoLatLng(recognizedListResult.lat, recognizedListResult.lon);
|
||||
long cost = System.currentTimeMillis() - start;
|
||||
final long intervalRef = interval - cost;
|
||||
SimpleHandlerThreadPool.getInstance().postRender(() -> {
|
||||
marker.addDynamicAnchorPosition(renderLoc, (float) recognizedListResult.heading, intervalRef);
|
||||
});
|
||||
// SimpleHandlerThreadPool.getInstance().postRender(() -> {
|
||||
marker.addDynamicAnchorPosition(renderLoc, (float) recognizedListResult.heading, intervalRef);
|
||||
// });
|
||||
} else {
|
||||
marker.setRotateAngle(((float) recognizedListResult.heading));
|
||||
marker.setPosition(recognizedListResult.lat, recognizedListResult.lon);
|
||||
@@ -222,14 +250,7 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
marker.setAnchorColor(carColor);
|
||||
|
||||
if (shouldShowSpeed(recognizedListResult.type)) {
|
||||
Message msg = mRenderThreadHandler.obtainMessage();
|
||||
SpeedData obj = new SpeedData();
|
||||
obj.context = mContext;
|
||||
obj.marker = marker;
|
||||
obj.speed = recognizedListResult.speed;
|
||||
msg.obj = obj;
|
||||
msg.what = MSG_DISPLAY_SPEED;
|
||||
msg.sendToTarget();
|
||||
showSelfSpeed(marker, recognizedListResult.speed, recognizedListResult.uuid, recognizedListResult.type, MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -244,9 +265,8 @@ class AdasRecognizedResultDrawer extends BaseDrawer {
|
||||
return null;
|
||||
}
|
||||
|
||||
String resIdVal = null;
|
||||
int resId = getModelRes(recognizedListResult.type);
|
||||
resIdVal = resId + "";
|
||||
String resIdVal = resId + "";
|
||||
|
||||
String carColor = recognizedListResult.color;
|
||||
if (TextUtils.isEmpty(carColor)) {
|
||||
|
||||
@@ -20,12 +20,15 @@ import com.mogo.module.common.uploadintime.SnapshotLocationController;
|
||||
import com.mogo.utils.WorkThreadHandler;
|
||||
|
||||
import java.util.Collection;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.Map;
|
||||
import java.util.Random;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.ConcurrentHashMap;
|
||||
|
||||
import static com.mogo.module.common.constants.DataTypes.TYPE_MARKER_ADAS;
|
||||
import static com.mogo.module.common.constants.DataTypes.TYPE_MARKER_CLOUD_DATA;
|
||||
import static com.mogo.realtime.entity.CloudRoadData.FROM_ADAS;
|
||||
import static com.mogo.realtime.entity.CloudRoadData.FROM_MY_LOCATION;
|
||||
import static java.lang.Math.PI;
|
||||
|
||||
public
|
||||
@@ -37,35 +40,9 @@ public
|
||||
*/
|
||||
class BaseDrawer {
|
||||
|
||||
/**
|
||||
* 速度显示对象
|
||||
*/
|
||||
public class SpeedData {
|
||||
|
||||
public IMogoMarker marker;
|
||||
public Context context;
|
||||
double speed;
|
||||
|
||||
public void showSpeed() {
|
||||
try {
|
||||
showSelfSpeed(context,
|
||||
marker,
|
||||
speed,
|
||||
MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode());
|
||||
} catch (Exception e) {
|
||||
e.printStackTrace();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
// 移除过期的 marker
|
||||
public static final int MSG_REMOVE_DIRTY_MARKERS = 9990;
|
||||
|
||||
/**
|
||||
* 显示速度
|
||||
*/
|
||||
public static final int MSG_DISPLAY_SPEED = 11;
|
||||
|
||||
/**
|
||||
* 地图刷新频率
|
||||
*/
|
||||
@@ -79,20 +56,31 @@ class BaseDrawer {
|
||||
/**
|
||||
* 地图内部资源md5缓存,便于资源复用
|
||||
*/
|
||||
protected static final Map<String, String> mMarkerCachesResMd5Values = new HashMap<>();
|
||||
protected static final ConcurrentHashMap<String, String> mMarkerCachesResMd5Values = new ConcurrentHashMap<>();
|
||||
|
||||
/**
|
||||
* 上一帧数据的缓存
|
||||
*/
|
||||
protected Map<String, IMogoMarker> mMarkersCaches = new HashMap<>();
|
||||
protected static Map<String, IMogoMarker> mMarkersCaches = new ConcurrentHashMap<>();
|
||||
|
||||
protected final Context mContext;
|
||||
|
||||
protected static Handler mRenderThreadHandler = null;
|
||||
private TextView mSpeedView;
|
||||
|
||||
public BaseDrawer() {
|
||||
mContext = AbsMogoApplication.getApp();
|
||||
initWorkThreadHandler();
|
||||
initView();
|
||||
}
|
||||
|
||||
private void initView() {
|
||||
if (mSpeedView == null) {
|
||||
mSpeedView = new TextView(mContext);
|
||||
mSpeedView.setSingleLine(false);
|
||||
mSpeedView.setTextColor(Color.WHITE);
|
||||
mSpeedView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
|
||||
mSpeedView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||
}
|
||||
}
|
||||
|
||||
private static Handler mWorkThreadHandler;
|
||||
@@ -124,32 +112,6 @@ class BaseDrawer {
|
||||
}
|
||||
};
|
||||
}
|
||||
|
||||
if (mRenderThreadHandler == null) {
|
||||
mRenderThreadHandler = new Handler(WorkThreadHandler.newInstance("render-thread-" + new Random().nextLong()).getLooper()) {
|
||||
@Override
|
||||
public void handleMessage(Message msg) {
|
||||
super.handleMessage(msg);
|
||||
if (msg.what == MSG_DISPLAY_SPEED) {
|
||||
if (msg.obj instanceof SpeedData) {
|
||||
showSpeed((SpeedData) msg.obj);
|
||||
}
|
||||
}
|
||||
}
|
||||
};
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 显示速度
|
||||
*
|
||||
* @param data {@link SpeedData}
|
||||
*/
|
||||
private static void showSpeed(SpeedData data) {
|
||||
if (data == null) {
|
||||
return;
|
||||
}
|
||||
data.showSpeed();
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -166,6 +128,7 @@ class BaseDrawer {
|
||||
iterator.remove();
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -208,8 +171,7 @@ class BaseDrawer {
|
||||
AdasRecognizedType recognizedType = AdasRecognizedType.valueFrom(type);
|
||||
return recognizedType != AdasRecognizedType.classIdBicycle
|
||||
&& recognizedType != AdasRecognizedType.classIdMoto
|
||||
&& recognizedType != AdasRecognizedType.classIdPerson
|
||||
&& recognizedType != AdasRecognizedType.classIdUnKnow; //todo unKnow物体不绘制车速
|
||||
&& recognizedType != AdasRecognizedType.classIdPerson;
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -222,7 +184,7 @@ class BaseDrawer {
|
||||
AdasRecognizedType recognizedType = AdasRecognizedType.valueFrom(type);
|
||||
if (recognizedType == AdasRecognizedType.classIdCar
|
||||
|| recognizedType == AdasRecognizedType.classIdTrafficTruck) {
|
||||
return R.raw.othercar;
|
||||
return R.raw.othercar; //todo otherCar be replacing tache for now to test,remember to fix
|
||||
} else if (recognizedType == AdasRecognizedType.classIdTrafficBus) {
|
||||
return R.raw.bus;
|
||||
} else if (recognizedType == AdasRecognizedType.classIdBicycle
|
||||
@@ -233,7 +195,7 @@ class BaseDrawer {
|
||||
} else if (recognizedType == AdasRecognizedType.classIdWarningArrows) {
|
||||
return R.raw.arraw;
|
||||
} else if (recognizedType == AdasRecognizedType.classIdUnKnow) { //todo unKnow物体3D模型
|
||||
return R.raw.othercar;
|
||||
return R.raw.tache;
|
||||
}
|
||||
return R.raw.people;
|
||||
}
|
||||
@@ -252,8 +214,8 @@ class BaseDrawer {
|
||||
if (recognizedType == AdasRecognizedType.classIdTrafficBus) {
|
||||
return "#D8D8D8FF";
|
||||
}
|
||||
if (recognizedType == AdasRecognizedType.classIdUnKnow){ //todo unKnow颜色绘制
|
||||
return "#FF2894FF";
|
||||
if (recognizedType == AdasRecognizedType.classIdUnKnow) { //todo unKnow颜色绘制
|
||||
return Car3DModelColor.Normal.color;
|
||||
}
|
||||
// 距离策略
|
||||
double[] coordinates = getCurCoordinates();
|
||||
@@ -328,17 +290,15 @@ class BaseDrawer {
|
||||
}
|
||||
}
|
||||
|
||||
private TextView mSpeedView = null;
|
||||
|
||||
/**
|
||||
* 展示车辆速度
|
||||
*
|
||||
* @param context 上下文
|
||||
* @param mogoMarker {@link IMogoMarker}
|
||||
* @param speed 是否显示速度
|
||||
* @param isVrMode 是否是vrMode
|
||||
*/
|
||||
public void showSelfSpeed(Context context, IMogoMarker mogoMarker, double speed, boolean isVrMode) {
|
||||
public void showSelfSpeed(IMogoMarker mogoMarker, double speed, String uuid, int type, boolean isVrMode) {
|
||||
Log.d("EmArrow", "showSelf uuid : " + uuid + " speed : " + speed);
|
||||
if (mogoMarker == null || mogoMarker.isDestroyed()) {
|
||||
return;
|
||||
}
|
||||
@@ -347,26 +307,14 @@ class BaseDrawer {
|
||||
return;
|
||||
}
|
||||
int speedIntVal = (int) (speed * 3.6);
|
||||
if (speedIntVal <= 0) {
|
||||
if (speedIntVal <= 0) { //速度为0 隐藏InfoWindow
|
||||
mogoMarker.hideInfoWindow();
|
||||
return;
|
||||
}
|
||||
String speedVal = speedIntVal + "";
|
||||
String infoResName = MogoApisHandler.getInstance().getApis().getMapServiceApi().getMapUIController().getMarkerInfoResName(speedVal);
|
||||
mogoMarker.setInfoWindowOffset(0, 20);
|
||||
if (TextUtils.isEmpty(infoResName)) {
|
||||
if (mSpeedView == null) {
|
||||
mSpeedView = new TextView(context);
|
||||
mSpeedView.setTextColor(Color.WHITE);
|
||||
mSpeedView.setTypeface(Typeface.defaultFromStyle(Typeface.BOLD));
|
||||
mSpeedView.setLayoutParams(new ViewGroup.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
|
||||
}
|
||||
mSpeedView.setText(speedVal);
|
||||
mogoMarker.updateInfoWindowView(mSpeedView);
|
||||
MogoApisHandler.getInstance().getApis().getMapServiceApi().getMapUIController().setMarkerInfoResName(speedVal, mogoMarker.getMarkerInfoResName());
|
||||
} else {
|
||||
mogoMarker.updateInfoWindowView(infoResName);
|
||||
}
|
||||
String text = speedIntVal + "\n" + uuid + "\n" + type;
|
||||
mSpeedView.setText(text);
|
||||
mogoMarker.updateInfoWindowView(mSpeedView);
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -506,4 +454,15 @@ class BaseDrawer {
|
||||
|
||||
return new double[]{lon, lat};
|
||||
}
|
||||
|
||||
protected String getDataTypes(int fromType) {
|
||||
switch (fromType) {
|
||||
case FROM_MY_LOCATION:
|
||||
return TYPE_MARKER_CLOUD_DATA;
|
||||
case FROM_ADAS:
|
||||
return TYPE_MARKER_ADAS;
|
||||
default:
|
||||
return TYPE_MARKER_CLOUD_DATA;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,6 +1,5 @@
|
||||
package com.mogo.module.common.drawer;
|
||||
|
||||
import android.os.Message;
|
||||
import android.text.TextUtils;
|
||||
import android.view.LayoutInflater;
|
||||
import android.view.View;
|
||||
@@ -17,7 +16,6 @@ import com.mogo.module.common.MogoApisHandler;
|
||||
import com.mogo.module.common.R;
|
||||
import com.mogo.module.common.api.CallChatApi;
|
||||
import com.mogo.module.common.constants.DataTypes;
|
||||
import com.mogo.module.common.utils.SimpleHandlerThreadPool;
|
||||
import com.mogo.service.statusmanager.IMogoStatusChangedListener;
|
||||
import com.mogo.service.statusmanager.StatusDescriptor;
|
||||
import com.mogo.utils.ViewUtils;
|
||||
@@ -26,7 +24,6 @@ import com.zhidao.carchattingprovider.ICarsChattingProvider;
|
||||
import com.zhidao.carchattingprovider.MogoDriverInfo;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.Iterator;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
@@ -88,7 +85,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
Logger.d(TAG, "%s - %s", descriptor, isTrue);
|
||||
mChangeCarModeStatus = true;
|
||||
sendMessage(MSG_REMOVE_DIRTY_MARKERS, mMarkersCaches);
|
||||
mMarkersCaches = new HashMap<>();
|
||||
mMarkersCaches = new ConcurrentHashMap<>();
|
||||
mLastPositions.clear();
|
||||
AdasRecognizedResultDrawer.getInstance().notifyVrModeChanged(); //清除ADAS old marker data
|
||||
}
|
||||
@@ -135,7 +132,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
}
|
||||
|
||||
/**
|
||||
* mogo 他车、mogo 他车识别的社会车辆、路边单元识别的车辆
|
||||
* 绘制来自云端的 mogo 他车、mogo 他车识别的社会车辆、路边单元识别的车辆
|
||||
*
|
||||
* @param data 自车周边数据
|
||||
*/
|
||||
@@ -148,7 +145,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
List<SocketDownData.CloudRoadDataProto> allDatumsList = new ArrayList<>();
|
||||
prepareData(data.getAllListList(), allDatumsList);
|
||||
|
||||
Map<String, IMogoMarker> newMarkersCaches = new HashMap<>(allDatumsList.size());
|
||||
Map<String, IMogoMarker> newMarkersCaches = new ConcurrentHashMap<>(allDatumsList.size());
|
||||
List<SocketDownData.CloudRoadDataProto> newDiffSet = new ArrayList<>();
|
||||
|
||||
for (SocketDownData.CloudRoadDataProto cloudRoadData : allDatumsList) {
|
||||
@@ -281,25 +278,14 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
final MogoLatLng point = new MogoLatLng(cloudRoadData.getWgslat(), cloudRoadData.getWgslon());
|
||||
long cost = System.currentTimeMillis() - start;
|
||||
final long intervalRef = interval - cost;
|
||||
|
||||
SocketDownData.CloudRoadDataProto finalCloudRoadData = cloudRoadData;
|
||||
SimpleHandlerThreadPool.getInstance().postRender(() -> marker.addDynamicAnchorPosition(point, (float) finalCloudRoadData.getHeading(), intervalRef));
|
||||
marker.addDynamicAnchorPosition(point, (float) cloudRoadData.getHeading(), intervalRef);
|
||||
} else {
|
||||
marker.setRotateAngle(((float) cloudRoadData.getHeading()));
|
||||
marker.setPosition(cloudRoadData.getWgslat(), cloudRoadData.getWgslon());
|
||||
}
|
||||
|
||||
marker.setAnchorColor(getModelRenderColor(cloudRoadData.getType(), cloudRoadData.getSpeed(), cloudRoadData.getWgslon(), cloudRoadData.getWgslat(), cloudRoadData.getHeading()));
|
||||
|
||||
if (shouldShowSpeed(cloudRoadData.getType())) {
|
||||
Message msg = mRenderThreadHandler.obtainMessage();
|
||||
SpeedData obj = new SpeedData();
|
||||
obj.context = mContext;
|
||||
obj.marker = marker;
|
||||
obj.speed = cloudRoadData.getSpeed();
|
||||
msg.obj = obj;
|
||||
msg.what = MSG_DISPLAY_SPEED;
|
||||
msg.sendToTarget();
|
||||
showSelfSpeed(marker, cloudRoadData.getSpeed(), cloudRoadData.getUuid(), cloudRoadData.getType(), MogoApisHandler.getInstance().getApis().getStatusManagerApi().isVrMode());
|
||||
}
|
||||
}
|
||||
|
||||
@@ -316,6 +302,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
|
||||
/**
|
||||
* vr 模式下显示合并数据,否则只显示 mogo 车辆上报的数据
|
||||
* 展示融合数据,不包括自车定位数据和adas识别数据
|
||||
*
|
||||
* @param data 道路数据集合
|
||||
*/
|
||||
@@ -359,7 +346,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
}
|
||||
|
||||
MogoMarkerOptions options = new MogoMarkerOptions()
|
||||
.owner(DataTypes.TYPE_MARKER_CLOUD_DATA)
|
||||
.owner(getDataTypes(data.getFromType()))
|
||||
.anchor(0.5f, 0.5f)
|
||||
.rotate((float) data.getHeading())
|
||||
.object(data)
|
||||
@@ -380,7 +367,7 @@ public class SnapshotSetDataDrawer extends BaseDrawer implements IMogoMarkerClic
|
||||
options.icon(view);
|
||||
resIdVal = view.getId() + "";
|
||||
}
|
||||
IMogoMarker marker = MogoApisHandler.getInstance().getApis().getMapServiceApi().getMarkerManager(mContext).addMarker(DataTypes.TYPE_MARKER_CLOUD_DATA, options);
|
||||
IMogoMarker marker = MogoApisHandler.getInstance().getApis().getMapServiceApi().getMarkerManager(mContext).addMarker(getDataTypes(data.getFromType()), options);
|
||||
cacheMarkerIconResMd5Val(resIdVal, marker);
|
||||
|
||||
if (!TextUtils.isEmpty(data.getSn())) {
|
||||
|
||||
BIN
modules/mogo-module-common/src/main/res/raw/tache.n3d
Normal file
BIN
modules/mogo-module-common/src/main/res/raw/tache.n3d
Normal file
Binary file not shown.
@@ -38,6 +38,7 @@ import com.mogo.module.service.network.RefreshModel;
|
||||
import com.mogo.realtime.api.MoGoAiCloudRealTime;
|
||||
import com.mogo.realtime.socket.IMogoCloudOnMsgListener;
|
||||
import com.mogo.service.adas.IMogoADASControlStatusChangedListener;
|
||||
import com.mogo.service.adas.entity.ADASRecognizedResult;
|
||||
import com.mogo.service.module.IMogoBizActionDoneListener;
|
||||
import com.mogo.utils.ResourcesHelper;
|
||||
import com.mogo.utils.ThreadPoolService;
|
||||
@@ -133,7 +134,11 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
|
||||
});
|
||||
}
|
||||
// 下发的数据
|
||||
|
||||
/*
|
||||
* 云端下发数据与adas定频传输数据均发送至同一Handler线程处理
|
||||
*/
|
||||
// 云端下发的数据
|
||||
MoGoAiCloudRealTime.registerOnMsgListener(new IMogoCloudOnMsgListener() {
|
||||
@Override
|
||||
public void onMsgSend(long id) {
|
||||
@@ -145,14 +150,17 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
DebugConfig.setStatus(DebugConfig.sDownloadSnapshot, true);
|
||||
Message msg = mSnapshotHandler.obtainMessage();
|
||||
msg.obj = mogoSnapshotSetData;
|
||||
msg.what = MSG_SNAPSHOT;
|
||||
msg.sendToTarget();
|
||||
}
|
||||
});
|
||||
|
||||
// adas 每隔一秒传递的数据
|
||||
// adas 每隔一定频率传递过来的数据
|
||||
MarkerServiceHandler.getApis().getAdasControllerApi().addAdasRecognizedDataCallback(resultList -> {
|
||||
// 绘制近景识别到的车辆
|
||||
AdasRecognizedResultDrawer.getInstance().renderAdasRecognizedResult(resultList);
|
||||
Message msg = mSnapshotHandler.obtainMessage();
|
||||
msg.obj = resultList;
|
||||
msg.what = MSG_ADAS;
|
||||
msg.sendToTarget();
|
||||
|
||||
//添加自车的定位图标,碰撞只有一个预警,还需要和adas 联调,
|
||||
// for ( ADASRecognizedResult result : resultList) {
|
||||
@@ -196,15 +204,34 @@ public class MapMarkerManager implements IMogoMarkerClickListener,
|
||||
// }
|
||||
// }
|
||||
|
||||
private final static int MSG_SNAPSHOT = 1;
|
||||
private final static int MSG_ADAS = 2;
|
||||
|
||||
/**
|
||||
* todo 后续从云端和adas侧拿到的数据 需求对数据流进行重新架构以扩展除添加marker外的其他预警类业务
|
||||
* todo (应需要模块主动注册adas或云端数据回调,在具体模块内添加绘制需求,需要与地图侧确认是否支持并发)
|
||||
*/
|
||||
private final Handler mSnapshotHandler = new Handler(WorkThreadHandler.newInstance("snapshot-thread").getLooper()) {
|
||||
@Override
|
||||
public void handleMessage(Message msg) {
|
||||
super.handleMessage(msg);
|
||||
if (msg.obj instanceof SocketDownData.LauncherSnapshotProto) {
|
||||
SnapshotSetDataDrawer.getInstance().renderSnapshotData(((SocketDownData.LauncherSnapshotProto) msg.obj));
|
||||
} else if (msg.obj == null) {
|
||||
SnapshotSetDataDrawer.getInstance().renderSnapshotData(null);
|
||||
switch (msg.what) {
|
||||
case MSG_SNAPSHOT:
|
||||
if (msg.obj instanceof SocketDownData.LauncherSnapshotProto) {
|
||||
// SnapshotSetDataDrawer.getInstance().renderSnapshotData(((SocketDownData.LauncherSnapshotProto) msg.obj));
|
||||
} else {
|
||||
SnapshotSetDataDrawer.getInstance().renderSnapshotData(null);
|
||||
}
|
||||
break;
|
||||
case MSG_ADAS:
|
||||
// 绘制近景识别到的车辆
|
||||
if (msg.obj instanceof List) {
|
||||
List<ADASRecognizedResult> recognizedResults = (List<ADASRecognizedResult>) msg.obj;
|
||||
AdasRecognizedResultDrawer.getInstance().renderAdasRecognizedResult(recognizedResults);
|
||||
}
|
||||
break;
|
||||
default:
|
||||
break;
|
||||
}
|
||||
}
|
||||
};
|
||||
|
||||
@@ -40,14 +40,14 @@ public interface IMogoADASController extends IProvider {
|
||||
*
|
||||
* @param show
|
||||
*/
|
||||
void setSettingStatus( boolean show );
|
||||
void setSettingStatus(boolean show);
|
||||
|
||||
/**
|
||||
* 控制算法
|
||||
*
|
||||
* @param open
|
||||
*/
|
||||
void setUseAlgorithm( boolean open );
|
||||
void setUseAlgorithm(boolean open);
|
||||
|
||||
void release();
|
||||
|
||||
@@ -56,14 +56,14 @@ public interface IMogoADASController extends IProvider {
|
||||
* <p>
|
||||
* 导航车头仅支持 NorthUP_2D 和 车头朝上2D
|
||||
*/
|
||||
void changeAdasControlMode( EnumMapUI ui );
|
||||
void changeAdasControlMode(EnumMapUI ui);
|
||||
|
||||
/**
|
||||
* 反向设置 adas 对可见性的控制
|
||||
*
|
||||
* @param visible
|
||||
*/
|
||||
void changeAdasControlVisibleMode( boolean visible );
|
||||
void changeAdasControlVisibleMode(boolean visible);
|
||||
|
||||
/**
|
||||
* 获取当前皮肤状态
|
||||
@@ -77,7 +77,7 @@ public interface IMogoADASController extends IProvider {
|
||||
*
|
||||
* @param result
|
||||
*/
|
||||
void aiCloudToAdasData( RemoteControlAutoPilotParameters result );
|
||||
void aiCloudToAdasData(RemoteControlAutoPilotParameters result);
|
||||
|
||||
|
||||
/**
|
||||
@@ -85,28 +85,28 @@ public interface IMogoADASController extends IProvider {
|
||||
*
|
||||
* @param callback 回调接口
|
||||
*/
|
||||
void addAdasDataCallback( IMogoAdasDataCallback callback );
|
||||
void addAdasDataCallback(IMogoAdasDataCallback callback);
|
||||
|
||||
/**
|
||||
* 移除adas数据回调接口
|
||||
*
|
||||
* @param callback 待移除的callback
|
||||
*/
|
||||
void removeAdasDataCallback( IMogoAdasDataCallback callback );
|
||||
void removeAdasDataCallback(IMogoAdasDataCallback callback);
|
||||
|
||||
/**
|
||||
* 添加adas报警数据回调接口
|
||||
*
|
||||
* @param callback 回调接口
|
||||
*/
|
||||
void addAdasWarnMessageCallback( IMogoAdasWarnMessageCallback callback );
|
||||
void addAdasWarnMessageCallback(IMogoAdasWarnMessageCallback callback);
|
||||
|
||||
/**
|
||||
* 移除adas报警数据回调接口
|
||||
*
|
||||
* @param callback 待移除的callback
|
||||
*/
|
||||
void removeAdasWarnMessageCallback( IMogoAdasWarnMessageCallback callback );
|
||||
void removeAdasWarnMessageCallback(IMogoAdasWarnMessageCallback callback);
|
||||
|
||||
/**
|
||||
* 获取 adas 识别列表
|
||||
@@ -120,35 +120,35 @@ public interface IMogoADASController extends IProvider {
|
||||
*
|
||||
* @param callback
|
||||
*/
|
||||
void addAdasRecognizedDataCallback( IMogoAdasRecognizedDataCallback callback );
|
||||
void addAdasRecognizedDataCallback(IMogoAdasRecognizedDataCallback callback);
|
||||
|
||||
/**
|
||||
* 移除adas识别物体回调
|
||||
*
|
||||
* @param callback
|
||||
*/
|
||||
void removeAdasRecognizedDataCallback( IMogoAdasRecognizedDataCallback callback );
|
||||
void removeAdasRecognizedDataCallback(IMogoAdasRecognizedDataCallback callback);
|
||||
|
||||
/**
|
||||
* 自车定位数据
|
||||
*
|
||||
* @param carDataCallback
|
||||
*/
|
||||
void setAdasCarDataCallback( IMogoAdasCarDataCallback carDataCallback );
|
||||
void setAdasCarDataCallback(IMogoAdasCarDataCallback carDataCallback);
|
||||
|
||||
/**
|
||||
* 自动驾驶状态通知
|
||||
*
|
||||
* @param callback
|
||||
*/
|
||||
void addAdasOCHCallback( IMogoAdasOCHCallback callback );
|
||||
void addAdasOCHCallback(IMogoAdasOCHCallback callback);
|
||||
|
||||
/**
|
||||
* 移除自动驾驶通知
|
||||
*/
|
||||
void removeAdasOCHCallback();
|
||||
|
||||
void onAutopilotArriveLike( int type );
|
||||
void onAutopilotArriveLike(int type);
|
||||
|
||||
/**
|
||||
* 获取车辆自动驾驶状态
|
||||
@@ -157,7 +157,7 @@ public interface IMogoADASController extends IProvider {
|
||||
*/
|
||||
int getAutopilotStatus();
|
||||
|
||||
void mockOchStatus( int state, String reason );
|
||||
void mockOchStatus(int state, String reason);
|
||||
|
||||
/**
|
||||
* 获取车身的定位纬度
|
||||
@@ -180,14 +180,21 @@ public interface IMogoADASController extends IProvider {
|
||||
*/
|
||||
double getLastSpeed();
|
||||
|
||||
/**
|
||||
* 获取由工控机传回的GPS星历时间
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
String getSatelliteTime();
|
||||
|
||||
/**
|
||||
* 结束自动驾驶
|
||||
*/
|
||||
void cancelAutopilot();
|
||||
|
||||
void mockAdasLoc( String json );
|
||||
void mockAdasLoc(String json);
|
||||
|
||||
void mockAdasRecognized( List< ADASRecognizedResult > recognizedResults );
|
||||
void mockAdasRecognized(List<ADASRecognizedResult> recognizedResults);
|
||||
|
||||
void mockAdasRecognized( String json );
|
||||
void mockAdasRecognized(String json);
|
||||
}
|
||||
|
||||
@@ -148,6 +148,7 @@ public class MogoADASController implements IMogoADASController {
|
||||
|
||||
mLastLon = stateInfo.getValues().getLon();
|
||||
mLastLat = stateInfo.getValues().getLat();
|
||||
satelliteTime = stateInfo.getValues().getSatelliteTime();
|
||||
if (mMogoAdasCarDataCallback != null) {
|
||||
mMogoAdasCarDataCallback.onAdasCarDataCallback(stateInfo);
|
||||
}
|
||||
@@ -181,7 +182,7 @@ public class MogoADASController implements IMogoADASController {
|
||||
model.setLon(bean.getLon());
|
||||
model.setHeading(bean.getHeading());
|
||||
model.setSystemTime(bean.getSystemTime());
|
||||
model.setSatelliteTime(bean.getSatelliteTime());
|
||||
model.setSatelliteTime(bean.getSystemTime());
|
||||
model.setAlt(bean.getAlt());
|
||||
model.setCarId(bean.getCarId());
|
||||
model.setUuid(bean.getUuid());
|
||||
@@ -193,6 +194,10 @@ public class MogoADASController implements IMogoADASController {
|
||||
|
||||
data.add(model);
|
||||
|
||||
Log.d("ADAS数据延时", "uuid : " + bean.getUuid() + "systemTime : " + System.currentTimeMillis() + " GPS time" + Long.parseLong(bean.getSystemTime())
|
||||
+ " timeDelay : " + (System.currentTimeMillis() - Long.parseLong(bean.getSystemTime())));
|
||||
|
||||
// Log.d("ADAS原始数据", "uuid : " + bean.getUuid() + " type : " + bean.getType());
|
||||
Logger.d(TAG, "识别距离:x = %s, y = %s", model.getDistance_x(), model.getDistance_y());
|
||||
}
|
||||
}
|
||||
@@ -457,6 +462,7 @@ public class MogoADASController implements IMogoADASController {
|
||||
private double mLastLon;
|
||||
private double mLastLat;
|
||||
private double mSpeed;
|
||||
private String satelliteTime;
|
||||
|
||||
@Override
|
||||
public double getLastSpeed() {
|
||||
@@ -471,6 +477,10 @@ public class MogoADASController implements IMogoADASController {
|
||||
return mLastLon;
|
||||
}
|
||||
|
||||
public String getSatelliteTime() {
|
||||
return satelliteTime;
|
||||
}
|
||||
|
||||
private boolean useTestSn = false;
|
||||
|
||||
private void invokeShowADASOperation() {
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.alibaba.android.arouter.routes;
|
||||
|
||||
import com.alibaba.android.arouter.facade.enums.RouteType;
|
||||
import com.alibaba.android.arouter.facade.model.RouteMeta;
|
||||
import com.alibaba.android.arouter.facade.template.IRouteGroup;
|
||||
import com.mogo.test.crashreport.upgrade.UpgradeReportProvider;
|
||||
import java.lang.Override;
|
||||
import java.lang.String;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* DO NOT EDIT THIS FILE!!! IT WAS GENERATED BY AROUTER. */
|
||||
public class ARouter$$Group$$upgradereport implements IRouteGroup {
|
||||
@Override
|
||||
public void loadInto(Map<String, RouteMeta> atlas) {
|
||||
atlas.put("/upgradereport/api", RouteMeta.build(RouteType.PROVIDER, UpgradeReportProvider.class, "/upgradereport/api", "upgradereport", null, -1, -2147483648));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
package com.alibaba.android.arouter.routes;
|
||||
|
||||
import com.alibaba.android.arouter.facade.enums.RouteType;
|
||||
import com.alibaba.android.arouter.facade.model.RouteMeta;
|
||||
import com.alibaba.android.arouter.facade.template.IProviderGroup;
|
||||
import com.mogo.test.crashreport.upgrade.UpgradeReportProvider;
|
||||
import java.lang.Override;
|
||||
import java.lang.String;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* DO NOT EDIT THIS FILE!!! IT WAS GENERATED BY AROUTER. */
|
||||
public class ARouter$$Providers$$crashreportupgrade implements IProviderGroup {
|
||||
@Override
|
||||
public void loadInto(Map<String, RouteMeta> providers) {
|
||||
providers.put("com.mogo.test.crashreport.upgrade.UpgradeReportProvider", RouteMeta.build(RouteType.PROVIDER, UpgradeReportProvider.class, "/upgradereport/api", "upgradereport", null, -1, -2147483648));
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,17 @@
|
||||
package com.alibaba.android.arouter.routes;
|
||||
|
||||
import com.alibaba.android.arouter.facade.template.IRouteGroup;
|
||||
import com.alibaba.android.arouter.facade.template.IRouteRoot;
|
||||
import java.lang.Class;
|
||||
import java.lang.Override;
|
||||
import java.lang.String;
|
||||
import java.util.Map;
|
||||
|
||||
/**
|
||||
* DO NOT EDIT THIS FILE!!! IT WAS GENERATED BY AROUTER. */
|
||||
public class ARouter$$Root$$crashreportupgrade implements IRouteRoot {
|
||||
@Override
|
||||
public void loadInto(Map<String, Class<? extends IRouteGroup>> routes) {
|
||||
routes.put("upgradereport", ARouter$$Group$$upgradereport.class);
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
/**
|
||||
* Automatically generated file. DO NOT MODIFY
|
||||
*/
|
||||
package com.mogo.test.crashreport.upgrade;
|
||||
|
||||
public final class BuildConfig {
|
||||
public static final boolean DEBUG = Boolean.parseBoolean("true");
|
||||
public static final String LIBRARY_PACKAGE_NAME = "com.mogo.test.crashreport.upgrade";
|
||||
/**
|
||||
* @deprecated APPLICATION_ID is misleading in libraries. For the library package name use LIBRARY_PACKAGE_NAME
|
||||
*/
|
||||
@Deprecated
|
||||
public static final String APPLICATION_ID = "com.mogo.test.crashreport.upgrade";
|
||||
public static final String BUILD_TYPE = "debug";
|
||||
public static final String FLAVOR = "";
|
||||
public static final int VERSION_CODE = 1;
|
||||
public static final String VERSION_NAME = "2.0.12";
|
||||
}
|
||||
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.mogo.test.crashreport.upgrade"
|
||||
android:versionCode="1"
|
||||
android:versionName="2.0.12" >
|
||||
|
||||
<uses-sdk
|
||||
android:minSdkVersion="19"
|
||||
android:targetSdkVersion="22" />
|
||||
|
||||
<application>
|
||||
<provider
|
||||
android:name="androidx.core.content.FileProvider"
|
||||
android:authorities="dollar_openBracket_applicationId_closeBracket.fileProvider"
|
||||
android:exported="false"
|
||||
android:grantUriPermissions="true" >
|
||||
<meta-data
|
||||
android:name="android.support.FILE_PROVIDER_PATHS"
|
||||
android:resource="@xml/provider_paths" />
|
||||
</provider>
|
||||
|
||||
<activity
|
||||
android:name="com.tencent.bugly.beta.ui.BetaActivity"
|
||||
android:configChanges="keyboardHidden|orientation|screenSize|locale"
|
||||
android:theme="@android:style/Theme.Translucent" />
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@@ -0,0 +1 @@
|
||||
[{"outputType":{"type":"AAPT_FRIENDLY_MERGED_MANIFESTS"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"2.0.12","enabled":true,"outputFile":"crashreport-upgrade-debug.aar","fullName":"debug","baseName":"debug"},"path":"AndroidManifest.xml","properties":{"packageId":"com.mogo.test.crashreport.upgrade","split":""}}]
|
||||
@@ -0,0 +1 @@
|
||||
{"jetified-arouter-compiler-1.2.2.jar (com.alibaba:arouter-compiler:1.2.2)":false,"auto-service-1.0-rc2.jar (com.google.auto.service:auto-service:1.0-rc2)":false}
|
||||
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/main/jniLibs"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/debug/jniLibs"/></dataSet></merger>
|
||||
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/main/shaders"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/debug/shaders"/></dataSet></merger>
|
||||
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merger version="3"><dataSet config="main" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/main/assets"/><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/build/intermediates/shader_assets/debug/compileDebugShaders/out"/></dataSet><dataSet config="debug" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/foudations/httpdns-base/src/debug/assets"/></dataSet></merger>
|
||||
@@ -0,0 +1,2 @@
|
||||
#Mon May 17 12:06:15 CST 2021
|
||||
/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/res/xml/provider_paths.xml=/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/build/intermediates/packaged_res/debug/xml/provider_paths.xml
|
||||
@@ -0,0 +1,2 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<merger version="3"><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/res"/><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/build/generated/res/rs/debug"/><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/build/generated/res/resValues/debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="main" generated-set="main$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/res"><file name="provider_paths" path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/res/xml/provider_paths.xml" qualifiers="" type="xml"/></source><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/build/generated/res/rs/debug"/><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/build/generated/res/resValues/debug"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug$Generated" generated="true" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/debug/res"/></dataSet><dataSet aapt-namespace="http://schemas.android.com/apk/res-auto" config="debug" generated-set="debug$Generated" ignore_pattern="!.svn:!.git:!.ds_store:!*.scc:.*:<dir>_*:!CVS:!thumbs.db:!picasa.ini:!*~"><source path="/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/debug/res"/></dataSet><mergedItems/></merger>
|
||||
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
@@ -0,0 +1,28 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
package="com.mogo.test.crashreport.upgrade"
|
||||
android:versionCode="1"
|
||||
android:versionName="2.0.12" >
|
||||
|
||||
<uses-sdk
|
||||
android:minSdkVersion="19"
|
||||
android:targetSdkVersion="22" />
|
||||
|
||||
<application>
|
||||
<provider
|
||||
android:name="androidx.core.content.FileProvider"
|
||||
android:authorities="${applicationId}.fileProvider"
|
||||
android:exported="false"
|
||||
android:grantUriPermissions="true" >
|
||||
<meta-data
|
||||
android:name="android.support.FILE_PROVIDER_PATHS"
|
||||
android:resource="@xml/provider_paths" />
|
||||
</provider>
|
||||
|
||||
<activity
|
||||
android:name="com.tencent.bugly.beta.ui.BetaActivity"
|
||||
android:configChanges="keyboardHidden|orientation|screenSize|locale"
|
||||
android:theme="@android:style/Theme.Translucent" />
|
||||
</application>
|
||||
|
||||
</manifest>
|
||||
@@ -0,0 +1,3 @@
|
||||
R_DEF: Internal format may change without notice
|
||||
local
|
||||
xml provider_paths
|
||||
@@ -0,0 +1,43 @@
|
||||
1<?xml version="1.0" encoding="utf-8"?>
|
||||
2<manifest xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
3 package="com.mogo.test.crashreport.upgrade"
|
||||
4 android:versionCode="1"
|
||||
5 android:versionName="2.0.12" >
|
||||
6
|
||||
7 <uses-sdk
|
||||
8 android:minSdkVersion="19"
|
||||
8-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
9 android:targetSdkVersion="22" />
|
||||
9-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
10
|
||||
11 <application>
|
||||
11-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:4:5-19:19
|
||||
12 <provider
|
||||
12-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:5:9-13:20
|
||||
13 android:name="androidx.core.content.FileProvider"
|
||||
13-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:6:13-62
|
||||
14 android:authorities="dollar_openBracket_applicationId_closeBracket.fileProvider"
|
||||
14-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:7:13-64
|
||||
15 android:exported="false"
|
||||
15-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:8:13-37
|
||||
16 android:grantUriPermissions="true" >
|
||||
16-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:9:13-47
|
||||
17 <meta-data
|
||||
17-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:10:13-12:58
|
||||
18 android:name="android.support.FILE_PROVIDER_PATHS"
|
||||
18-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:11:17-67
|
||||
19 android:resource="@xml/provider_paths" />
|
||||
19-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:12:17-55
|
||||
20 </provider>
|
||||
21
|
||||
22 <activity
|
||||
22-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:15:9-18:64
|
||||
23 android:name="com.tencent.bugly.beta.ui.BetaActivity"
|
||||
23-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:16:13-66
|
||||
24 android:configChanges="keyboardHidden|orientation|screenSize|locale"
|
||||
24-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:17:13-81
|
||||
25 android:theme="@android:style/Theme.Translucent" />
|
||||
25-->/Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:18:13-61
|
||||
26 </application>
|
||||
27
|
||||
28</manifest>
|
||||
@@ -0,0 +1 @@
|
||||
[{"outputType":{"type":"MERGED_MANIFESTS"},"apkData":{"type":"MAIN","splits":[],"versionCode":1,"versionName":"2.0.12","enabled":true,"outputFile":"crashreport-upgrade-debug.aar","fullName":"debug","baseName":"debug"},"path":"../../library_manifest/debug/AndroidManifest.xml","properties":{"packageId":"com.mogo.test.crashreport.upgrade","split":""}}]
|
||||
@@ -0,0 +1,7 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<paths xmlns:android="http://schemas.android.com/apk/res/android">
|
||||
<!-- /storage/emulated/0/Download/${applicationId}/.beta/apk-->
|
||||
<external-path name="beta_external_path" path="Download/"/>
|
||||
<!--/storage/emulated/0/Android/data/${applicationId}/files/apk/-->
|
||||
<external-path name="beta_external_files_path" path="Android/data/"/>
|
||||
</paths>
|
||||
File diff suppressed because it is too large
Load Diff
Binary file not shown.
1801
test/crashreport-upgrade/build/intermediates/symbols/debug/R.txt
Normal file
1801
test/crashreport-upgrade/build/intermediates/symbols/debug/R.txt
Normal file
File diff suppressed because it is too large
Load Diff
@@ -0,0 +1,63 @@
|
||||
-- Merging decision tree log ---
|
||||
manifest
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
package
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:2:5-48
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
android:versionName
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
android:versionCode
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:1-20:12
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
xmlns:android
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:1:11-69
|
||||
application
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:4:5-19:19
|
||||
provider#androidx.core.content.FileProvider
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:5:9-13:20
|
||||
android:grantUriPermissions
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:9:13-47
|
||||
android:authorities
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:7:13-64
|
||||
android:exported
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:8:13-37
|
||||
android:name
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:6:13-62
|
||||
meta-data#android.support.FILE_PROVIDER_PATHS
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:10:13-12:58
|
||||
android:resource
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:12:17-55
|
||||
android:name
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:11:17-67
|
||||
activity#com.tencent.bugly.beta.ui.BetaActivity
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:15:9-18:64
|
||||
android:configChanges
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:17:13-81
|
||||
android:theme
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:18:13-61
|
||||
android:name
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml:16:13-66
|
||||
uses-sdk
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml reason: use-sdk injection requested
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
android:targetSdkVersion
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
android:minSdkVersion
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
ADDED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
INJECTED from /Users/zhongchao/Documents/androidProject/Launcher/test/crashreport-upgrade/src/main/AndroidManifest.xml
|
||||
Reference in New Issue
Block a user