From 8047ee92cc5a5fb1431f6e3dba6a0fe6ea7af311 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 20 Feb 2020 15:46:39 +0800 Subject: [PATCH 1/4] opt --- .../map/impl/amap/AMapNaviViewWrapper.java | 2 +- .../map_api_ic_current_location2.png | Bin 0 -> 3402 bytes .../map_api_ic_current_location2.png.png | Bin 0 -> 6387 bytes .../module/service/MogoServiceProvider.java | 29 ++++++++++++++++-- .../com/mogo/module/service/ServiceConst.java | 10 ++++++ 5 files changed, 38 insertions(+), 3 deletions(-) create mode 100644 libraries/mogo-map-api/src/main/res/drawable-ldpi/map_api_ic_current_location2.png create mode 100644 libraries/mogo-map-api/src/main/res/drawable-xhdpi/map_api_ic_current_location2.png.png diff --git a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java index 11e59c1985..0d04aa102c 100644 --- a/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java +++ b/libraries/map-amap/src/main/java/com/mogo/map/impl/amap/AMapNaviViewWrapper.java @@ -431,7 +431,7 @@ public class AMapNaviViewWrapper implements IMogoMapView, style.strokeWidth(0); style.radiusFillColor( Color.TRANSPARENT ); style.myLocationIcon( - BitmapDescriptorFactory.fromResource(R.drawable.map_api_ic_current_location)); + BitmapDescriptorFactory.fromResource(R.drawable.map_api_ic_current_location2)); mMapView.getMap().setMyLocationStyle(style); } } diff --git a/libraries/mogo-map-api/src/main/res/drawable-ldpi/map_api_ic_current_location2.png b/libraries/mogo-map-api/src/main/res/drawable-ldpi/map_api_ic_current_location2.png new file mode 100644 index 0000000000000000000000000000000000000000..d60bb483360defd39d69b66f9850aad0d0799cd5 GIT binary patch literal 3402 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 Q{>32CRyR + * 说明:第一次地位成功,因为网络问题,导致请求失败,则在其他策略请求之前,尝试10s请求一次。 + */ + private boolean mLoopRequest = false; + + /** + * 刷新补偿间隔 + */ + private long mLoopInterval = 10_000L; + private Handler mHandler = new Handler( Looper.getMainLooper() ) { @Override public void handleMessage( @NonNull Message msg ) { @@ -127,7 +139,7 @@ public class MogoServiceProvider implements IMogoModuleProvider, if ( mRefreshRemainingTime == 0 ) { Logger.d( TAG, "move to center and refresh data." ); mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, false ); - mUiController.moveToCenter( mLastAutoRefreshLocation ); + mUiController.recoverLockMode(); mStatusManager.setUserInteractionStatus( TAG, true, false ); mUiController.changeZoom( 16.0f ); notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback ); @@ -135,6 +147,12 @@ public class MogoServiceProvider implements IMogoModuleProvider, mHandler.sendEmptyMessageDelayed( msg.what, ServiceConst.DECREASE_INTERVAL ); } break; + case ServiceConst.MSG_LOOP_REQUEST: + if ( mLoopRequest ) { + Logger.d( TAG, "补偿刷新触发" ); + notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback ); + } + break; } } }; @@ -156,6 +174,7 @@ public class MogoServiceProvider implements IMogoModuleProvider, private RefreshCallback mCustomRefreshCallback = new RefreshCallback() { @Override public void onSuccess() { + mLoopRequest = false; mRefreshRemainingTimeStatus = false; // 用户手动操作地图刷新成功后,设置状态为 true,引发延时策略 mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, true ); @@ -173,12 +192,17 @@ public class MogoServiceProvider implements IMogoModuleProvider, private RefreshCallback mAutoRefreshCallback = new RefreshCallback() { @Override public void onSuccess() { + mLoopRequest = false; invokeAutoRefreshStrategy(); } @Override public void onFail() { - invokeAutoRefreshStrategy(); + if ( mLoopRequest ) { + mHandler.sendEmptyMessageDelayed( ServiceConst.MSG_LOOP_REQUEST, ServiceConst.LOOP_INTERVAL ); + } else { + invokeAutoRefreshStrategy(); + } } private void invokeAutoRefreshStrategy() { @@ -480,6 +504,7 @@ public class MogoServiceProvider implements IMogoModuleProvider, final MogoLatLng point = new MogoLatLng( location.getLatitude(), location.getLongitude() ); if ( mLastAutoRefreshLocation == null ) { mLastAutoRefreshLocation = point; + mLoopRequest = true; notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback ); return; } diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/ServiceConst.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/ServiceConst.java index 596b6507b5..c0533b0b1b 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/ServiceConst.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/ServiceConst.java @@ -27,6 +27,16 @@ public class ServiceConst { */ public static final int DECREASE_INTERVAL = 1_000; + /** + * 刷新失败补偿消息 + */ + public static final int MSG_LOOP_REQUEST = 10_000; + + /** + * 刷新失败补偿时间间隔 + */ + public static final int LOOP_INTERVAL = 10_000; + /** * 卡片 车聊聊 */ From b7244156989878bd19b1df32ca6074bb0d1eeaca Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 20 Feb 2020 15:48:28 +0800 Subject: [PATCH 2/4] rename file --- ...on2.png.png => map_api_ic_current_location2.png} | Bin 1 file changed, 0 insertions(+), 0 deletions(-) rename libraries/mogo-map-api/src/main/res/drawable-xhdpi/{map_api_ic_current_location2.png.png => map_api_ic_current_location2.png} (100%) diff --git a/libraries/mogo-map-api/src/main/res/drawable-xhdpi/map_api_ic_current_location2.png.png b/libraries/mogo-map-api/src/main/res/drawable-xhdpi/map_api_ic_current_location2.png similarity index 100% rename from libraries/mogo-map-api/src/main/res/drawable-xhdpi/map_api_ic_current_location2.png.png rename to libraries/mogo-map-api/src/main/res/drawable-xhdpi/map_api_ic_current_location2.png From 0912ca32f1cd0e93ec82ee5b204465fa33692fab Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 20 Feb 2020 15:58:42 +0800 Subject: [PATCH 3/4] fix: refresh logic, etc. --- .../com/mogo/module/service/MogoServiceProvider.java | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java index 8b02b328c2..23466988e7 100644 --- a/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java +++ b/modules/mogo-module-service/src/main/java/com/mogo/module/service/MogoServiceProvider.java @@ -508,11 +508,13 @@ public class MogoServiceProvider implements IMogoModuleProvider, notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback ); return; } - mLastAutoRefreshLocation = point; - float distance = Utils.calculateLineDistance( mLastAutoRefreshLocation, new MogoLatLng( location.getLatitude(), location.getLongitude() ) ); + float distance = Utils.calculateLineDistance( mLastAutoRefreshLocation, point ); if ( distance > mAutoRefreshStrategy.getDistance() ) { - mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, true ); - mUiController.moveToCenter( mLastAutoRefreshLocation ); + mStatusManager.setUserInteractionStatus( ServiceConst.TYPE, true, false ); + mUiController.recoverLockMode(); + mStatusManager.setUserInteractionStatus( TAG, true, false ); + mUiController.changeZoom( 16.0f ); + mLastAutoRefreshLocation = point; notifyRefreshData( mLastAutoRefreshLocation, getQueryRadius(), mAutoRefreshCallback ); } } From ea89428fa096b7ed6a96209be7ca24f2a6642984 Mon Sep 17 00:00:00 2001 From: wangcongtao Date: Thu, 20 Feb 2020 18:06:27 +0800 Subject: [PATCH 4/4] replace push sdk --- config.gradle | 2 +- .../connection/socket/IMessageResponse.java | 17 +++++++++++++++++ .../mogo/connection/socket/SocketManager.java | 10 +++++++--- .../module_main_card_cover_up_bottom.png | Bin 918 -> 1439 bytes 4 files changed, 25 insertions(+), 4 deletions(-) create mode 100644 foudations/mogo-connection/src/main/java/com/mogo/connection/socket/IMessageResponse.java diff --git a/config.gradle b/config.gradle index cf46b9673d..576e8d43c0 100644 --- a/config.gradle +++ b/config.gradle @@ -112,7 +112,7 @@ ext { //统一返回键 mogomoduleback : "com.mogo.module:module-back:${MOGO_MODULE_BACK_VERSION}", // 长链 - socketsdk : 'com.zhidao.socketsdk:socketsdk:2.1.0', + socketsdk : 'com.zhidao.socketsdk:socketsdk:2.1.1', socketsdkconnsvrprotoco : 'com.zhidao.ptech:connsvr-protoco:0.1.23', socketsdkprotobufjava : 'com.google.protobuf:protobuf-java:3.5.1', diff --git a/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/IMessageResponse.java b/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/IMessageResponse.java new file mode 100644 index 0000000000..58dad71fea --- /dev/null +++ b/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/IMessageResponse.java @@ -0,0 +1,17 @@ +package com.mogo.connection.socket; + +/** + * @author congtaowang + * @since 2020-02-20 + *

+ * 长链接口数据接口 + */ +public interface IMessageResponse { + + /** + * 设置消息id + * + * @param msgId + */ + void setMsgId( long msgId ); +} diff --git a/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java b/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java index 6aad984e2c..dc9cda6d68 100644 --- a/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java +++ b/foudations/mogo-connection/src/main/java/com/mogo/connection/socket/SocketManager.java @@ -82,7 +82,7 @@ public class SocketManager implements IMogoSocketManager, OnSocketReceiveCallbac } @Override - public void onMessageReceived( byte[] content ) { + public void onMessageReceived( byte[] content, long msgId ) { try { MogoConnsvr.Payload payload = MogoConnsvr.Payload.parseFrom( content ); int msgType = payload.getMsgType(); @@ -93,8 +93,12 @@ public class SocketManager implements IMogoSocketManager, OnSocketReceiveCallbac while ( iterator.hasNext() ) { IMogoOnMessageListener listener = iterator.next(); if ( listener != null ) { - Logger.d(TAG, "received msg ==" + payload.getPayload().toStringUtf8()); - listener.onMsgReceived( GsonUtil.objectFromJson( payload.getPayload().toStringUtf8(), listener.target() ) ); + Object obj = GsonUtil.objectFromJson( payload.getPayload().toStringUtf8(), listener.target() ); + if ( obj instanceof IMessageResponse ) { + ( ( IMessageResponse ) obj ).setMsgId( msgId ); + } + Logger.d(TAG, "received msg == %s, msgId = %s", payload.getPayload().toStringUtf8(), msgId); + listener.onMsgReceived( obj ); } } } diff --git a/modules/mogo-module-main/src/main/res/drawable/module_main_card_cover_up_bottom.png b/modules/mogo-module-main/src/main/res/drawable/module_main_card_cover_up_bottom.png index e90b7ffae8addfbd83ecc2ab0a129ea030af859f..09b0022e6d2370896256a51efada8bec14104ce5 100644 GIT binary patch literal 1439 zcmYLJc~sI_6h_NEg)uB8w=|To)K)94RMatC!4;hxx3Ux+8*@Y_TvDs!77qQ)Edec# zMV8`-lw0b|X*+Ln@&-RJJHx@N-8)9t;`IK_Dt27+2?jRHcP+?{kJ{413;{^VRbh z-@)RekF94P#%X!~nvX@L;tI?ra-#@72;CY0jZ;>##<`%Ew~^)obJ6e`te#a@1)9AU z1TgdF@{3Tsjx%Tfky7Um6khK$rVNN2rDFBO_85@AvF zJ-5A1=h&D8)>SvasrEmw)K|5p&=!P(jbvC$N4Li8*P`qgPP%&r2c=0+GL;#E`buU$-6mO-wccI_@??snxpX%!nY@PkKhPXoFl}P{F(_T~ta`g6tCFipfnu0z*C<*ZzpTDK zd>N_2kj7tyLdPf5XTr#AV)AN$RY^jmK7ZRRm;_gR?o_621ex~{#I#&#OTEoC|^%Z7{m%04wyS&n}Uv zP_gTLT2j)=B_Uf#Gw)lComAWTVbBiz5ZSl%R-Z^UX5FoBn6|GISrWn*NZ3XjBB?nD zEZMuoR?zBAl%&TgYN8t`H)H+TZ-uCbH=Z8p5QX%pnTHdEi4_(&tRJox>d9}0dLaHv zv`=(n6*omh=FywbS9BDH^Y6^&W)EhzcO4?B_w!C1+&GchA{zGu`8t<(>SZ>FMnxZ) z>0rg~g3GrJv^-mbuRY6AbOm4u>tS^W!kcP<_B&6Hym_B6%BL(!^pK9TY9#%Yt?TJV zr3sSvTme@Is4#-LItY0;WjSr#Jny#fZENAg;kW=2Z+IU+WjJH{S@hY1TihyGcUITd zs+vm}lKdyLE(*KYg?4U>8}jw?nm;w&w$TarTo1>2sJ$r)^c^rM8|Tnq`pr<%9?*S< zTwNH-vy&R54GIbU)bcOBjVmyyZIMIZo-wSX$$g7E8ij=ey3BvHO#q#)P3b+Segd=kHV=<;&lR zp|P4u9~D4URaL2t$j0D=LYfXrxdtjHhS0dlDY+eaaU`W}*m=iM-U$7rw9aiK7(}3-d-H`Ti_>^Ti=9hwAb;JWfK>I Mar1F~fR4!i7pb3h5C8xG literal 918 zcmeAS@N?(olHy`uVBq!ia0y~yVDbX8WjNS?MUU zvaOGm^>1zQ|2%KsRG7`KmFso;zDSFOLqNfyfq{`}I@9H~H|%%YY;yjYYq9WJ{KuaZLO>bsgIj6DoWZsox3#j87 zdBslXOqrPxr`HsuvRu9}P5o8Q#V1ptmTm}Sn%P)3%g1E@$HMR5l9#?SFMJn#V zWS9eFMNiCJ!sB^=+WYtO7fk6DoHp;sv*at{m2040XL+~5q0Ya$yi#rD-s|@kTrqP? zsFMFJzsN54{7oT9=&-!&aM0`DBF?B;f8|VD?uG0zU^3tw;VdA!;N_=_O_uD&roS{y02u~1u_&odj zlhQu@y02w({jA>qy=+Iy?IcKO9(XG_!%T9?i;iygrD-L{UENn2 z!@?=6QS0VnuYfL>>A~@G8+QLW$P__~{7vpN?@g;(DKur)KmO#`jJv&WlyQQ? zukjJnOjD!c5Y4N=*x7yG@KLkY;%l0)M50)5A*D}C?rQjjzNx$9kDZ8jU0b(S%gIU= z661M`9L}kvdi;tkE@*C<&f)$2v09wl-F215ztkWK%$yYVv)4uxtE~)`QPJ2c-hJSU z#kcvcUmfm>9i0a8?T%FrdiEtUj4OXsdH$C^u)uMptP9JsIgzI>d{M}1TlQz&m8fGv z*Fz!cxN)}ng#S^e)3>KuoD$vcudKlPulv{jO)^FEB3HHs0y7$er>mdKI;Vst0M?3P AdjJ3c