From 0fb76529fce6575ef61a8e51f0b8835079b46446 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 17 Aug 2020 15:05:59 +0800 Subject: [PATCH 1/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=20=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E6=B1=82=E5=8A=A9=20=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v2x/adapter/holder/V2XOtherSeekHelpVH.java | 16 ++++++---------- 1 file changed, 6 insertions(+), 10 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java index 537f4f2b45..c3d8ad9a00 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java @@ -60,11 +60,6 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { // 语音控制拨打电话 private V2XVoiceCallbackListener mCallChartingCb = (command, intent) -> { try { - mUserInfo.setSn(mV2XPushMessageEntity.getSn()); - mUserInfo.setUserHead(mV2XPushMessageEntity.getHeadImgUrl()); - mUserInfo.setUserName(mV2XPushMessageEntity.getDisplayName()); - mUserInfo.setGender(mV2XPushMessageEntity.getSex()); - mUserInfo.setAge(30); mNoveltyInfo.setUserInfo(mUserInfo); triggerCallChart(mNoveltyInfo); } catch (Exception e) { @@ -120,6 +115,12 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { public void initView(V2XEventShowEntity v2XEventShowEntity) { mV2XPushMessageEntity = v2XEventShowEntity.getV2XPushMessageEntity(); try { + mUserInfo.setSn(mV2XPushMessageEntity.getSn()); + mUserInfo.setUserHead(mV2XPushMessageEntity.getHeadImgUrl()); + mUserInfo.setUserName(mV2XPushMessageEntity.getDisplayName()); + mUserInfo.setGender(mV2XPushMessageEntity.getSex()); + mUserInfo.setAge(30); + MarkerLocation markerLocation = new MarkerLocation(); markerLocation.setLon(mV2XPushMessageEntity.getLon()); markerLocation.setLat(mV2XPushMessageEntity.getLat()); @@ -151,11 +152,6 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { V2XServiceManager.getV2XRefreshModel().respondingToHelp(mUserInfo.getSn()); if (!V2XUtils.isFastClick()) { try { - mUserInfo.setSn(mV2XPushMessageEntity.getSn()); - mUserInfo.setUserHead(mV2XPushMessageEntity.getHeadImgUrl()); - mUserInfo.setUserName(mV2XPushMessageEntity.getDisplayName()); - mUserInfo.setGender(mV2XPushMessageEntity.getSex()); - mUserInfo.setAge(mV2XPushMessageEntity.getAge()); mNoveltyInfo.setUserInfo(mUserInfo); triggerCallChart(mNoveltyInfo); } catch (Exception e) { From 80a3d83cec0398121d9c6b983293d5ee978e218b Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 17 Aug 2020 15:11:47 +0800 Subject: [PATCH 2/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=20=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E6=B1=82=E5=8A=A9=20=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/module/v2x/network/V2XRefreshModel.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java index 947cdffe39..10fd5089d6 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java @@ -528,9 +528,9 @@ public class V2XRefreshModel { final Map map = new ParamsProvider.Builder(mContext).build(); String json = new StringBuilder() .append("{") - .append("\"seekHelpSn\":").append(seekHelpSn) + .append("\"seekHelpSn\":").append("\"" + seekHelpSn + "\"") .append(",") - .append("\"enthusiasticSn\":").append(Utils.getSn()) + .append("\"enthusiasticSn\":").append("\"" + Utils.getSn() + "\"") .append("}").toString(); map.put("data", json); mV2XApiService.respondingToHelp(map).subscribeOn(Schedulers.io()) From 49c5fdb624575beaefcbc3c9ba9a557877ba49f7 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 17 Aug 2020 15:23:52 +0800 Subject: [PATCH 3/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=20=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E6=B1=82=E5=8A=A9=20=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../java/com/mogo/module/v2x/network/V2XRefreshModel.java | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java index 10fd5089d6..947cdffe39 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/network/V2XRefreshModel.java @@ -528,9 +528,9 @@ public class V2XRefreshModel { final Map map = new ParamsProvider.Builder(mContext).build(); String json = new StringBuilder() .append("{") - .append("\"seekHelpSn\":").append("\"" + seekHelpSn + "\"") + .append("\"seekHelpSn\":").append(seekHelpSn) .append(",") - .append("\"enthusiasticSn\":").append("\"" + Utils.getSn() + "\"") + .append("\"enthusiasticSn\":").append(Utils.getSn()) .append("}").toString(); map.put("data", json); mV2XApiService.respondingToHelp(map).subscribeOn(Schedulers.io()) From b85c86290bdbd417dccc3bb2123a687cf6c0eb08 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E8=91=A3=E5=AE=8F=E5=AE=87?= Date: Mon, 17 Aug 2020 16:41:26 +0800 Subject: [PATCH 4/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E4=BA=86=20=E5=93=8D?= =?UTF-8?q?=E5=BA=94=E6=B1=82=E5=8A=A9=20=E6=8E=A5=E5=8F=A3=E8=B0=83?= =?UTF-8?q?=E7=94=A8=E5=A4=B1=E8=B4=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../v2x/adapter/holder/V2XOtherSeekHelpVH.java | 2 +- .../holder/V2XScenarioHistoryOtherSeekHelpVH.java | 13 +++++++------ 2 files changed, 8 insertions(+), 7 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java index c3d8ad9a00..5bfa90b97d 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java @@ -120,6 +120,7 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { mUserInfo.setUserName(mV2XPushMessageEntity.getDisplayName()); mUserInfo.setGender(mV2XPushMessageEntity.getSex()); mUserInfo.setAge(30); + mNoveltyInfo.setUserInfo(mUserInfo); MarkerLocation markerLocation = new MarkerLocation(); markerLocation.setLon(mV2XPushMessageEntity.getLon()); @@ -152,7 +153,6 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { V2XServiceManager.getV2XRefreshModel().respondingToHelp(mUserInfo.getSn()); if (!V2XUtils.isFastClick()) { try { - mNoveltyInfo.setUserInfo(mUserInfo); triggerCallChart(mNoveltyInfo); } catch (Exception e) { e.printStackTrace(); diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java index b8b3d16bba..a615f11240 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java @@ -73,6 +73,13 @@ public class V2XScenarioHistoryOtherSeekHelpVH extends V2XBaseViewHolder Date: Mon, 17 Aug 2020 17:04:12 +0800 Subject: [PATCH 5/7] =?UTF-8?q?=E4=BF=AE=E5=A4=8D=E5=9B=A0=E5=88=9A?= =?UTF-8?q?=E6=89=8D=E4=BF=AE=E6=94=B9=E5=AF=BC=E8=87=B4=E7=9A=84=E5=B1=95?= =?UTF-8?q?=E7=A4=BA=E5=BC=82=E5=B8=B8?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java | 2 +- .../v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java index 5bfa90b97d..ff0feaf3de 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XOtherSeekHelpVH.java @@ -120,13 +120,13 @@ public class V2XOtherSeekHelpVH extends V2XBaseViewHolder { mUserInfo.setUserName(mV2XPushMessageEntity.getDisplayName()); mUserInfo.setGender(mV2XPushMessageEntity.getSex()); mUserInfo.setAge(30); - mNoveltyInfo.setUserInfo(mUserInfo); MarkerLocation markerLocation = new MarkerLocation(); markerLocation.setLon(mV2XPushMessageEntity.getLon()); markerLocation.setLat(mV2XPushMessageEntity.getLat()); mNoveltyInfo = new MarkerExploreWay(); mNoveltyInfo.setLocation(markerLocation); + mNoveltyInfo.setUserInfo(mUserInfo); } catch (Exception e) { e.printStackTrace(); } diff --git a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java index a615f11240..8d87d3a058 100644 --- a/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java +++ b/modules/mogo-module-v2x/src/main/java/com/mogo/module/v2x/adapter/holder/V2XScenarioHistoryOtherSeekHelpVH.java @@ -78,7 +78,6 @@ public class V2XScenarioHistoryOtherSeekHelpVH extends V2XBaseViewHolder Date: Mon, 17 Aug 2020 19:22:06 +0800 Subject: [PATCH 6/7] opt --- .../src/main/res/values-xhdpi-1920x1000/dimens.xml | 6 +++--- .../mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml | 6 +++--- modules/mogo-module-v2x/src/main/res/values/dimens.xml | 6 +++--- 3 files changed, 9 insertions(+), 9 deletions(-) diff --git a/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml b/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml index 8afec4fc0b..6accb83b34 100644 --- a/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml +++ b/modules/mogo-module-v2x/src/main/res/values-xhdpi-1920x1000/dimens.xml @@ -31,15 +31,15 @@ 40px 90px 36px - 58px + 50px 15px 150px 48px 32px - 70px + 123px 10px 20px - 200px + 190px 173px 43px 26px diff --git a/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml b/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml index 80c6a08895..4ef9d0bc3e 100644 --- a/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml +++ b/modules/mogo-module-v2x/src/main/res/values-xhdpi/dimens.xml @@ -32,15 +32,15 @@ 40px 90px 36px - 58px + 50px 15px 150px 48px 32px - 70px + 123px 10px 20px - 200px + 190px 173px 43px 26px diff --git a/modules/mogo-module-v2x/src/main/res/values/dimens.xml b/modules/mogo-module-v2x/src/main/res/values/dimens.xml index c584c71ae4..fdc062957b 100644 --- a/modules/mogo-module-v2x/src/main/res/values/dimens.xml +++ b/modules/mogo-module-v2x/src/main/res/values/dimens.xml @@ -34,15 +34,15 @@ 40px 90px 36px - 58px + 50px 15px 150px 48px 32px - 70px + 123px 10px 20px - 200px + 190px 173px 43px 26px From 7ebc0b086214e8dadaadc7d47e746062e8bf17c6 Mon Sep 17 00:00:00 2001 From: tongchenfei Date: Tue, 18 Aug 2020 13:11:07 +0800 Subject: [PATCH 7/7] opt --- modules/mogo-module-monitor/build.gradle | 3 +- .../mogo/module/monitor/MogoMonitorConst.java | 14 ++++ .../module/monitor/MogoMonitorProvider.java | 81 +++++++------------ .../monitor/bean/RemoteLogPushContent.java | 53 ++++++++++++ .../monitor/dialog/ILogDialogListener.java | 17 ++++ .../module/monitor/dialog/LogDebugDialog.java | 46 +++++++++++ .../main/res/drawable/log_debug_dialog_bg.xml | 13 +++ .../res/drawable/log_debug_retry_btn_bg.xml | 17 ++++ .../res/drawable/log_debug_start_btn_bg.xml | 17 ++++ .../res/drawable/log_debug_stop_btn_bg.xml | 17 ++++ .../src/main/res/layout/dialog_log_debug.xml | 76 +++++++++++++++++ .../com/mogo/module/share/ShareControl.java | 1 + 12 files changed, 303 insertions(+), 52 deletions(-) create mode 100644 modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/bean/RemoteLogPushContent.java create mode 100644 modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/ILogDialogListener.java create mode 100644 modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/LogDebugDialog.java create mode 100644 modules/mogo-module-monitor/src/main/res/drawable/log_debug_dialog_bg.xml create mode 100644 modules/mogo-module-monitor/src/main/res/drawable/log_debug_retry_btn_bg.xml create mode 100644 modules/mogo-module-monitor/src/main/res/drawable/log_debug_start_btn_bg.xml create mode 100644 modules/mogo-module-monitor/src/main/res/drawable/log_debug_stop_btn_bg.xml create mode 100644 modules/mogo-module-monitor/src/main/res/layout/dialog_log_debug.xml diff --git a/modules/mogo-module-monitor/build.gradle b/modules/mogo-module-monitor/build.gradle index d91c74e164..02099054e3 100644 --- a/modules/mogo-module-monitor/build.gradle +++ b/modules/mogo-module-monitor/build.gradle @@ -35,7 +35,8 @@ android { dependencies { implementation fileTree(dir: 'libs', include: ['*.jar']) - implementation rootProject.ext.dependencies.mogologlib + implementation rootProject.ext.dependencies.androidxappcompat + implementation rootProject.ext.dependencies.androidxconstraintlayout implementation rootProject.ext.dependencies.arouter annotationProcessor rootProject.ext.dependencies.aroutercompiler if (Boolean.valueOf(RELEASE)) { diff --git a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorConst.java b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorConst.java index 41e54354ae..138952c65e 100644 --- a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorConst.java +++ b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorConst.java @@ -8,4 +8,18 @@ class MogoMonitorConst { public static final int START_CATCH_LOG = 1; public static final int STOP_CATCH_LOG = 2; + /** + * 本应用设置,打开日志 + */ + public static final int LOCAL_CONFIG_OPEN_LOG = 3; + /** + * 本应用设置,关闭日志 + */ + public static final int LOCAL_CONFIG_CLOSE_LOG = 4; + + + public static final String BROADCAST_START_CATCH_LOG = "com.mogo.controller.action" + + ".START_CATCH_LOG"; + public static final String BROADCAST_STOP_CATCH_LOG = "com.mogo.controller.action" + + ".STOP_CATCH_LOG"; } diff --git a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorProvider.java b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorProvider.java index 5cee06832c..83e03c85bb 100644 --- a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorProvider.java +++ b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/MogoMonitorProvider.java @@ -1,58 +1,53 @@ package com.zhidao.mogo.module.monitor; import android.content.Context; +import android.content.Intent; import android.util.ArrayMap; import com.alibaba.android.arouter.facade.annotation.Route; import com.alibaba.android.arouter.launcher.ARouter; +import com.mogo.commons.debug.DebugConfig; import com.mogo.service.IMogoServiceApis; import com.mogo.service.MogoServicePaths; import com.mogo.service.connection.IMogoOnMessageListener; import com.mogo.service.monitor.IMogoMonitorProvider; import com.mogo.utils.logger.LogLevel; import com.mogo.utils.logger.Logger; -import com.zhidao.loglib.ILogListener; -import com.zhidao.loglib.LogInfoManager; -import com.zhidao.loglib.bean.RemoteLogPushContent; -import com.zhidao.loglib.dialog.ILogDialogListener; -import com.zhidao.loglib.upload.UploadManager; -import com.zhidao.loglib.util.Constant; -import com.zhidao.loglib.util.LogInfoManagerFactory; -import com.zhidao.loglib.util.LoggingNotice; +import com.mogo.utils.network.NetConfig; +import com.zhidao.mogo.module.monitor.bean.RemoteLogPushContent; +import com.zhidao.mogo.module.monitor.dialog.ILogDialogListener; +import com.zhidao.mogo.module.monitor.dialog.LogDebugDialog; import java.util.Map; /** * 应用监控模块provider + * * @author tongchenfei */ @Route(path = MogoMonitorConst.MODULE_PATH) -public class MogoMonitorProvider implements IMogoMonitorProvider, IMogoOnMessageListener, ILogDialogListener , ILogListener { +public class MogoMonitorProvider implements IMogoMonitorProvider, + IMogoOnMessageListener, ILogDialogListener { private static final String TAG = MogoMonitorConst.MODULE_NAME; - private LogInfoManager manualCatchLog = null; - private Map managerCache = new ArrayMap<>(); private Context context; - + private LogDebugDialog logDebugDialog; @Override public void showLogDebugDialog() { - if (manualCatchLog == null) { - manualCatchLog = LogInfoManagerFactory.createManualLogInfoManager(context,this); - } - manualCatchLog.showDebugWindow().setDialogListener(this); + logDebugDialog.show(); } @Override public void init(Context context) { IMogoServiceApis apis = (IMogoServiceApis) ARouter.getInstance().build(MogoServicePaths.PATH_SERVICE_APIS).navigation(context); - apis.getSocketManagerApi(context).registerOnMessageListener(MogoMonitorConst.LOG_PUSH_TYPE,this); + apis.getSocketManagerApi(context).registerOnMessageListener(MogoMonitorConst.LOG_PUSH_TYPE, this); } @Override public void resetActivityContext(Context context) { this.context = context; - UploadManager.getInstance().init(context); - LoggingNotice.getInstance().init(context); + logDebugDialog = new LogDebugDialog(context); + logDebugDialog.setDialogListener(this); } @Override @@ -63,23 +58,17 @@ public class MogoMonitorProvider implements IMogoMonitorProvider, IMogoOnMessage @Override public void onMsgReceived(RemoteLogPushContent obj) { Logger.d(TAG, "收到push消息: " + obj); - switch (obj.getType()){ + switch (obj.getType()) { case MogoMonitorConst.START_CATCH_LOG: - if (managerCache.containsKey(obj.getPkgName())) { - Logger.d(TAG, "这个包名的日志正在抓了: " + obj); - return; - } - openLoggerLevel(); - LogInfoManager infoManager = - LogInfoManagerFactory.createPushLogInfoManager(context, obj,this); - infoManager.start(); - managerCache.put(obj.getPkgName(), infoManager); + onLogStart(); break; case MogoMonitorConst.STOP_CATCH_LOG: - LogInfoManager stopManager = managerCache.remove(obj.getPkgName()); - if (stopManager != null) { - stopManager.stop(); - } + onLogStop(); + break; + case MogoMonitorConst.LOCAL_CONFIG_OPEN_LOG: + openLoggerLevel(); + break; + case MogoMonitorConst.LOCAL_CONFIG_CLOSE_LOG: closeLoggerLevel(); break; default: @@ -90,41 +79,31 @@ public class MogoMonitorProvider implements IMogoMonitorProvider, IMogoOnMessage @Override public void onLogStart() { // 这个是通过对话框点击开始的回调 - isInManualCatchLog = true; + Logger.d(TAG,"开始抓取日志===="); + context.sendBroadcast(new Intent(MogoMonitorConst.BROADCAST_START_CATCH_LOG)); openLoggerLevel(); } @Override public void onLogStop() { // 这个是通过对话框点击结束的回调 - isInManualCatchLog = false; + Logger.d(TAG,"结束抓取日志===="); + context.sendBroadcast(new Intent(MogoMonitorConst.BROADCAST_STOP_CATCH_LOG)); closeLoggerLevel(); } - private boolean isInManualCatchLog = false; /** * 放开Logger的限制 */ - private void openLoggerLevel(){ + private void openLoggerLevel() { Logger.init(LogLevel.DEBUG); } /** * 根据状态收紧Logger的限制 */ - private void closeLoggerLevel(){ - if (!isInManualCatchLog && managerCache.size() == 0) { - Logger.init( BuildConfig.DEBUG ? LogLevel.DEBUG : LogLevel.OFF ); - } - } - - @Override - public void onClose(String pkgName) { - if (pkgName.equals(Constant.MANUAL_PKG_NAME)) { - onLogStop(); - }else{ - LogInfoManager stopManager = managerCache.remove(pkgName); - closeLoggerLevel(); - } + private void closeLoggerLevel() { + Logger.init(DebugConfig.isDebug() ? LogLevel.DEBUG : LogLevel.OFF); + NetConfig.instance().setLoggable(DebugConfig.isDebug()); } } diff --git a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/bean/RemoteLogPushContent.java b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/bean/RemoteLogPushContent.java new file mode 100644 index 0000000000..29bcbacc1a --- /dev/null +++ b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/bean/RemoteLogPushContent.java @@ -0,0 +1,53 @@ +package com.zhidao.mogo.module.monitor.bean; + +public class RemoteLogPushContent { + private int type; + /** + * 日志抓取时长,单位是分钟 + */ + private int duration; + private String cmd; + private String pkgName; + + public int getType() { + return type; + } + + public void setType(int type) { + this.type = type; + } + + public String getCmd() { + return cmd; + } + + public void setCmd(String cmd) { + this.cmd = cmd; + } + + public int getDuration() { + return duration; + } + + public void setDuration(int duration) { + this.duration = duration; + } + + public String getPkgName() { + return pkgName; + } + + public void setPkgName(String pkgName) { + this.pkgName = pkgName; + } + + @Override + public String toString() { + return "RemoteLogPushContent{" + + "type=" + type + + ", duration=" + duration + + ", cmd='" + cmd + '\'' + + ", pkgName='" + pkgName + '\'' + + '}'; + } +} diff --git a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/ILogDialogListener.java b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/ILogDialogListener.java new file mode 100644 index 0000000000..8a97de2cb4 --- /dev/null +++ b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/ILogDialogListener.java @@ -0,0 +1,17 @@ +package com.zhidao.mogo.module.monitor.dialog; + +/** + * Log调试对话框操作回调 + * @author tongchenfei + */ +public interface ILogDialogListener { + /** + * 点击了开始抓日志 + */ + void onLogStart(); + + /** + * 点击了结束抓日志 + */ + void onLogStop(); +} diff --git a/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/LogDebugDialog.java b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/LogDebugDialog.java new file mode 100644 index 0000000000..b26eb35859 --- /dev/null +++ b/modules/mogo-module-monitor/src/main/java/com/zhidao/mogo/module/monitor/dialog/LogDebugDialog.java @@ -0,0 +1,46 @@ +package com.zhidao.mogo.module.monitor.dialog; + +import android.content.Context; + +import androidx.annotation.NonNull; + +import com.mogo.module.common.dialog.BaseFloatDialog; +import com.zhidao.mogo.module.monitor.R; + +/** + * 日志手动调用开始结束的对话框,兼容了智慧出行,覆盖adas浮窗 + * + * @author tongchenfei + */ +public class LogDebugDialog extends BaseFloatDialog { + public LogDebugDialog(@NonNull Context context) { + super(context); + setContentView(R.layout.dialog_log_debug); + findViewById(R.id.btnStart).setOnClickListener(v -> { + if (dialogListener != null) { + dialogListener.onLogStart(); + } + dismiss(); + }); + findViewById(R.id.btnStop).setOnClickListener(v->{ + if (dialogListener != null) { + dialogListener.onLogStop(); + } + + dismiss(); + }); + findViewById(R.id.btnForceClearNotice).setOnClickListener(v->{ + dismiss(); + }); + findViewById(R.id.btnRetryFlow).setOnClickListener(v->{ + dismiss(); + }); + } + + private ILogDialogListener dialogListener; + + public void setDialogListener(ILogDialogListener dialogListener) { + this.dialogListener = dialogListener; + } + +} diff --git a/modules/mogo-module-monitor/src/main/res/drawable/log_debug_dialog_bg.xml b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_dialog_bg.xml new file mode 100644 index 0000000000..012558ce6d --- /dev/null +++ b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_dialog_bg.xml @@ -0,0 +1,13 @@ + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-monitor/src/main/res/drawable/log_debug_retry_btn_bg.xml b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_retry_btn_bg.xml new file mode 100644 index 0000000000..0cb65e7650 --- /dev/null +++ b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_retry_btn_bg.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-monitor/src/main/res/drawable/log_debug_start_btn_bg.xml b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_start_btn_bg.xml new file mode 100644 index 0000000000..c21ba027d9 --- /dev/null +++ b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_start_btn_bg.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-monitor/src/main/res/drawable/log_debug_stop_btn_bg.xml b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_stop_btn_bg.xml new file mode 100644 index 0000000000..d8e32b922f --- /dev/null +++ b/modules/mogo-module-monitor/src/main/res/drawable/log_debug_stop_btn_bg.xml @@ -0,0 +1,17 @@ + + + + + + + + + + + + + + + + + \ No newline at end of file diff --git a/modules/mogo-module-monitor/src/main/res/layout/dialog_log_debug.xml b/modules/mogo-module-monitor/src/main/res/layout/dialog_log_debug.xml new file mode 100644 index 0000000000..fd3a32aa17 --- /dev/null +++ b/modules/mogo-module-monitor/src/main/res/layout/dialog_log_debug.xml @@ -0,0 +1,76 @@ + + + + + + +