You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@weex.apache.org by ac...@apache.org on 2018/04/25 07:55:53 UTC
incubator-weex git commit: [WEEX-303] [Android] fix nullPoint
Repository: incubator-weex
Updated Branches:
refs/heads/master 45be6cbb0 -> b4d8ecbb1
[WEEX-303] [Android] fix nullPoint
close #1106
Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/b4d8ecbb
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/b4d8ecbb
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/b4d8ecbb
Branch: refs/heads/master
Commit: b4d8ecbb1fe1f7dbd7f1d70ef67a3915e231e92f
Parents: 45be6cb
Author: zhongcang <qh...@gmail.com>
Authored: Tue Apr 10 15:01:05 2018 +0800
Committer: acton393 <zh...@gmail.com>
Committed: Wed Apr 25 15:41:55 2018 +0800
----------------------------------------------------------------------
.../com/taobao/weex/bridge/WXBridgeManager.java | 9 ++++++--
.../taobao/weex/ui/module/WXTimerModule.java | 22 ++++++--------------
2 files changed, 13 insertions(+), 18 deletions(-)
----------------------------------------------------------------------
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b4d8ecbb/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
----------------------------------------------------------------------
diff --git a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
index f931ccf..bb90f23 100644
--- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
+++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java
@@ -58,6 +58,7 @@ import com.taobao.weex.dom.action.Actions;
import com.taobao.weex.dom.action.TraceableAction;
import com.taobao.weex.tracing.WXTracing;
import com.taobao.weex.ui.WXComponentRegistry;
+import com.taobao.weex.ui.component.WXComponent;
import com.taobao.weex.utils.WXExceptionUtils;
import com.taobao.weex.utils.WXFileUtils;
import com.taobao.weex.utils.WXJsonUtils;
@@ -2509,7 +2510,7 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu
if (checkEmptyScreen(instance)){
if (WXEnvironment.isApkDebugable()){
- WXLogUtils.d("render error 4 js error !");
+ WXLogUtils.e("render error 4 js error !");
}
WXExceptionUtils.commitCriticalExceptionRT(exceptionId, WXErrorCode.WX_RENDER_ERR_JS_RUNTIME,
function,
@@ -2528,8 +2529,12 @@ public void invokeDestoryInstance(String instanceId, String namespace, String fu
if (null == instance || instance.isDestroy()){
return false;
}
+ WXComponent rootComponent = instance.getRootComponent();
+ if (null == rootComponent) {
+ return true;
+ }
- View rootView = instance.getRootView();
+ View rootView = rootComponent.getRealView();
if (null == rootView){
return true;
}
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/b4d8ecbb/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 8745b54..2a29a29 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
@@ -70,14 +70,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, Integer.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++;
+ }
}
}
@@ -85,14 +80,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, Integer.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++;
+ }
}
}