From d76cdb1eb352f7d47c16203b66f11c62b0e4bd92 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Wed, 21 Oct 2020 11:06:06 +0800 Subject: [PATCH 1/6] opt --- .../com/mogo/map/impl/amap/hook/BnHooker.java | 18 +++++++++++++----- 1 file changed, 13 insertions(+), 5 deletions(-) diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/hook/BnHooker.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/hook/BnHooker.java index 51177489d3..82e014560a 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/hook/BnHooker.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/hook/BnHooker.java @@ -23,6 +23,8 @@ public class BnHooker implements InvocationHandler { private static final String TAG = "BnHooker"; private Object host; + private Method getGLMapEngineMethod; + private GLMapEngine glMapEngineObject; public BnHooker( AMap map ) throws Exception { @@ -47,11 +49,17 @@ public class BnHooker implements InvocationHandler { } public void clearAllMessages() throws Exception { - Method method = host.getClass().getDeclaredMethod( "getGLMapEngine" ); - method.setAccessible( true ); - GLMapEngine glMapEngine = ( GLMapEngine ) method.invoke( host ); - clearMessageList( "mStateMessageList", glMapEngine ); - clearMessageList( "mAnimateStateMessageList", glMapEngine ); + if ( glMapEngineObject == null ) { + if ( getGLMapEngineMethod == null ) { + getGLMapEngineMethod = host.getClass().getDeclaredMethod( "getGLMapEngine" ); + getGLMapEngineMethod.setAccessible( true ); + } + glMapEngineObject = ( GLMapEngine ) getGLMapEngineMethod.invoke( host ); + } + if ( glMapEngineObject != null ) { + clearMessageList( "mStateMessageList", glMapEngineObject ); + clearMessageList( "mAnimateStateMessageList", glMapEngineObject ); + } } private void clearMessageList( String filedName, Object obj ) throws Exception { From 38e5414abb36d68aa4267995e3d5105348655c02 Mon Sep 17 00:00:00 2001 From: liujing Date: Wed, 21 Oct 2020 11:06:49 +0800 Subject: [PATCH 2/6] rangingbar-padding --- .../main/java/com/mogo/module/common/view/CustomRatingBar.java | 3 ++- modules/mogo-module-common/src/main/res/values/dimens.xml | 1 + 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/modules/mogo-module-common/src/main/java/com/mogo/module/common/view/CustomRatingBar.java b/modules/mogo-module-common/src/main/java/com/mogo/module/common/view/CustomRatingBar.java index f896e216c6..544f1346cc 100644 --- a/modules/mogo-module-common/src/main/java/com/mogo/module/common/view/CustomRatingBar.java +++ b/modules/mogo-module-common/src/main/java/com/mogo/module/common/view/CustomRatingBar.java @@ -157,7 +157,8 @@ public class CustomRatingBar extends LinearLayout { context.getResources().getDimension(R.dimen.heart_ratingbar_width)); elementHeight = mTypedArray.getDimension(R.styleable.CustomRatingBar_elenmentHeight, context.getResources().getDimension(R.dimen.heart_ratingbar_height)); - elementPadding = mTypedArray.getDimension(R.styleable.CustomRatingBar_elenmentPadding, 10); + elementPadding = mTypedArray.getDimension(R.styleable.CustomRatingBar_elenmentPadding, + context.getResources().getDimension(R.dimen.ratingbar_padding)); elementStep = mTypedArray.getFloat(R.styleable.CustomRatingBar_elenmentStep, 1.0f); stepSize = StepSize.fromStep(mTypedArray.getInt(R.styleable.CustomRatingBar_stepSize, 1)); diff --git a/modules/mogo-module-common/src/main/res/values/dimens.xml b/modules/mogo-module-common/src/main/res/values/dimens.xml index bd36dac4cb..f6bd0495be 100644 --- a/modules/mogo-module-common/src/main/res/values/dimens.xml +++ b/modules/mogo-module-common/src/main/res/values/dimens.xml @@ -1052,5 +1052,6 @@ 48px 17.5000px 15.3125px + 6px From 619ad60f18a3e46ab7d801cf1aef4982a87c7f00 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Tue, 20 Oct 2020 15:08:54 +0800 Subject: [PATCH 3/6] opt search --- .../java/com/mogo/module/tanlu/fragment/TanluListWindow.java | 2 +- modules/mogo-module-tanlu/src/main/res/values/strings.xml | 5 ++--- 2 files changed, 3 insertions(+), 4 deletions(-) diff --git a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluListWindow.java b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluListWindow.java index a297d23717..2cd94ed6b8 100644 --- a/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluListWindow.java +++ b/modules/mogo-module-tanlu/src/main/java/com/mogo/module/tanlu/fragment/TanluListWindow.java @@ -559,7 +559,7 @@ public class TanluListWindow extends RelativeLayout implements IMogoMarkerClickL @Override public void onQueryRoadInfoSuccess(@NotNull List roadInfoList) { if (roadInfoList == null || (roadInfoList != null && roadInfoList.size() <= 0)) { - speakFailVoice("未找到其他车主分享的路况信息"); + speakFailVoice("未发现" + mKeywords + "附近的特殊路况"); moveToMarcker(currentLat, currentLon); return; } diff --git a/modules/mogo-module-tanlu/src/main/res/values/strings.xml b/modules/mogo-module-tanlu/src/main/res/values/strings.xml index ac9866e506..5a7a630ad3 100644 --- a/modules/mogo-module-tanlu/src/main/res/values/strings.xml +++ b/modules/mogo-module-tanlu/src/main/res/values/strings.xml @@ -33,9 +33,8 @@ 小智这就去查,您稍等一下 - 找不到相关地址 - 找不到地址,是小智不好 - 未找到其他车主分享的路况信息 + 找不到相关地址,试试换个说法 + 找不到地址,换个地址试试 From 084da50100c12402c26e005a831f3f9e14353800 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Wed, 21 Oct 2020 11:45:15 +0800 Subject: [PATCH 4/6] add ugc upload --- .../roadcondition/service/MainService.kt | 10 ++++++++++ .../src/main/AndroidManifest.xml | 8 ++++++++ .../v2x/receiver/UgcUploadStatusReceiver.kt | 20 +++++++++++++++++++ .../service/share/IMogoTanluProvider.java | 6 ++++++ 4 files changed, 44 insertions(+) create mode 100644 modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt index 7909e83a62..178dd150bb 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt @@ -218,6 +218,16 @@ class MainService : Service() { // sendBroadcast(intent) } + private fun sendUgcStatusReceiver(id: String?, type: String?, fromType: String?) { + Log.e("MainService", "sendUgcStatusReceiver ----> id = $id ---type = $type --fromType = $fromType ") + var intent = Intent() + intent.action = "com.zhidao.roadcondition.marker.info" + intent.putExtra("id", id) + intent.putExtra("type", type) + intent.putExtra("fromType", fromType) + sendBroadcast(intent) + } + /** * 初始化定位监听 */ diff --git a/modules/mogo-module-v2x/src/main/AndroidManifest.xml b/modules/mogo-module-v2x/src/main/AndroidManifest.xml index 341e0485ae..10181ad5df 100644 --- a/modules/mogo-module-v2x/src/main/AndroidManifest.xml +++ b/modules/mogo-module-v2x/src/main/AndroidManifest.xml @@ -16,6 +16,14 @@ + + + + + + + + diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt new file mode 100644 index 0000000000..e44b189c63 --- /dev/null +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt @@ -0,0 +1,20 @@ +package com.mogo.module.v2x.receiver + +import android.content.BroadcastReceiver +import android.content.Context +import android.content.Intent + +/** + * ugc上报反馈 + */ +class UgcUploadStatusReceiver : BroadcastReceiver() { + override fun onReceive(context: Context, intent: Intent) { + if (intent.action == "com.v2x.ugc.upload.status"){ + var status = intent.getStringExtra("id") + var type = intent.getStringExtra("type") + var fromType = intent.getStringExtra("fromType") + + + } + } +} diff --git a/services/mogo-service-api/src/main/java/com/mogo/service/share/IMogoTanluProvider.java b/services/mogo-service-api/src/main/java/com/mogo/service/share/IMogoTanluProvider.java index 994e811744..0bdca2ecf1 100644 --- a/services/mogo-service-api/src/main/java/com/mogo/service/share/IMogoTanluProvider.java +++ b/services/mogo-service-api/src/main/java/com/mogo/service/share/IMogoTanluProvider.java @@ -71,6 +71,12 @@ public interface IMogoTanluProvider extends IProvider { */ String UPLOAD_FROM_STRATEGY_ACCIDENT_AUTO = "5"; + /** + * 数据策略:UGC上报 + */ + String UPLOAD_FROM_STRATEGY_UGC = "6"; + + /** * 策略上报集合 */ From 1d80b8145ed44be13a43e9a9bfa16a1fc3a0c9da Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Wed, 21 Oct 2020 11:45:57 +0800 Subject: [PATCH 5/6] opt --- .../com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt index e44b189c63..dee4ecbb50 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt @@ -10,7 +10,7 @@ import android.content.Intent class UgcUploadStatusReceiver : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { if (intent.action == "com.v2x.ugc.upload.status"){ - var status = intent.getStringExtra("id") + var id = intent.getStringExtra("id") var type = intent.getStringExtra("type") var fromType = intent.getStringExtra("fromType") From eedede61d17f94f7df8d3454f26fb93e23b464c4 Mon Sep 17 00:00:00 2001 From: lixiaopeng Date: Wed, 21 Oct 2020 15:10:14 +0800 Subject: [PATCH 6/6] opt --- .../model/StrategyServiceModel.kt | 2 +- .../roadcondition/model/UploadResult.kt | 8 +++++ .../com/zhidao/roadcondition/net/HttpApi.kt | 3 +- .../service/CosStatusController.kt | 6 ++-- .../roadcondition/service/MainService.kt | 10 ------ .../service/MainServiceController.kt | 31 +++++++++++++++---- .../v2x/receiver/UgcUploadStatusReceiver.kt | 4 +-- 7 files changed, 41 insertions(+), 23 deletions(-) create mode 100644 libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/UploadResult.kt diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/StrategyServiceModel.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/StrategyServiceModel.kt index 8891def0ee..041b55efa7 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/StrategyServiceModel.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/StrategyServiceModel.kt @@ -58,7 +58,7 @@ class StrategyServiceModel : BaseRepository() { // } // } - suspend fun uploadInformation(informationBody: InformationBody): BaseResponse { + suspend fun uploadInformation(informationBody: InformationBody): BaseResponse { return apiCall { var informationBodyStr = Gson().toJson(informationBody) Log.d("MainServiceController", "uploadInformation informationBody = " + informationBodyStr) diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/UploadResult.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/UploadResult.kt new file mode 100644 index 0000000000..ad4644d0e0 --- /dev/null +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/model/UploadResult.kt @@ -0,0 +1,8 @@ +package com.zhidao.roadcondition.model + +/** + * 上报成功返回 + */ +class UploadResult(var id: Long) { + +} \ No newline at end of file diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/net/HttpApi.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/net/HttpApi.kt index 8fb8788c32..bc79a453c2 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/net/HttpApi.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/net/HttpApi.kt @@ -3,6 +3,7 @@ package com.zhidao.roadcondition.net import com.zhidao.roadcondition.model.BaseResponse import com.zhidao.roadcondition.model.CommonConfig import com.zhidao.roadcondition.model.Results +import com.zhidao.roadcondition.model.UploadResult import okhttp3.MultipartBody import okhttp3.ResponseBody import retrofit2.http.* @@ -19,7 +20,7 @@ interface HttpApi { //上报情报数据 @FormUrlEncoded @POST("/deva/car/path/no/addInfomation/v2") - suspend fun uploadInformation(@FieldMap information: Map): BaseResponse + suspend fun uploadInformation(@FieldMap information: Map): BaseResponse //获取所有配置 @GET("dataService/car/customConfig/no/getAll/v1") diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CosStatusController.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CosStatusController.kt index 62b9193271..a0a1be0287 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CosStatusController.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/CosStatusController.kt @@ -203,6 +203,7 @@ class CosStatusController : CosStatusCallback { //开始上传 entity?.isCustom?.let { mainServiceHttpModel.sendInformationMessage( + fromType = mFromType, type = type, url = map, isCustom = it, @@ -227,15 +228,14 @@ class CosStatusController : CosStatusCallback { } } } else { -// if (type == INFO_TYPE_VIDEO) { -// TipToast.shortTip("分享失败,请检查网络") -// } + } } } } + override fun onProgress(localPath: String?, progress: Float) { } diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt index 178dd150bb..7909e83a62 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainService.kt @@ -218,16 +218,6 @@ class MainService : Service() { // sendBroadcast(intent) } - private fun sendUgcStatusReceiver(id: String?, type: String?, fromType: String?) { - Log.e("MainService", "sendUgcStatusReceiver ----> id = $id ---type = $type --fromType = $fromType ") - var intent = Intent() - intent.action = "com.zhidao.roadcondition.marker.info" - intent.putExtra("id", id) - intent.putExtra("type", type) - intent.putExtra("fromType", fromType) - sendBroadcast(intent) - } - /** * 初始化定位监听 */ diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt index 19e07a22be..2631ca3bae 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/MainServiceController.kt @@ -1,11 +1,9 @@ package com.zhidao.roadcondition.service +import android.content.Intent import android.util.Log import com.mogo.commons.AbsMogoApplication -import com.zhidao.roadcondition.event.GetImageSuccessEvent -import com.zhidao.roadcondition.event.LatLngStickyEventBus import com.zhidao.roadcondition.model.* -import com.zhidao.roadcondition.model.proxy.INFO_TYPE_VIDEO import com.zhidao.roadcondition.net.request import com.zhidao.roadcondition.util.* import com.zhidao.roadcondition.util.StrategyPreferenceUtil.Companion.setStrategyFrequency @@ -25,6 +23,8 @@ class MainServiceController { //逆地理编码是否重试 private var geoRetryed = false + private var mFromType: String = "" + private var mPoiType: String = "" private val strategyeModel by lazy { StrategyServiceModel() } @@ -224,6 +224,7 @@ class MainServiceController { //上传情报数据 fun sendInformationMessage( type: Int, + fromType: String, url: Map, isCustom: Boolean = false, trafficInfoType:String = "", @@ -234,7 +235,10 @@ class MainServiceController { latitude: Double, customSend: ((Boolean) -> Unit)? = null ) { - Log.d(TAG, " sendInformationMessage poiType = $poiType") + Log.d(TAG, " sendInformationMessage poiType = $poiType -- fromType = $fromType") + mFromType = fromType + mPoiType = poiType + //删除测试数据 var locationInfo = LocationUtil.getInstance().getLocationInfo() if (locationInfo.address.isNullOrEmpty()) { @@ -297,12 +301,16 @@ class MainServiceController { customSend: ((Boolean) -> Unit)? = null ) { trackUploadServer(3) - request> { + request> { loader { strategyeModel.uploadInformation(informationBody) } onSuccess { - Log.i(TAG, "upload message success ") + if (it.result != null) { + Log.i(TAG, "upload message success id" + it.result.id) + sendUgcStatusReceiver(it.result.id, mPoiType, mFromType) + } + trackUploadServer(1) // CosStatusController().videoAndThumbMap.clear() customSend?.invoke(true) @@ -310,12 +318,23 @@ class MainServiceController { onError { Log.i(TAG, "$it upload message ${it.message}") trackUploadServer(2) + sendUgcStatusReceiver(0, mPoiType, mFromType) // CosStatusController().videoAndThumbMap.clear() customSend?.invoke(false) } } } + private fun sendUgcStatusReceiver(id: Long, type: String?, fromType: String?) { + Log.e(TAG, "sendUgcStatusReceiver ----> id = $id ---type = $type --fromType = $fromType ") + var intent = Intent() + intent.action = "com.v2x.ugc.upload.status" + intent.putExtra("id", id) + intent.putExtra("type", type) + intent.putExtra("fromType", fromType) + AbsMogoApplication.getApp().applicationContext.sendBroadcast(intent) + } + //上传服务器 private fun trackUploadServer(type: Int) { trackNormalEvent( diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt index dee4ecbb50..9463b6cdc0 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/receiver/UgcUploadStatusReceiver.kt @@ -3,6 +3,7 @@ package com.mogo.module.v2x.receiver import android.content.BroadcastReceiver import android.content.Context import android.content.Intent +import android.util.Log /** * ugc上报反馈 @@ -10,11 +11,10 @@ import android.content.Intent class UgcUploadStatusReceiver : BroadcastReceiver() { override fun onReceive(context: Context, intent: Intent) { if (intent.action == "com.v2x.ugc.upload.status"){ - var id = intent.getStringExtra("id") + var id = intent.getLongExtra("id", 0) var type = intent.getStringExtra("type") var fromType = intent.getStringExtra("fromType") - } } }