You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by do...@apache.org on 2019/07/03 08:56:25 UTC

[incubator-weex] branch master updated: [Android] fix ConcurrentModificationException for analyzerList && print error log when exception (#2647)

This is an automated email from the ASF dual-hosted git repository.

dongyayun pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/incubator-weex.git


The following commit(s) were added to refs/heads/master by this push:
     new 45da9ef  [Android] fix ConcurrentModificationException for analyzerList && print error log when exception (#2647)
45da9ef is described below

commit 45da9ef46e9681cb3ecfdefc3cea0a1a1b726c74
Author: chen <lu...@users.noreply.github.com>
AuthorDate: Wed Jul 3 16:56:20 2019 +0800

    [Android] fix ConcurrentModificationException for analyzerList && print error log when exception (#2647)
---
 android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java       | 2 ++
 .../java/com/taobao/weex/performance/WXAnalyzerDataTransfer.java   | 7 +++++--
 .../src/main/java/com/taobao/weex/performance/WXStateRecord.java   | 2 +-
 .../sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java  | 1 +
 4 files changed, 9 insertions(+), 3 deletions(-)

diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
index b31a8cc..f897433 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
@@ -1652,6 +1652,7 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
 
   public void onRenderError(final String errCode, final String msg) {
     if (mRenderListener != null && mContext != null) {
+      WXLogUtils.e("onRenderError "+errCode +","+msg);
       runOnUiThread(new Runnable() {
 
         @Override
@@ -1667,6 +1668,7 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
   public void onJSException(final String errCode, final String function, final String exception) {
     hasException = true;
     if (mRenderListener != null && mContext != null) {
+      WXLogUtils.e("onJSException "+errCode +","+exception);
       runOnUiThread(new Runnable() {
 
         @Override
diff --git a/android/sdk/src/main/java/com/taobao/weex/performance/WXAnalyzerDataTransfer.java b/android/sdk/src/main/java/com/taobao/weex/performance/WXAnalyzerDataTransfer.java
index 0a42e2e..194046c 100644
--- a/android/sdk/src/main/java/com/taobao/weex/performance/WXAnalyzerDataTransfer.java
+++ b/android/sdk/src/main/java/com/taobao/weex/performance/WXAnalyzerDataTransfer.java
@@ -16,6 +16,7 @@
  */
 package com.taobao.weex.performance;
 
+import java.util.Iterator;
 import java.util.List;
 
 import android.util.Log;
@@ -71,8 +72,10 @@ public class WXAnalyzerDataTransfer {
         return;
       }
 
-      for (IWXAnalyzer transfer : transferList) {
-          transfer.transfer(MODULE_WX_APM, instance.getInstanceId(), type, data);
+      Iterator<IWXAnalyzer> itr = transferList.iterator();
+      while (itr.hasNext()){
+          IWXAnalyzer item = itr.next();
+          item.transfer(MODULE_WX_APM, instance.getInstanceId(), type, data);
       }
   }
 
diff --git a/android/sdk/src/main/java/com/taobao/weex/performance/WXStateRecord.java b/android/sdk/src/main/java/com/taobao/weex/performance/WXStateRecord.java
index 73edb2a..0932508 100644
--- a/android/sdk/src/main/java/com/taobao/weex/performance/WXStateRecord.java
+++ b/android/sdk/src/main/java/com/taobao/weex/performance/WXStateRecord.java
@@ -47,7 +47,7 @@ public class WXStateRecord {
 
     private WXStateRecord() {
         mExceptionHistory = new RecordList<>(5);
-        mActionHistory = new RecordList<>(10);
+        mActionHistory = new RecordList<>(20);
         mJsfmInitHistory = new RecordList<>(3);
         mJscCrashHistory = new RecordList<>(3);
         mJscReloadHistory = new RecordList<>(5);
diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java b/android/sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java
index 70acf60..0cf3e43 100644
--- a/android/sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java
+++ b/android/sdk/src/main/java/com/taobao/weex/utils/WXExceptionUtils.java
@@ -109,6 +109,7 @@ public class WXExceptionUtils {
 												 @Nullable final Map<String,String> extParams ) {
 
         try {
+            WXLogUtils.e("weex","commitCriticalExceptionRT :"+errCode+"exception"+exception);
             WXStateRecord.getInstance().recordException(instanceId,exception);
             IWXConfigAdapter configAdapter = WXSDKManager.getInstance().getWxConfigAdapter();
             boolean doCheck = true;