diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/MogoTanluApiProvider.java b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/MogoTanluApiProvider.java index 56b30bee6f..66ea04be90 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/MogoTanluApiProvider.java +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/MogoTanluApiProvider.java @@ -5,6 +5,8 @@ import android.util.ArrayMap; import com.alibaba.android.arouter.facade.annotation.Route; import com.mogo.commons.analytics.AnalyticsUtils; +import com.mogo.map.location.MogoLocation; +import com.mogo.module.common.MogoApisHandler; import com.mogo.service.share.IMogoTanluProvider; import com.mogo.service.share.TanluUploadParams; import com.mogo.utils.logger.Logger; @@ -38,9 +40,10 @@ public class MogoTanluApiProvider implements IMogoTanluProvider { properties.put("type", params.getEventType()); properties.put("from", params.getFromType()); AnalyticsUtils.track("v2x_share_type", properties); + MogoLocation location = MogoApisHandler.getInstance().getApis().getMapServiceApi().getSingletonLocationClient(context).getLastKnowLocation(); MainService.Companion.launchService(context, new UploadParams(params.getEventType(), params.getFromType(), params.getDuration(), params.getParentId(), - params.getLocation().lat, params.getLocation().lon)); + params.getLocation().lat, params.getLocation().lon, location.getAddress(), location.getBearing(), location.getAdCode(), location.getCityCode())); }else{ Logger.e(API_MODULE_NAME,"params为空,无法上报情报"); } diff --git a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/UploadParams.kt b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/UploadParams.kt index 3cd50e64a8..4dcef19944 100644 --- a/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/UploadParams.kt +++ b/libraries/tanlulib/src/main/java/com/zhidao/roadcondition/service/UploadParams.kt @@ -3,14 +3,18 @@ package com.zhidao.roadcondition.service import android.os.Parcel import android.os.Parcelable -class UploadParams(val eventType: String, val fromType: String, val duration: Int, val parentId: Long, val lat: Double, val lon: Double) : Parcelable { +class UploadParams(val eventType: String, val fromType: String, val duration: Int, val parentId: Long, val lat: Double, val lon: Double,val addr:String,val direction:Float,val areaCode:String,val cityCode:String) : Parcelable { constructor(parcel: Parcel) : this( parcel.readString()!!, parcel.readString()!!, parcel.readInt(), parcel.readLong(), parcel.readDouble(), - parcel.readDouble() + parcel.readDouble(), + parcel.readString()!!, + parcel.readFloat(), + parcel.readString()!!, + parcel.readString()!! ) override fun writeToParcel(parcel: Parcel, flags: Int) { @@ -20,6 +24,10 @@ class UploadParams(val eventType: String, val fromType: String, val duration: In parcel.writeLong(parentId) parcel.writeDouble(lat) parcel.writeDouble(lon) + parcel.writeString(addr) + parcel.writeFloat(direction) + parcel.writeString(areaCode) + parcel.writeString(cityCode) } @@ -28,7 +36,7 @@ class UploadParams(val eventType: String, val fromType: String, val duration: In } override fun toString(): String { - return "UploadParams(eventType='$eventType', fromType='$fromType', duration=$duration, parentId='$parentId', lat=$lat, lon=$lon)" + return "UploadParams(eventType='$eventType', fromType='$fromType', duration=$duration, parentId=$parentId, lat=$lat, lon=$lon, addr='$addr', direction=$direction, areaCode='$areaCode', cityCode='$cityCode')" }