You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by zs...@apache.org on 2019/01/03 12:39:40 UTC
[incubator-weex] branch master updated: * [Android] feature :send
performane info to js delay 8s
This is an automated email from the ASF dual-hosted git repository.
zshshr 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 20748f7 * [Android] feature :send performane info to js delay 8s
20748f7 is described below
commit 20748f7ba88cb891316d93b9b3a83210ef12d981
Author: zhongcang <qh...@gmail.com>
AuthorDate: Thu Jan 3 19:17:19 2019 +0800
* [Android] feature :send performane info to js delay 8s
---
.../java/com/taobao/weex/performance/WXInstanceApm.java | 16 ++++++++++++++++
1 file changed, 16 insertions(+)
diff --git a/android/sdk/src/main/java/com/taobao/weex/performance/WXInstanceApm.java b/android/sdk/src/main/java/com/taobao/weex/performance/WXInstanceApm.java
index 777374f..c1d8330 100644
--- a/android/sdk/src/main/java/com/taobao/weex/performance/WXInstanceApm.java
+++ b/android/sdk/src/main/java/com/taobao/weex/performance/WXInstanceApm.java
@@ -22,11 +22,14 @@ import java.util.Map;
import java.util.concurrent.ConcurrentHashMap;
import android.graphics.Rect;
+import android.os.Handler;
+import android.os.Looper;
import android.text.TextUtils;
import android.util.Log;
import com.taobao.weex.WXEnvironment;
import com.taobao.weex.WXSDKInstance;
import com.taobao.weex.WXSDKManager;
+import com.taobao.weex.bridge.WXBridgeManager;
import com.taobao.weex.common.WXErrorCode;
import com.taobao.weex.common.WXPerformance;
import com.taobao.weex.common.WXRenderStrategy;
@@ -127,12 +130,14 @@ public class WXInstanceApm {
public String reportPageName;
public boolean hasReportLayerOverDraw = false;
public boolean hasAddView;
+ private Handler mUIHandler;
public WXInstanceApm(String instanceId) {
mInstanceId = instanceId;
extInfo = new ConcurrentHashMap<>();
stageMap = new ConcurrentHashMap<>();
IApmGenerator generator = WXSDKManager.getInstance().getApmGenerater();
+ mUIHandler = new Handler(Looper.getMainLooper());
if (null != generator) {
apmInstance = generator.generateApmInstance(WEEX_PAGE_TOPIC);
recordStatsMap = new ConcurrentHashMap<>();
@@ -171,6 +176,10 @@ public class WXInstanceApm {
WXAnalyzerDataTransfer.transferPerformance(mInstanceId,"stage",name,time);
}
+ if (KEY_PAGE_STAGES_RENDER_ORGIGIN.equalsIgnoreCase(name)){
+ mUIHandler.postDelayed(jsPerformanceCallBack,8000);
+ }
+
if (null == apmInstance) {
return;
}
@@ -178,6 +187,12 @@ public class WXInstanceApm {
apmInstance.onStage(name, time);
}
+ private Runnable jsPerformanceCallBack = new Runnable() {
+ @Override
+ public void run() {
+ sendPerformanceToJS();
+ }
+ };
/**
* record property
@@ -281,6 +296,7 @@ public class WXInstanceApm {
if (null == apmInstance || mEnd) {
return;
}
+ mUIHandler.removeCallbacks(jsPerformanceCallBack);
onStage(KEY_PAGE_STAGES_DESTROY);
apmInstance.onEnd();
mEnd = true;