You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ky...@apache.org on 2018/06/20 08:13:03 UTC
incubator-weex git commit: [WEEX-465][Android]fix performance point
interactionTime record bug
Repository: incubator-weex
Updated Branches:
refs/heads/master 939be31e6 -> dc1936ef0
[WEEX-465][Android]fix performance point interactionTime record bug
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/dc1936ef
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/dc1936ef
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/dc1936ef
Branch: refs/heads/master
Commit: dc1936ef0fbbb851d2a9c1c65623873ca7aa8ca2
Parents: 939be31
Author: zhongcang <qh...@gmail.com>
Authored: Wed Jun 20 15:04:00 2018 +0800
Committer: zhongcang <qh...@gmail.com>
Committed: Wed Jun 20 15:04:00 2018 +0800
----------------------------------------------------------------------
.../java/com/taobao/weex/WXSDKInstance.java | 8 ++++---
.../weex/ui/action/GraphicActionAddElement.java | 4 +++-
.../ui/action/GraphicActionMoveElement.java | 5 -----
.../ui/action/GraphicActionRemoveElement.java | 9 +++++++-
.../taobao/weex/ui/component/WXComponent.java | 3 ++-
.../taobao/weex/ui/module/WXTimerModule.java | 22 ++++++--------------
6 files changed, 24 insertions(+), 27 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
----------------------------------------------------------------------
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 9f59e30..99680f7 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKInstance.java
@@ -106,6 +106,7 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
//Performance
public boolean mEnd = false;
+ public boolean isJSCreateFinish =false;
public static final String BUNDLE_URL = "bundleUrl";
private IWXUserTrackAdapter mUserTrackAdapter;
private IWXRenderListener mRenderListener;
@@ -1121,6 +1122,7 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
}
public void onRenderSuccess(final int width, final int height) {
+ isJSCreateFinish = true;
firstScreenRenderFinished();
long time = System.currentTimeMillis() - mRenderStartTime;
@@ -1181,10 +1183,10 @@ public class WXSDKInstance implements IWXActivityStateListener,View.OnLayoutChan
}
/**
- * when add/rm/mv element
+ * when add/rm element
*/
- public void onElementChange(){
- if (isDestroy() || !mEnd ||null == mRenderContainer || mRenderContainer.isPageHasEvent() ||
+ public void onElementChange(boolean afterJSCreateFinish){
+ if (isDestroy() || !afterJSCreateFinish ||null == mRenderContainer || mRenderContainer.isPageHasEvent() ||
mWXPerformance == null){
return;
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionAddElement.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionAddElement.java b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionAddElement.java
index c73e704..5aa7b61 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionAddElement.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionAddElement.java
@@ -39,6 +39,7 @@ public class GraphicActionAddElement extends GraphicActionAbstractAddElement {
private WXComponent child;
private GraphicPosition layoutPosition;
private GraphicSize layoutSize;
+ private boolean isJSCreateFinish = false;
public GraphicActionAddElement(String pageId, String ref,
String componentType, String parentRef,
@@ -72,6 +73,7 @@ public class GraphicActionAddElement extends GraphicActionAbstractAddElement {
mParentRef);
child = createComponent(instance, parent, basicComponentData);
child.setTransition(WXTransition.fromMap(child.getStyles(), child));
+ isJSCreateFinish = instance.isJSCreateFinish;
if (child == null || parent == null) {
return;
@@ -122,7 +124,7 @@ public class GraphicActionAddElement extends GraphicActionAbstractAddElement {
child.bindData(child);
WXSDKInstance instance = WXSDKManager.getInstance().getWXRenderManager().getWXSDKInstance(getPageId());
if (null!=instance){
- instance.onElementChange();
+ instance.onElementChange(isJSCreateFinish);
// instance.setma
}
} catch (Exception e) {
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionMoveElement.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionMoveElement.java b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionMoveElement.java
index 3cec87c..ac6474b 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionMoveElement.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionMoveElement.java
@@ -18,7 +18,6 @@
*/
package com.taobao.weex.ui.action;
-import com.taobao.weex.WXSDKInstance;
import com.taobao.weex.WXSDKManager;
import com.taobao.weex.ui.component.WXComponent;
import com.taobao.weex.ui.component.WXVContainer;
@@ -49,9 +48,5 @@ public class GraphicActionMoveElement extends BasicGraphicAction {
if (!component.isVirtualComponent()) {
((WXVContainer) newParent).addSubView(component.getHostView(), mIndex);
}
- WXSDKInstance instance = WXSDKManager.getInstance().getWXRenderManager().getWXSDKInstance(getPageId());
- if (null!=instance){
- instance.onElementChange();
- }
}
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionRemoveElement.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionRemoveElement.java b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionRemoveElement.java
index 2b24eab..11ff2e0 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionRemoveElement.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/action/GraphicActionRemoveElement.java
@@ -25,8 +25,15 @@ import com.taobao.weex.ui.component.WXVContainer;
public class GraphicActionRemoveElement extends BasicGraphicAction {
+ private boolean isJSCreateFinish = false;
+
public GraphicActionRemoveElement(String pageId, String ref) {
super(pageId, ref);
+ WXSDKInstance instance = WXSDKManager.getInstance().getWXRenderManager().getWXSDKInstance(getPageId());
+ if (null != instance){
+ isJSCreateFinish = instance.isJSCreateFinish;
+ }
+
}
@Override
@@ -55,7 +62,7 @@ public class GraphicActionRemoveElement extends BasicGraphicAction {
}
WXSDKInstance instance = WXSDKManager.getInstance().getWXRenderManager().getWXSDKInstance(getPageId());
if (null!=instance){
- instance.onElementChange();
+ instance.onElementChange(isJSCreateFinish);
}
}
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
index 072d8f4..3851c1b 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/component/WXComponent.java
@@ -85,6 +85,7 @@ import com.taobao.weex.ui.animation.WXAnimationBean;
import com.taobao.weex.ui.animation.WXAnimationModule;
import com.taobao.weex.ui.component.basic.WXBasicComponent;
import com.taobao.weex.ui.component.binding.Statements;
+import com.taobao.weex.ui.component.list.WXCell;
import com.taobao.weex.ui.component.list.template.jni.NativeRenderObjectUtils;
import com.taobao.weex.ui.component.pesudo.OnActivePseudoListner;
import com.taobao.weex.ui.component.pesudo.PesudoStatus;
@@ -929,7 +930,7 @@ public abstract class WXComponent<T extends View> extends WXBasicComponent imple
return;
}
- if (realHeight >= WXPerformance.VIEW_LIMIT_HEIGHT && realWidth>=WXPerformance.VIEW_LIMIT_WIDTH){
+ if (this instanceof WXCell && realHeight >= WXPerformance.VIEW_LIMIT_HEIGHT && realWidth>=WXPerformance.VIEW_LIMIT_WIDTH){
mInstance.getWXPerformance().cellExceedNum++;
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/dc1936ef/android/sdk/src/main/java/com/taobao/weex/ui/module/WXTimerModule.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXTimerModule.java b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXTimerModule.java
index de5a135..d2c711a 100644
--- a/android/sdk/src/main/java/com/taobao/weex/ui/module/WXTimerModule.java
+++ b/android/sdk/src/main/java/com/taobao/weex/ui/module/WXTimerModule.java
@@ -69,14 +69,9 @@ public class WXTimerModule extends WXModule implements Destroyable, Handler.Call
public void setTimeout(@IntRange(from = 1) int funcId, @FloatRange(from = 0) float delay) {
if(mWXSDKInstance != null) {
postOrHoldMessage(MODULE_TIMEOUT, funcId, (int) delay, WXUtils.parseInt(mWXSDKInstance.getInstanceId()));
- WXSDKManager.getInstance().postOnUiThread(new Runnable() {
- @Override
- public void run() {
- if (null != mWXSDKInstance){
- mWXSDKInstance.getWXPerformance().timerInvokeCount++;
- }
- }
- },0);
+ if (null != mWXSDKInstance.getWXPerformance()){
+ mWXSDKInstance.getWXPerformance().timerInvokeCount++;
+ }
}
}
@@ -84,14 +79,9 @@ public class WXTimerModule extends WXModule implements Destroyable, Handler.Call
public void setInterval(@IntRange(from = 1) int funcId, @FloatRange(from = 0) float interval) {
if(mWXSDKInstance != null) {
postOrHoldMessage(MODULE_INTERVAL, funcId, (int) interval, WXUtils.parseInt(mWXSDKInstance.getInstanceId()));
- WXSDKManager.getInstance().postOnUiThread(new Runnable() {
- @Override
- public void run() {
- if (null != mWXSDKInstance){
- mWXSDKInstance.getWXPerformance().timerInvokeCount++;
- }
- }
- },0);
+ if (null != mWXSDKInstance.getWXPerformance()){
+ mWXSDKInstance.getWXPerformance().timerInvokeCount++;
+ }
}
}