incubator-weex git commit: [WEEX-360] [Android] Fix crash when reinit framework serializer will be freed after framework inited finished. So if we use it for re initialize. Will cause null ptr.

2018-05-14 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master ddc4f4bd0 -> 1a2ee1c93


[WEEX-360] [Android] Fix crash when reinit framework
serializer will be freed after framework inited finished.
So if we use it for re initialize. Will cause null ptr.

Bug: WEEX-360


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/1a2ee1c9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/1a2ee1c9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/1a2ee1c9

Branch: refs/heads/master
Commit: 1a2ee1c93d4eade5821c986bb896faa074067da2
Parents: ddc4f4b
Author: 东煜 
Authored: Mon May 14 16:17:16 2018 +0800
Committer: 东煜 
Committed: Mon May 14 16:17:16 2018 +0800

--
 .../android/jsengine/multiprocess/WeexProxy.cpp | 57 ++--
 .../android/jsengine/multiprocess/WeexProxy.h   |  4 +-
 2 files changed, 31 insertions(+), 30 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/1a2ee1c9/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp
--
diff --git a/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp 
b/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp
index 2d19683..da2f03f 100644
--- a/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp
+++ b/weex_core/Source/android/jsengine/multiprocess/WeexProxy.cpp
@@ -122,7 +122,7 @@ namespace WeexCore {
 }
 
 jint
-WeexProxy::initFrameworkInMultiProcess(JNIEnv *env, jstring script, 
IPCSerializer *serializer) {
+WeexProxy::initFrameworkInMultiProcess(JNIEnv *env, jstring script, 
jobject params) {
 bool reinit = false;
 startInitFrameWork:
 try {
@@ -139,13 +139,15 @@ namespace WeexCore {
 }
 } else {
 // initHandler(sHandler.get());
+
 ExtendJSApi *pExtensionJSApi = new ExtendJSApi();
 
 pExtensionJSApi->initFunction(sHandler.get());
 
 // using base::debug::TraceEvent;
 // TraceEvent::StartATrace(env);
-
+std::unique_ptr 
serializer(createIPCSerializer());
+initFromParam(env, script, params, serializer.get());
 
serializer->setMsg(static_cast(IPCJSMsg::INITFRAMEWORK));
 
 std::unique_ptr buffer = serializer->finish();
@@ -177,30 +179,27 @@ namespace WeexCore {
 jobject params) {
 
 Bridge_Impl_Android::getInstance()->setGlobalRef(jThis);
-std::unique_ptr serializer(createIPCSerializer());
-const std::vector  = 
initFromParam(env, script,
-   
 params,
-   
 serializer.get());
-LOGE("doInitFramework is running");
-if (g_use_single_process) {
-if (initFrameworkInSingleProcess(env, script, 
initFrameworkParams)) {
-//reportNativeInitStatus("-1011", "init Single Process 
Success");
-return true;
-}
-
-if (initFrameworkInMultiProcess(env, script, serializer.get())) {
-return true;
-}
-} else {
-if (initFrameworkInMultiProcess(env, script, serializer.get())) {
-return true;
-}
 
-if (initFrameworkInSingleProcess(env, script, 
initFrameworkParams)) {
-reportNativeInitStatus("-1011", "init Single Process Success");
-return true;
-}
+LOGE("doInitFramework is running");
+//if (g_use_single_process) {
+//if (initFrameworkInSingleProcess(env, script, nullptr)) {
+////reportNativeInitStatus("-1011", "init Single Process 
Success");
+//return true;
+//}
+//
+//if (initFrameworkInMultiProcess(env, script, params)) {
+//return true;
+//}
+//} else {
+if (initFrameworkInMultiProcess(env, script, params)) {
+return true;
 }
+
+//if (initFrameworkInSingleProcess(env, script, nullptr)) {
+//reportNativeInitStatus("-1011", "init Single Process 
Success");
+//return true;
+//}
+//}
 reportNativeInitStatus("-1010", "init Failed");
 return false;
 
@@ -462,9 +461,11 @@ namespace WeexCore {
 WEEX_CORE_JS_API_FUNCTIONS *functions);
 
 jint
-WeexProxy::initFrameworkInSingleProcess(JNIEnv *env, jstring script,
-std::vector 

incubator-weex git commit: * [WEEX-341] [android] add armeabi-v7a support

2018-05-07 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master feb096490 -> f4b87eb5f


* [WEEX-341] [android] add armeabi-v7a support


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/f4b87eb5
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/f4b87eb5
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/f4b87eb5

Branch: refs/heads/master
Commit: f4b87eb5ffe61e4ade2cf6cacf476444396405e2
Parents: feb0964
Author: wentao.swt 
Authored: Mon May 7 11:17:05 2018 +0800
Committer: yuhun-alibaba 
Committed: Mon May 7 18:07:58 2018 +0800

--
 android/playground/app/build.gradle|   2 +-
 android/sdk/build.gradle   |   5 -
 android/sdk/libs/armeabi-v7a/libweexjsb.so | Bin 0 -> 22620 bytes
 android/sdk/libs/armeabi-v7a/libweexjss.so | Bin 0 -> 6801432 bytes
 android/sdk/libs/armeabi-v7a/libweexjst.so | Bin 0 -> 22552 bytes
 5 files changed, 5 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f4b87eb5/android/playground/app/build.gradle
--
diff --git a/android/playground/app/build.gradle 
b/android/playground/app/build.gradle
index f8b870c..2caa695 100755
--- a/android/playground/app/build.gradle
+++ b/android/playground/app/build.gradle
@@ -13,7 +13,7 @@ android {
 testInstrumentationRunner 
"android.support.test.runner.AndroidJUnitRunner"
 multiDexEnabled true
 ndk{
-abiFilters "armeabi","x86"
+abiFilters "armeabi-v7a","armeabi","x86"
 }
 }
 applicationVariants.all { variant ->

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f4b87eb5/android/sdk/build.gradle
--
diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle
index 1b0480b..7eed76a 100755
--- a/android/sdk/build.gradle
+++ b/android/sdk/build.gradle
@@ -93,12 +93,15 @@ android {
 }
 
 def ARMEABI_Size = new 
File(projectDir,"libs/armeabi/libweexjsc.so").length();
+def ARMEABIV7_Size = new 
File(projectDir,"libs/armeabi-v7/libweexjsc.so").length();
 def X86_Size = new File(projectDir,"libs/x86/libweexjsc.so").length();
 println "ARMEABI_Size: "+ARMEABI_Size;
+println "ARMEABIV7_Size:" + ARMEABIV7_Size;
 println "X86_Size:" + X86_Size;
 
 defaultConfig {
 buildConfigField "long", "ARMEABI_Size", "${ARMEABI_Size}"
+buildConfigField "long", "ARMEABIV7_Size", "${ARMEABIV7_Size}"
 buildConfigField "long", "X86_Size", "${X86_Size}"
 buildConfigField "String", "buildJavascriptFrameworkVersion", 
"\"${jsfmVersion}\""
 buildConfigField "String", "buildVersion", "\"${version}\""
@@ -110,7 +113,7 @@ android {
 versionCode 1
 versionName "1.0"
 ndk {
-abiFilters "armeabi","x86"
+abiFilters "armeabi-v7a","armeabi","x86"
 }
 
 externalNativeBuild {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f4b87eb5/android/sdk/libs/armeabi-v7a/libweexjsb.so
--
diff --git a/android/sdk/libs/armeabi-v7a/libweexjsb.so 
b/android/sdk/libs/armeabi-v7a/libweexjsb.so
new file mode 100755
index 000..f0287cf
Binary files /dev/null and b/android/sdk/libs/armeabi-v7a/libweexjsb.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f4b87eb5/android/sdk/libs/armeabi-v7a/libweexjss.so
--
diff --git a/android/sdk/libs/armeabi-v7a/libweexjss.so 
b/android/sdk/libs/armeabi-v7a/libweexjss.so
new file mode 100755
index 000..dcd78cc
Binary files /dev/null and b/android/sdk/libs/armeabi-v7a/libweexjss.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/f4b87eb5/android/sdk/libs/armeabi-v7a/libweexjst.so
--
diff --git a/android/sdk/libs/armeabi-v7a/libweexjst.so 
b/android/sdk/libs/armeabi-v7a/libweexjst.so
new file mode 100755
index 000..099256c
Binary files /dev/null and b/android/sdk/libs/armeabi-v7a/libweexjst.so differ



incubator-weex git commit: [WEEX-288][android] bug fix, fix on some case cannot get bundle type

2018-04-12 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master e5cad8e12 -> e5e849302


 [WEEX-288][android] bug fix, fix on some case cannot get bundle type


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/e5e84930
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/e5e84930
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/e5e84930

Branch: refs/heads/master
Commit: e5e849302427576854bf0602b1edd1dc549c5a88
Parents: e5cad8e
Author: yuhun-alibaba 
Authored: Thu Apr 12 16:31:49 2018 +0800
Committer: yuhun-alibaba 
Committed: Thu Apr 12 16:36:28 2018 +0800

--
 .../sdk/src/main/java/com/taobao/weex/bridge/WXBridgeManager.java | 3 +--
 1 file changed, 1 insertion(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e5e84930/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 ffede54..f931ccf 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
@@ -1838,8 +1838,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
   if (temp.length() > 500) {
 temp = temp.substring(0, 500);
   }
-  String strTrim = temp.replaceAll("\n","");
-  strTrim.trim();
+  String strTrim = temp.replaceAll("\n","").trim();
   if (strTrim.startsWith("// { \"framework\": \"Vue\" }") ||
   strTrim.startsWith("// { \"framework\": \"vue\" }") ||
   strTrim.startsWith("// {\"framework\" : \"Vue\"}") ||



[2/2] incubator-weex git commit: * [Android] rm useless code

2018-03-29 Thread toretto
* [Android] rm useless code


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/e69a0d2a
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/e69a0d2a
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/e69a0d2a

Branch: refs/heads/master
Commit: e69a0d2ad69f59b88fc00c99f01eb4b229abd035
Parents: 1ab83cd
Author: zhongcang 
Authored: Thu Mar 29 14:27:05 2018 +0800
Committer: wentao.swt 
Committed: Thu Mar 29 15:24:34 2018 +0800

--
 .../main/java/com/taobao/weex/WXSDKEngine.java  |   1 -
 .../com/taobao/weex/common/WXPerformance.java   |  72 +---
 .../taobao/weex/performance/FpsCollector.java   | 113 ---
 .../com/taobao/weex/performance/MemUtils.java   |  80 -
 4 files changed, 2 insertions(+), 264 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e69a0d2a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java 
b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
index cbcac83..ef87679 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
@@ -59,7 +59,6 @@ import com.taobao.weex.dom.WXScrollerDomObject;
 import com.taobao.weex.dom.WXSwitchDomObject;
 import com.taobao.weex.dom.WXTextDomObject;
 import com.taobao.weex.http.WXStreamModule;
-import com.taobao.weex.performance.FpsCollector;
 import com.taobao.weex.ui.ExternalLoaderComponentHolder;
 import com.taobao.weex.ui.IExternalComponentGetter;
 import com.taobao.weex.ui.IExternalModuleGetter;

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e69a0d2a/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java
--
diff --git 
a/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java 
b/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java
index 8af7d85..77e43e9 100644
--- a/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java
+++ b/android/sdk/src/main/java/com/taobao/weex/common/WXPerformance.java
@@ -18,14 +18,10 @@
  */
 package com.taobao.weex.common;
 
-import android.os.Debug;
 import android.support.annotation.RestrictTo;
 import android.support.annotation.RestrictTo.Scope;
-import android.text.TextUtils;
 
 import com.taobao.weex.WXEnvironment;
-import com.taobao.weex.performance.FpsCollector;
-import com.taobao.weex.performance.MemUtils;
 import com.taobao.weex.utils.WXViewUtils;
 
 import java.util.HashMap;
@@ -63,8 +59,8 @@ public class WXPerformance {
  */
 JSLibSize(0D, Double.MAX_VALUE),
 //normal 300ms.. first install apk 30s ?
-JSLibInitTime(0D, 5D),
-SDKInitTime(0D, 5000D),
+JSLibInitTime(0D, 8D),
+SDKInitTime(0D, 12D),
 SDKInitInvokeTime(0D, 5000D),
 SDKInitExecuteTime(0D, 5000D),
 JSTemplateSize(0D, 5000D),
@@ -186,19 +182,10 @@ public class WXPerformance {
   public int fsCallEventTotalNum;
 
   public long avgFPS;
-  public long frameSum;
-  public long frameStartTime;
-  public long frameEndTime;
   public double fluency = 100D;
 
-  public long maxImproveMemory;
-
   public long backImproveMemory;
 
-  public long pushImproveMemory;
-
-  public long memTotalBeforeRender;
-
 
   /**
* Time spent for reading, time unit is ms.
@@ -369,9 +356,6 @@ public class WXPerformance {
   }
 
   public static void init() {
-if (WXPerformance.TRACE_DATA) {
-  FpsCollector.getInstance().init();
-}
   }
 
   public Map getMeasureMap() {
@@ -533,63 +517,11 @@ public class WXPerformance {
   }
 
 
-  private FpsRecorder mFpsRecorder = new FpsRecorder();
-
   public void beforeInstanceRender(String instanceId) {
 renderTimeOrigin = System.currentTimeMillis();
-if (WXPerformance.TRACE_DATA) {
-  if (TextUtils.isEmpty(instanceId)) {
-return;
-  }
-  Debug.MemoryInfo mem = 
MemUtils.getMemoryInfo(WXEnvironment.getApplication());
-  if (null != mem) {
-memTotalBeforeRender = mem.getTotalPss();
-  }
-  FpsCollector.getInstance().registerListener(instanceId, mFpsRecorder);
-}
   }
 
-  //  public void onInstanceEndRender(String instanceId,boolean isFirstScreen){
-  //
-  //  }
-
-
   public void afterInstanceDestroy(String instanceId) {
-if (WXPerformance.TRACE_DATA) {
-  if (TextUtils.isEmpty(instanceId)) {
-return;
-  }
-  FpsCollector.getInstance().unRegister(instanceId);
-  Debug.MemoryInfo mem = 
MemUtils.getMemoryInfo(WXEnvironment.getApplication());
-  if (null != mem) {
-

[1/2] incubator-weex git commit: [WEEX-269] [android] add T3D api support can use callT3DLinkNative on js runtime

2018-03-29 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 1ab83cdcf -> 0bc243d95


 [WEEX-269] [android] add T3D api support
 can use callT3DLinkNative on js runtime


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0bc243d9
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0bc243d9
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0bc243d9

Branch: refs/heads/master
Commit: 0bc243d95812d2e1d19922ec8480278cad6ca11e
Parents: e69a0d2
Author: yuhun-alibaba 
Authored: Thu Mar 29 14:57:35 2018 +0800
Committer: wentao.swt 
Committed: Thu Mar 29 15:24:34 2018 +0800

--
 android/playground/app/build.gradle |   2 +-
 android/sdk/libs/armeabi/libweexjsc.so  | Bin 276000 -> 276000 bytes
 android/sdk/libs/armeabi/libweexjss.so  | Bin 2965560 -> 2965608 bytes
 .../com/taobao/weex/bridge/WXBridgeManager.java |  13 +++--
 4 files changed, 12 insertions(+), 3 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0bc243d9/android/playground/app/build.gradle
--
diff --git a/android/playground/app/build.gradle 
b/android/playground/app/build.gradle
index ede9c84..bae43ca 100755
--- a/android/playground/app/build.gradle
+++ b/android/playground/app/build.gradle
@@ -104,5 +104,5 @@ dependencies {
 compile 'com.jakewharton.scalpel:scalpel:1.1.2'
 compile 
'com.taobao.android.weex_inspection:urlconnection_interceptor:1.0.0'
 compile 'com.android.support.test.espresso:espresso-idling-resource:2.2.2'
-compile 'com.taobao.android:weex_inspector:0.13.4'
+compile 'com.taobao.android:weex_inspector:0.13.5-multicontext'
 }
\ No newline at end of file

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0bc243d9/android/sdk/libs/armeabi/libweexjsc.so
--
diff --git a/android/sdk/libs/armeabi/libweexjsc.so 
b/android/sdk/libs/armeabi/libweexjsc.so
index f45aee4..96fe1c2 100755
Binary files a/android/sdk/libs/armeabi/libweexjsc.so and 
b/android/sdk/libs/armeabi/libweexjsc.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0bc243d9/android/sdk/libs/armeabi/libweexjss.so
--
diff --git a/android/sdk/libs/armeabi/libweexjss.so 
b/android/sdk/libs/armeabi/libweexjss.so
index 94d4478..f91f45a 100755
Binary files a/android/sdk/libs/armeabi/libweexjss.so and 
b/android/sdk/libs/armeabi/libweexjss.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0bc243d9/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 aed1c53..ffede54 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
@@ -117,6 +117,7 @@ import static 
com.taobao.weex.bridge.WXModuleManager.createDomModule;
 public class WXBridgeManager implements Callback, BactchExecutor {
 
   public static final String METHOD_CREATE_INSTANCE = "createInstance";
+  public static final String METHOD_CREATE_INSTANCE_CONTEXT = 
"createInstanceContext";
   public static final String METHOD_DESTROY_INSTANCE = "destroyInstance";
   public static final String METHOD_CALL_JS = "callJS";
   public static final String METHOD_SET_TIMEOUT = "setTimeoutCallback";
@@ -1175,6 +1176,14 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
 
 
   public String syncExecJsOnInstanceWithResult(final String instanceId, final 
String js, final int type) {
+try {
+  if (isJSThread()) {
+return invokeExecJSOnInstance(instanceId, js, type);
+  }
+} catch (Throwable e) {
+  WXLogUtils.e("[WXBridgeManager] syncExecJsOnInstanceWithResult on 
jsThread Exception");
+  return "";
+}
 final CountDownLatch waitLatch = new CountDownLatch(1);
 EventResult callback = new EventResult(){
   @Override
@@ -1746,7 +1755,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
   return;
 }
 if (type == BundType.Vue || type == BundType.Rax) {
-  invokeCreateInstanceContext(instance.getInstanceId(), null, 
METHOD_CREATE_INSTANCE, args, false);
+  invokeCreateInstanceContext(instance.getInstanceId(), null, 
METHOD_CREATE_INSTANCE_CONTEXT, args, false);
   return;
 } else {
   invokeExecJS(instance.getInstanceId(), null, 

[02/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/pre-build/weex-main-jsfm.js
--
diff --git a/pre-build/weex-main-jsfm.js b/pre-build/weex-main-jsfm.js
new file mode 100644
index 000..060db85
--- /dev/null
+++ b/pre-build/weex-main-jsfm.js
@@ -0,0 +1,2 @@
+(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.5, 
Build 2018-02-26 19:31. (Vue: 2.5.11-weex.1, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),c=t(this)?Object(new this(s)):new 
Array(s),u=0;u0?R:D)(e)},L=Math.min,J=function(e){return 
e>0?L(V(e),9007199254740991):0},U=Math.max,q=Math.min,B="__core-js_shared__",z=a[B]||(a[B]={}),W=function(e){return
 z[e]||(z[e]={})},H=W("keys"),X=function(e){return 
H[e]||(H[e]=C(e))},G=($=!1,function(e,t,n){var 

[01/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master aad360553 -> 45ec92c81


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/pre-build/weex-rax-api.js
--
diff --git a/pre-build/weex-rax-api.js b/pre-build/weex-rax-api.js
new file mode 100644
index 000..1f2be3f
--- /dev/null
+++ b/pre-build/weex-rax-api.js
@@ -0,0 +1,2 @@
+var global=this,process={env:{}};!function(e,t){"object"==typeof 
exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n=(function(e){e.exports=function(e){var t={};function n(r){if(t[r])return 
t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return 
n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var
 t=e&__esModule?function(){return e.default}:function(){return e};return 
n.d(t,"a",t),t},n.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}([function(e,t,n){var
 r=e.exports.createUniqueKey="undefined"!=typeof 
Symbol?Symbol:function(e){return"[["+e+"_"+Math.random().toFixed(8).slice(2)+"]]"},o=e.exports.isObject=function(e){return"object"==typeof
 
e&!==e};e.exports.LISTENERS=r("listeners"),e.exports.CAPTURE=1,e.exports.BUBBLE=2,e.exports.ATTRIBUTE
 =3,e.exports.newNode=function(e,t,n){var 
r=o(n);return{listener:e,kind:t,once:r&(n.once),passive:r&(n.passive),next:null}}},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var
 r=function(){function e(e,t){for(var n=0;n0){for(var 
n=Array(arguments.length),r=0;r

[07/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/assets/main.js
--
diff --git a/android/sdk/assets/main.js b/android/sdk/assets/main.js
new file mode 100644
index 000..fa6fdde
--- /dev/null
+++ b/android/sdk/assets/main.js
@@ -0,0 +1,2 @@
+(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.4, 
Build 2018-02-07 17:13. (Vue: 2.5.13-weex.5, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),u=t(this)?Object(new this(s)):new 
Array(s),c=0;c0?F:D)(e)},V=Math.min,W=function(e){return 
e>0?V(L(e),9007199254740991):0},U=Math.max,B=Math.min,q="__core-js_shared__",J=a[q]||(a[q]={}),z=function(e){return
 J[e]||(J[e]={})},H=z("keys"),G=function(e){return 
H[e]||(H[e]=k(e))},X=(I=!1,function(e,t,n){var 

[05/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/assets/weex-rax-api.js
--
diff --git a/android/sdk/assets/weex-rax-api.js 
b/android/sdk/assets/weex-rax-api.js
new file mode 100644
index 000..1f2be3f
--- /dev/null
+++ b/android/sdk/assets/weex-rax-api.js
@@ -0,0 +1,2 @@
+var global=this,process={env:{}};!function(e,t){"object"==typeof 
exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n=(function(e){e.exports=function(e){var t={};function n(r){if(t[r])return 
t[r].exports;var o=t[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}return 
n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{configurable:!1,enumerable:!0,get:r})},n.n=function(e){var
 t=e&__esModule?function(){return e.default}:function(){return e};return 
n.d(t,"a",t),t},n.o=function(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)},n.p="",n(n.s=3)}([function(e,t,n){var
 r=e.exports.createUniqueKey="undefined"!=typeof 
Symbol?Symbol:function(e){return"[["+e+"_"+Math.random().toFixed(8).slice(2)+"]]"},o=e.exports.isObject=function(e){return"object"==typeof
 
e&!==e};e.exports.LISTENERS=r("listeners"),e.exports.CAPTURE=1,e.exports.BUBBLE=2,e.exports.ATTRIBUTE
 =3,e.exports.newNode=function(e,t,n){var 
r=o(n);return{listener:e,kind:t,once:r&(n.once),passive:r&(n.passive),next:null}}},function(e,t,n){Object.defineProperty(t,"__esModule",{value:!0});var
 r=function(){function e(e,t){for(var n=0;n0){for(var 
n=Array(arguments.length),r=0;r

[06/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/assets/weex-main-jsfm.js
--
diff --git a/android/sdk/assets/weex-main-jsfm.js 
b/android/sdk/assets/weex-main-jsfm.js
new file mode 100644
index 000..060db85
--- /dev/null
+++ b/android/sdk/assets/weex-main-jsfm.js
@@ -0,0 +1,2 @@
+(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.5, 
Build 2018-02-26 19:31. (Vue: 2.5.11-weex.1, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),c=t(this)?Object(new this(s)):new 
Array(s),u=0;u0?R:D)(e)},L=Math.min,J=function(e){return 
e>0?L(V(e),9007199254740991):0},U=Math.max,q=Math.min,B="__core-js_shared__",z=a[B]||(a[B]={}),W=function(e){return
 z[e]||(z[e]={})},H=W("keys"),X=function(e){return 
H[e]||(H[e]=C(e))},G=($=!1,function(e,t,n){var 

[10/11] incubator-weex git commit: * [android] when debug server connect use global context

2018-03-27 Thread toretto
 * [android] when debug server connect use global context


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/e3d67594
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/e3d67594
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/e3d67594

Branch: refs/heads/master
Commit: e3d67594bc40735c24981effe4f532bb7b774203
Parents: fc8028c
Author: yuhun-alibaba 
Authored: Tue Mar 20 20:45:10 2018 +0800
Committer: yuhun-alibaba 
Committed: Tue Mar 27 16:00:32 2018 +0800

--
 .../main/java/com/taobao/weex/bridge/WXBridgeManager.java | 10 +-
 1 file changed, 5 insertions(+), 5 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/e3d67594/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 cb3bdcd..aed1c53 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
@@ -228,7 +228,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
 setJSFrameworkInit(false);
 WXModuleManager.resetAllModuleState();
 String jsf = "";
-if (!isSandBoxContext) {
+if (!isSandBoxContext || WXEnvironment.sDebugServerConnectable) {
   jsf = WXFileUtils.loadAsset("main.js", 
WXEnvironment.getApplication());
 } else {
   jsf = WXFileUtils.loadAsset("weex-main-jsfm.js", 
WXEnvironment.getApplication());
@@ -244,7 +244,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
 setJSFrameworkInit(false);
 WXModuleManager.resetAllModuleState();
 String jsf = "";
-if (!isSandBoxContext) {
+if (!isSandBoxContext || WXEnvironment.sDebugServerConnectable) {
   jsf = WXFileUtils.loadAsset("main.js", 
WXEnvironment.getApplication());
 } else {
   jsf = WXFileUtils.loadAsset("weex-main-jsfm.js", 
WXEnvironment.getApplication());
@@ -1741,7 +1741,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
 instance.setTemplate(template);
 // if { "framework": "Vue" } or  { "framework": "Rax" } will use 
invokeCreateInstanceContext
 // others will use invokeExecJS
-if (!isSandBoxContext) {
+if (!isSandBoxContext || WXEnvironment.sDebugServerConnectable) {
   invokeExecJS(instance.getInstanceId(), null, METHOD_CREATE_INSTANCE, 
args, false);
   return;
 }
@@ -1765,7 +1765,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
   }
 
   public WXJSObject optionObjConvert(boolean useSandBox, BundType type, 
WXJSObject opt) {
-if (!useSandBox || type == BundType.Others) {
+if (!useSandBox || type == BundType.Others || 
WXEnvironment.sDebugServerConnectable) {
   return opt;
 }
 try {
@@ -2059,7 +2059,7 @@ public void invokeDestoryInstance(String instanceId, 
String namespace, String fu
 // if (WXEnvironment.isApkDebugable()) {
 WXLogUtils.d("weex JS framework from assets");
 // }
-if (!isSandBoxContext) {
+if (!isSandBoxContext || WXEnvironment.sDebugServerConnectable) {
   framework = WXFileUtils.loadAsset("main.js", 
WXEnvironment.getApplication());
 } else {
   framework = WXFileUtils.loadAsset("weex-main-jsfm.js", 
WXEnvironment.getApplication());



[08/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
  * [WEEX-240] [android] feature update for weexsandbox and size off so
 1. every page will has a runtime context independent of other page
 2. At the beginning of js, will use // {"framework" : "Rax"} or // 
{"framework" : "Vue"} to distinguish type
 3. if page type is neither Rax nor Vue, will use global context runtime
 4. delete some usless code and opt build tools, trim so


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/640c53f1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/640c53f1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/640c53f1

Branch: refs/heads/master
Commit: 640c53f13260e0ae5b96ecbf01e7eb2f64d049c8
Parents: aad3605
Author: yuhun-alibaba 
Authored: Wed Mar 14 21:14:05 2018 +0800
Committer: yuhun-alibaba 
Committed: Tue Mar 27 15:55:55 2018 +0800

--
 android/sdk/assets/main.js  |   2 +
 android/sdk/assets/weex-main-jsfm.js|   2 +
 android/sdk/assets/weex-rax-api.js  |   2 +
 android/sdk/build.gradle|  13 +
 android/sdk/libs/armeabi/libweexjsb.so  | Bin
 android/sdk/libs/armeabi/libweexjsc.so  | Bin 275960 -> 276000 bytes
 android/sdk/libs/armeabi/libweexjss.so  | Bin 2965392 -> 2965560 bytes
 android/sdk/libs/armeabi/libweexjst.so  | Bin 22552 -> 22552 bytes
 android/sdk/libs/x86/libweexjsc.so  | Bin 649940 -> 66 bytes
 android/sdk/libs/x86/libweexjss.so  | Bin 10942128 -> 8373712 bytes
 .../java/com/taobao/weex/WXEnvironment.java |   3 +
 .../main/java/com/taobao/weex/WXSDKEngine.java  |  17 +-
 .../java/com/taobao/weex/WXSDKInstance.java |   7 +
 .../taobao/weex/bridge/ModuleFactoryImpl.java   |  38 +++
 .../java/com/taobao/weex/bridge/WXBridge.java   |  28 ++
 .../com/taobao/weex/bridge/WXBridgeManager.java | 315 ++-
 .../com/taobao/weex/bridge/WXModuleManager.java | 124 ++--
 .../java/com/taobao/weex/common/IWXBridge.java  |  29 ++
 .../java/com/taobao/weex/common/WXConfig.java   |   1 +
 pre-build/native-bundle-main.js |   1 +
 pre-build/weex-main-jsfm.js |   2 +
 pre-build/weex-rax-api.js   |   2 +
 22 files changed, 543 insertions(+), 43 deletions(-)
--




[09/11] incubator-weex git commit: * [android] fix java.util.ConcurrentModificationException

2018-03-27 Thread toretto
 * [android] fix java.util.ConcurrentModificationException


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/fc8028c1
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/fc8028c1
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/fc8028c1

Branch: refs/heads/master
Commit: fc8028c1ff29c3f5bcedd48a53fbc249325f0fb8
Parents: 640c53f
Author: wentao.swt 
Authored: Mon Mar 19 19:17:23 2018 +0800
Committer: yuhun-alibaba 
Committed: Tue Mar 27 15:59:55 2018 +0800

--
 .../com/taobao/weex/bridge/WXBridgeManager.java| 17 -
 .../com/taobao/weex/bridge/WXModuleManager.java|  3 ++-
 2 files changed, 10 insertions(+), 10 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fc8028c1/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 f45150f..cb3bdcd 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
@@ -2107,28 +2107,27 @@ public void invokeDestoryInstance(String instanceId, 
String namespace, String fu
   execRegisterFailTask();
   WXEnvironment.JsFrameworkInit = true;
   registerDomModule();
-  WXModuleManager.reload();
   String reinitInfo = "";
   if (reInitCount > 1) {
 reinitInfo = "reinit Framework:";
-WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_REINIT_SUCCESS,
-"initFramework", reinitInfo + "success", null);
+// WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_REINIT_SUCCESS,
+//   "initFramework", reinitInfo + "success", null);
   } else {
-//WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_INIT_SUCCESS.getErrorCode(),
-//"initFramework", reinitInfo + "success", null);
+// WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_INIT_SUCCESS.getErrorCode(),
+//"initFramework", reinitInfo + "success", null);
   }
 
 } else {
   if (reInitCount > 1) {
 WXLogUtils.e("[WXBridgeManager] invokeReInitFramework  
ExecuteJavaScript fail");
 String err = "[WXBridgeManager] invokeReInitFramework  
ExecuteJavaScript fail reinit FrameWork";
-   WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK,
-   "initFramework", "reInitCount = " + 
reInitCount + err, null);
+   // WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK,
+   //  "initFramework", "reInitCount = " + 
reInitCount + err, null);
   } else {
 WXLogUtils.e("[WXBridgeManager] invokeInitFramework  
ExecuteJavaScript fail");
 String err = "[WXBridgeManager] invokeInitFramework  
ExecuteJavaScript fail";
-   WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_FRAMEWORK,
-   "initFramework", err, null);
+   // WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_FRAMEWORK,
+   //  "initFramework", err, null);
   }
 }
   } catch (Throwable e) {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/fc8028c1/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
--
diff --git 
a/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java 
b/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
index 5a8bb89..6bc4af4 100644
--- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
+++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXModuleManager.java
@@ -45,6 +45,7 @@ import java.util.Iterator;
 import java.util.Map;
 import java.util.Map.Entry;
 import java.util.concurrent.ConcurrentHashMap;
+import java.util.concurrent.ConcurrentMap;
 
 /**
  * Manager class for weex module. There are two types of modules in weex, one 
is instance-level module,
@@ -56,7 +57,7 @@ public class WXModuleManager {
   /**
* module class object dictionary
*/
-  private static volatile Map sModuleFactoryMap = 

[11/11] incubator-weex git commit: * [android] fix atob and btoa bug

2018-03-27 Thread toretto
* [android] fix atob and btoa 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/45ec92c8
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/45ec92c8
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/45ec92c8

Branch: refs/heads/master
Commit: 45ec92c81990ca5f3cb5bdc96d1ffd53bb2af86f
Parents: e3d6759
Author: wentao.swt 
Authored: Thu Mar 22 15:42:13 2018 +0800
Committer: yuhun-alibaba 
Committed: Tue Mar 27 16:01:32 2018 +0800

--
 android/sdk/libs/armeabi/libweexjss.so | Bin 2965560 -> 2965560 bytes
 1 file changed, 0 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/45ec92c8/android/sdk/libs/armeabi/libweexjss.so
--
diff --git a/android/sdk/libs/armeabi/libweexjss.so 
b/android/sdk/libs/armeabi/libweexjss.so
index 51bbd4d..94d4478 100755
Binary files a/android/sdk/libs/armeabi/libweexjss.so and 
b/android/sdk/libs/armeabi/libweexjss.so differ



[03/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/pre-build/native-bundle-main.js
--
diff --git a/pre-build/native-bundle-main.js b/pre-build/native-bundle-main.js
index afb172d..fa6fdde 100644
--- a/pre-build/native-bundle-main.js
+++ b/pre-build/native-bundle-main.js
@@ -1 +1,2 @@
 (this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.4, 
Build 2018-02-07 17:13. (Vue: 2.5.13-weex.5, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),u=t(this)?Object(new this(s)):new 
Array(s),c=0;c0?F:D)(e)},V=Math.min,W=function(e){return 
e>0?V(L(e),9007199254740991):0},U=Math.max,B=Math.min,q="__core-js_shared__",J=a[q]||(a[q]={}),z=function(e){return
 J[e]||(J[e]={})},H=z("keys"),G=function(e){return 
H[e]||(H[e]=k(e))},X=(I=!1,function(e,t,n){var 

[04/11] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, w

2018-03-27 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/build.gradle
--
diff --git a/android/sdk/build.gradle b/android/sdk/build.gradle
index 728e1c6..ecb40c2 100755
--- a/android/sdk/build.gradle
+++ b/android/sdk/build.gradle
@@ -60,6 +60,19 @@ android {
 def jsfmVersion = m[0][1]
 println jsfmVersion
 
+copy {
+from '../../pre-build'
+into new File(projectDir,"assets")
+include 'weex-main-jsfm.js'
+rename('weex-main-jsfm.js','weex-main-jsfm.js')
+}
+
+copy {
+from '../../pre-build'
+into new File(projectDir,"assets")
+include 'weex-rax-api.js'
+}
+
 if(project.hasProperty('asfRelease')){
 //download so file if not exist, when compile in source release
 download{

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/armeabi/libweexjsb.so
--
diff --git a/android/sdk/libs/armeabi/libweexjsb.so 
b/android/sdk/libs/armeabi/libweexjsb.so
old mode 100644
new mode 100755

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/armeabi/libweexjsc.so
--
diff --git a/android/sdk/libs/armeabi/libweexjsc.so 
b/android/sdk/libs/armeabi/libweexjsc.so
old mode 100644
new mode 100755
index 3c386f1..f45aee4
Binary files a/android/sdk/libs/armeabi/libweexjsc.so and 
b/android/sdk/libs/armeabi/libweexjsc.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/armeabi/libweexjss.so
--
diff --git a/android/sdk/libs/armeabi/libweexjss.so 
b/android/sdk/libs/armeabi/libweexjss.so
old mode 100644
new mode 100755
index bdedcc5..51bbd4d
Binary files a/android/sdk/libs/armeabi/libweexjss.so and 
b/android/sdk/libs/armeabi/libweexjss.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/armeabi/libweexjst.so
--
diff --git a/android/sdk/libs/armeabi/libweexjst.so 
b/android/sdk/libs/armeabi/libweexjst.so
index bca44ad..099256c 100755
Binary files a/android/sdk/libs/armeabi/libweexjst.so and 
b/android/sdk/libs/armeabi/libweexjst.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/x86/libweexjsc.so
--
diff --git a/android/sdk/libs/x86/libweexjsc.so 
b/android/sdk/libs/x86/libweexjsc.so
index 3e2bf9a..b86a821 100755
Binary files a/android/sdk/libs/x86/libweexjsc.so and 
b/android/sdk/libs/x86/libweexjsc.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/libs/x86/libweexjss.so
--
diff --git a/android/sdk/libs/x86/libweexjss.so 
b/android/sdk/libs/x86/libweexjss.so
index 13c858f..fc8e5f6 100755
Binary files a/android/sdk/libs/x86/libweexjss.so and 
b/android/sdk/libs/x86/libweexjss.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java 
b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java
index e6084d9..96ca990 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXEnvironment.java
@@ -119,6 +119,9 @@ public class WXEnvironment {
 configs.put(WXConfig.weexVersion, String.valueOf(WXSDK_VERSION));
 configs.put(WXConfig.logLevel,sLogLevel.getName());
 try {
+  if (isApkDebugable()) {
+options.put(WXConfig.debugMode, "true");
+  }
   options.put(WXConfig.scale, 
Float.toString(sApplication.getResources().getDisplayMetrics().density));
 }catch (NullPointerException e){
   //There is little chance of NullPointerException as sApplication may be 
null.

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/640c53f1/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java 
b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
index 618502d..cbcac83 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
@@ -393,14 +393,19 @@ public class WXSDKEngine {
 
   public static boolean registerComponent(IFComponentHolder holder, boolean 
appendTree, String ... names) throws WXException {
 boolean result =  true;
-for(String name:names) {
-  Map

incubator-weex git commit: *[android] delete some usless code and opt build tools, trim so

2018-03-08 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master ec0a1f9ba -> 5b901c007


 *[android] delete some usless code and opt build tools, trim so


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/5b901c00
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/5b901c00
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/5b901c00

Branch: refs/heads/master
Commit: 5b901c0077ed278386ef9311310e8d9fe5fb7aec
Parents: ec0a1f9
Author: yuhun-alibaba 
Authored: Thu Mar 8 22:11:05 2018 +0800
Committer: yuhun-alibaba 
Committed: Thu Mar 8 22:34:32 2018 +0800

--
 android/sdk/libs/armeabi/libweexjsb.so | Bin 22620 -> 67264 bytes
 android/sdk/libs/armeabi/libweexjsc.so | Bin 337468 -> 275960 bytes
 android/sdk/libs/armeabi/libweexjss.so | Bin 6774704 -> 2965392 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b901c00/android/sdk/libs/armeabi/libweexjsb.so
--
diff --git a/android/sdk/libs/armeabi/libweexjsb.so 
b/android/sdk/libs/armeabi/libweexjsb.so
index f0287cf..48bee08 100644
Binary files a/android/sdk/libs/armeabi/libweexjsb.so and 
b/android/sdk/libs/armeabi/libweexjsb.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b901c00/android/sdk/libs/armeabi/libweexjsc.so
--
diff --git a/android/sdk/libs/armeabi/libweexjsc.so 
b/android/sdk/libs/armeabi/libweexjsc.so
index 28ee2a3..3c386f1 100644
Binary files a/android/sdk/libs/armeabi/libweexjsc.so and 
b/android/sdk/libs/armeabi/libweexjsc.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/5b901c00/android/sdk/libs/armeabi/libweexjss.so
--
diff --git a/android/sdk/libs/armeabi/libweexjss.so 
b/android/sdk/libs/armeabi/libweexjss.so
index dc93f8d..bdedcc5 100644
Binary files a/android/sdk/libs/armeabi/libweexjss.so and 
b/android/sdk/libs/armeabi/libweexjss.so differ



incubator-weex git commit: * [iOS] fix multithread crash about mutable array in scroller component [Forced Update!]

2018-03-08 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 9c9ae8846 -> ec0a1f9ba (forced update)


* [iOS] fix multithread crash about mutable array in scroller component


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/ec0a1f9b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/ec0a1f9b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/ec0a1f9b

Branch: refs/heads/master
Commit: ec0a1f9ba29720f3b3559edc06bcfae855d28553
Parents: 4b0e374
Author: acton393 
Authored: Thu Mar 8 15:27:44 2018 +0800
Committer: yuhun-alibaba 
Committed: Thu Mar 8 19:19:32 2018 +0800

--
 ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m | 11 +++
 1 file changed, 7 insertions(+), 4 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/ec0a1f9b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
--
diff --git a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m 
b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
index 4ebaec5..ede9de3 100644
--- a/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
+++ b/ios/sdk/WeexSDK/Sources/Component/WXScrollerComponent.m
@@ -28,6 +28,7 @@
 #import "WXRefreshComponent.h"
 #import "WXConfigCenterProtocol.h"
 #import "WXSDKEngine.h"
+#import "WXThreadSafeMutableArray.h"
 
 @interface WXScrollerComponnetView:UIScrollView
 @end
@@ -50,7 +51,7 @@
 @interface WXScrollerComponent()
 
 @property (nonatomic, strong) NSMutableArray *  stickyArray;
-@property (nonatomic, strong) NSMutableArray *  listenerArray;
+@property (nonatomic, strong) WXThreadSafeMutableArray * listenerArray;
 @property (nonatomic, weak) WXRefreshComponent *refreshComponent;
 @property (nonatomic, weak) WXLoadingComponent *loadingComponent;
 
@@ -118,7 +119,7 @@ WX_EXPORT_METHOD(@selector(resetLoadmore))
 if (self) {
 
 _stickyArray = [NSMutableArray array];
-_listenerArray = [NSMutableArray array];
+_listenerArray = [WXThreadSafeMutableArray array];
 _scrollEvent = NO;
 _scrollStartEvent = NO;
 _scrollEndEvent = NO;
@@ -382,7 +383,8 @@ WX_EXPORT_METHOD(@selector(resetLoadmore))
 - (void)addScrollToListener:(WXComponent *)target
 {
 BOOL has = NO;
-for (WXScrollToTarget *targetData in self.listenerArray) {
+WXThreadSafeMutableArray *listenerArray = [self.listenerArray copy];
+for (WXScrollToTarget *targetData in listenerArray) {
 if (targetData.target == target) {
 has = YES;
 break;
@@ -400,7 +402,8 @@ WX_EXPORT_METHOD(@selector(resetLoadmore))
 {
 if (_shouldRemoveScrollerListener) {
 WXScrollToTarget *targetData = nil;
-for (WXScrollToTarget *targetDataTemp in self.listenerArray) {
+WXThreadSafeMutableArray *listenerArray = [self.listenerArray copy];
+for (WXScrollToTarget *targetDataTemp in listenerArray) {
 if (targetDataTemp.target == target) {
 targetData = targetDataTemp;
 break;



[1/5] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil

2018-03-06 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 4b0e37423 -> 7c5ef1c68


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/pre-build/native-bundle-main.js
--
diff --git a/pre-build/native-bundle-main.js b/pre-build/native-bundle-main.js
index afb172d..e9c4e7e 100644
--- a/pre-build/native-bundle-main.js
+++ b/pre-build/native-bundle-main.js
@@ -1 +1,19079 @@
-(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.4, 
Build 2018-02-07 17:13. (Vue: 2.5.13-weex.5, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),u=t(this)?Object(new this(s)):new 
Array(s),c=0;c0?F:D)(e)},V=Math.min,W=function(e){return 
e>0?V(L(e),9007199254740991):0},U=Math.max,B=Math.min,q="__core-js_shared__",J=a[q]||(a[q]={}),z=function(e){return
 J[e]||(J[e]={})},H=z("keys"),G=function(e){return 

[4/5] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil

2018-03-06 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/assets/main-backup.js
--
diff --git a/android/sdk/assets/main-backup.js 
b/android/sdk/assets/main-backup.js
new file mode 100644
index 000..afb172d
--- /dev/null
+++ b/android/sdk/assets/main-backup.js
@@ -0,0 +1 @@
+(this.nativeLog||function(e){console.log(e)})("START JS FRAMEWORK 0.24.4, 
Build 2018-02-07 17:13. (Vue: 2.5.13-weex.5, Rax: 0.4.20)");var 
global=this,process={env:{}},setTimeout=global.setTimeout;!function(e,t){"object"==typeof
 exports&&"undefined"!=typeof module?t():"function"==typeof 
define&?define(t):t()}(0,function(){"use strict";var 
e,t,n,r;function o(e){return 
e&__esModule&(e,"default")?e.default:e}function
 i(e,t){return 
e(t={exports:{}},t.exports),t.exports}Array.from||(Array.from=(e=Object.prototype.toString,t=function(t){return"function"==typeof
 t||"[object Function]"===e.call(t)},n=Math.pow(2,53)-1,r=function(e){var 
t,r=(t=Number(e),isNaN(t)?0:0!==t&(t)?(t>0?1:-1)*Math.floor(Math.abs(t)):t);return
 Math.min(Math.max(r,0),n)},function(e){var n=Object(e);if(null==e)throw new 
TypeError("Array.from requires an array-like object - not null or 
undefined");var o,i=arguments.length>1?arguments[1]:void 0;if(void 0!==i){if(!
 t(i))throw new TypeError("Array.from: when provided, the second argument must 
be a function");arguments.length>2&&(o=arguments[2])}for(var 
a,s=r(n.length),u=t(this)?Object(new this(s)):new 
Array(s),c=0;c0?F:D)(e)},V=Math.min,W=function(e){return 
e>0?V(L(e),9007199254740991):0},U=Math.max,B=Math.min,q="__core-js_shared__",J=a[q]||(a[q]={}),z=function(e){return
 J[e]||(J[e]={})},H=z("keys"),G=function(e){return 
H[e]||(H[e]=k(e))},X=(I=!1,function(e,t,n){var 

[3/5] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil

2018-03-06 Thread toretto
http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/7c5ef1c6/android/sdk/assets/weex-rax.js
--
diff --git a/android/sdk/assets/weex-rax.js b/android/sdk/assets/weex-rax.js
new file mode 100644
index 000..19ffa62
--- /dev/null
+++ b/android/sdk/assets/weex-rax.js
@@ -0,0 +1,8299 @@
+/* Prepare Rax Environment APIs 0.4.20, Build 2018-02-26 19:32. */
+
+var global = this; var process = {env:{}};
+(function (global, factory) {
+   typeof exports === 'object' && typeof module !== 'undefined' ? 
factory() :
+   typeof define === 'function' && define.amd ? define(factory) :
+   (factory());
+}(this, (function () { 'use strict';
+
+function unwrapExports (x) {
+   return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 
'default') ? x['default'] : x;
+}
+
+function createCommonjsModule(fn, module) {
+   return module = { exports: {} }, fn(module, module.exports), 
module.exports;
+}
+
+var api = createCommonjsModule(function (module) {
+module.exports = /**/ (function(modules) { // webpackBootstrap
+/**/  // The module cache
+/**/  var installedModules = {};
+/**/
+/**/  // The require function
+/**/  function __webpack_require__(moduleId) {
+/**/
+/**/// Check if module is in cache
+/**/if(installedModules[moduleId]) {
+/**/  return installedModules[moduleId].exports;
+/**/}
+/**/// Create a new module (and put it into the cache)
+/**/var module = installedModules[moduleId] = {
+/**/  i: moduleId,
+/**/  l: false,
+/**/  exports: {}
+/**/};
+/**/
+/**/// Execute the module function
+/**/modules[moduleId].call(module.exports, module, module.exports, 
__webpack_require__);
+/**/
+/**/// Flag the module as loaded
+/**/module.l = true;
+/**/
+/**/// Return the exports of the module
+/**/return module.exports;
+/**/  }
+/**/
+/**/
+/**/  // expose the modules object (__webpack_modules__)
+/**/  __webpack_require__.m = modules;
+/**/
+/**/  // expose the module cache
+/**/  __webpack_require__.c = installedModules;
+/**/
+/**/  // define getter function for harmony exports
+/**/  __webpack_require__.d = function(exports, name, getter) {
+/**/if(!__webpack_require__.o(exports, name)) {
+/**/  Object.defineProperty(exports, name, {
+/**/configurable: false,
+/**/enumerable: true,
+/**/get: getter
+/**/  });
+/**/}
+/**/  };
+/**/
+/**/  // getDefaultExport function for compatibility with non-harmony 
modules
+/**/  __webpack_require__.n = function(module) {
+/**/var getter = module && module.__esModule ?
+/**/  function getDefault() { return module['default']; } :
+/**/  function getModuleExports() { return module; };
+/**/__webpack_require__.d(getter, 'a', getter);
+/**/return getter;
+/**/  };
+/**/
+/**/  // Object.prototype.hasOwnProperty.call
+/**/  __webpack_require__.o = function(object, property) { return 
Object.prototype.hasOwnProperty.call(object, property); };
+/**/
+/**/  // __webpack_public_path__
+/**/  __webpack_require__.p = "";
+/**/
+/**/  // Load entry module and return exports
+/**/  return __webpack_require__(__webpack_require__.s = 3);
+/**/ })
+//
+/**/ ([
+/* 0 */
+/*!***!*\
+  !*** 
./packages/weex-rax-framework-api/node_modules/.npminstall/event-target-shim/2.0.0/event-target-shim/lib/commons.js
 ***!
+  
\***/
+/*! dynamic exports provided */
+/*! all exports used */
+/*! ModuleConcatenation bailout: Module is not an ECMAScript module */
+/***/ (function(module, exports, __webpack_require__) {
+
+var createUniqueKey = module.exports.createUniqueKey = (
+typeof Symbol !== "undefined" ? Symbol : //eslint-disable-line no-undef
+/* otherwise */ function createUniqueKey(name) {
+return "[[" + name + "_" + Math.random().toFixed(8).slice(2) + "]]"
+}
+);
+
+/**
+ * Checks whether the given value is a non-null object or not.
+ *
+ * @param {any} x - The value to be check.
+ * @returns {boolean} `true` if the value is a non-null object.
+ * @private
+ */
+var isObject = module.exports.isObject = function isObject(x) {
+return typeof x === "object" && x !== null
+};
+
+/**
+ * The key of listeners.
+ *
+ * @type {symbol|string}
+ * @private
+ */
+module.exports.LISTENERS = createUniqueKey("listeners");
+
+/**
+ * A value of kind for listeners which are registered in the capturing phase.

[5/5] incubator-weex git commit: * [WEEX-240] [android] feature update for weexsandbox and size off so 1. every page will has a runtime context independent of other page 2. At the beginning of js, wil

2018-03-06 Thread toretto
 * [WEEX-240] [android] feature update for weexsandbox and size off so
 1. every page will has a runtime context independent of other page
 2. At the beginning of js, will use // {"framework" : "Rax"} or // 
{"framework" : "Vue"} to distinguish type
 3. if page type is neither Rax nor Vue, will use global context runtime
 4. delete some usless code and opt build tools, trim so


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/7c5ef1c6
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/7c5ef1c6
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/7c5ef1c6

Branch: refs/heads/master
Commit: 7c5ef1c68f7c71f9179af7693ae20a691a02c971
Parents: 4b0e374
Author: yuhun-alibaba 
Authored: Thu Mar 1 22:11:16 2018 +0800
Committer: yuhun-alibaba 
Committed: Wed Mar 7 14:58:45 2018 +0800

--
 android/sdk/assets/main-backup.js   | 1 +
 android/sdk/assets/weex-rax.js  |  8299 +++
 android/sdk/libs/armeabi/libweexjsb.so  |   Bin 22620 -> 67264 bytes
 android/sdk/libs/armeabi/libweexjsc.so  |   Bin 337468 -> 276000 bytes
 android/sdk/libs/armeabi/libweexjss.so  |   Bin 6774704 -> 2965560 
bytes
 android/sdk/libs/armeabi/libweexjst.so  |   Bin 22552 -> 22552 bytes
 android/sdk/libs/x86/libweexjsc.so  |   Bin 649940 -> 66 bytes
 android/sdk/libs/x86/libweexjss.so  |   Bin 10942128 -> 8373712 
bytes
 .../java/com/taobao/weex/WXEnvironment.java | 3 +
 .../java/com/taobao/weex/WXSDKInstance.java |20 +
 .../java/com/taobao/weex/bridge/WXBridge.java   |28 +
 .../com/taobao/weex/bridge/WXBridgeManager.java |   266 +-
 .../java/com/taobao/weex/common/IWXBridge.java  |29 +
 .../java/com/taobao/weex/common/WXConfig.java   | 1 +
 pre-build/native-bundle-main.js | 19080 -
 15 files changed, 27721 insertions(+), 6 deletions(-)
--




incubator-weex git commit: * [WEEX-207] [android] statistics jsf init status and upload

2018-02-25 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 10182df72 -> 0b3edc6ba


 * [WEEX-207] [android] statistics jsf init status and upload


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/0b3edc6b
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/0b3edc6b
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/0b3edc6b

Branch: refs/heads/master
Commit: 0b3edc6ba2f3ef888ad3786f06264d0cfecf0248
Parents: 10182df
Author: yuhun-alibaba 
Authored: Tue Feb 6 17:01:37 2018 +0800
Committer: yuhun-alibaba 
Committed: Mon Feb 26 12:13:13 2018 +0800

--
 .../main/java/com/taobao/weex/bridge/WXBridgeManager.java | 10 --
 .../src/main/java/com/taobao/weex/common/WXErrorCode.java |  4 
 2 files changed, 12 insertions(+), 2 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0b3edc6b/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 79e3127..fca40d9 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
@@ -1809,12 +1809,18 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
   String reinitInfo = "";
   if (reInitCount > 1) {
 reinitInfo = "reinit Framework:";
+WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_REINIT_SUCCESS.getErrorCode(),
+"initFramework", reinitInfo + "success", null);
+  } else {
+WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_JS_FRAMEWORK_INIT_SUCCESS.getErrorCode(),
+"initFramework", reinitInfo + "success", null);
   }
+
 } else {
   if (reInitCount > 1) {
 WXLogUtils.e("[WXBridgeManager] invokeReInitFramework  
ExecuteJavaScript fail");
 String err = "[WXBridgeManager] invokeReInitFramework  
ExecuteJavaScript fail reinit FrameWork";
-   WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_FRAMEWORK.getErrorCode(),
+   WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK.getErrorCode(),
"initFramework", "reInitCount = " + 
reInitCount + err, null);
   } else {
 WXLogUtils.e("[WXBridgeManager] invokeInitFramework  
ExecuteJavaScript fail");
@@ -1827,7 +1833,7 @@ public class WXBridgeManager implements Callback, 
BactchExecutor {
 if (reInitCount > 1) {
   WXLogUtils.e("[WXBridgeManager] invokeInitFramework ", e);
   String err = "[WXBridgeManager] invokeInitFramework reinit FrameWork 
exception!#" + e.toString();
- WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_FRAMEWORK.getErrorCode(),
+ WXExceptionUtils.commitCriticalExceptionRT(null, 
WXErrorCode.WX_ERR_JS_REINIT_FRAMEWORK.getErrorCode(),
  "initFramework", "reInitCount ==" + 
reInitCount + err, null);
 } else {
   WXLogUtils.e("[WXBridgeManager] invokeInitFramework ", e);

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/0b3edc6b/android/sdk/src/main/java/com/taobao/weex/common/WXErrorCode.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/common/WXErrorCode.java 
b/android/sdk/src/main/java/com/taobao/weex/common/WXErrorCode.java
index b6a9340..36a03db 100644
--- a/android/sdk/src/main/java/com/taobao/weex/common/WXErrorCode.java
+++ b/android/sdk/src/main/java/com/taobao/weex/common/WXErrorCode.java
@@ -142,6 +142,10 @@ public enum WXErrorCode {
 
   WX_ERR_JSDOWNLOAD_END("-2299", "js bundle download end"),
 
+  // for js framework
+  WX_JS_FRAMEWORK_INIT_SUCCESS("-1000", "js framework success"),
+
+  WX_JS_FRAMEWORK_REINIT_SUCCESS("-1001", "js framework reinit success"),
   /**
* JS Framework run error
*/



incubator-weex git commit: JsService should be registered during weex reload

2018-02-02 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 3023b070b -> c6754e68f


JsService should be registered during weex reload


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/c6754e68
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/c6754e68
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/c6754e68

Branch: refs/heads/master
Commit: c6754e68f57f7a926ed49e864079abd3444a820d
Parents: 3023b07
Author: Darin 
Authored: Thu Jan 25 16:21:08 2018 +0800
Committer: yuhun-alibaba 
Committed: Fri Feb 2 16:23:50 2018 +0800

--
 .../main/java/com/taobao/weex/WXSDKEngine.java  |  1 +
 .../taobao/weex/bridge/WXServiceManager.java| 25 +---
 2 files changed, 18 insertions(+), 8 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c6754e68/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java 
b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
index 5548ced..7069729 100644
--- a/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
+++ b/android/sdk/src/main/java/com/taobao/weex/WXSDKEngine.java
@@ -523,6 +523,7 @@ public class WXSDKEngine {
 WXBridgeManager.getInstance().restart();
 WXBridgeManager.getInstance().initScriptsFramework(framework);
 
+WXServiceManager.reload();
 WXModuleManager.reload();
 WXComponentRegistry.reload();
 WXSDKManager.getInstance().postOnUiThread(new Runnable() {

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/c6754e68/android/sdk/src/main/java/com/taobao/weex/bridge/WXServiceManager.java
--
diff --git 
a/android/sdk/src/main/java/com/taobao/weex/bridge/WXServiceManager.java 
b/android/sdk/src/main/java/com/taobao/weex/bridge/WXServiceManager.java
index 4baf3ba..27bfb5a 100644
--- a/android/sdk/src/main/java/com/taobao/weex/bridge/WXServiceManager.java
+++ b/android/sdk/src/main/java/com/taobao/weex/bridge/WXServiceManager.java
@@ -19,7 +19,6 @@
 package com.taobao.weex.bridge;
 
 import android.text.TextUtils;
-
 import com.taobao.weex.WXEnvironment;
 import com.taobao.weex.common.WXJSService;
 
@@ -46,13 +45,11 @@ public class WXServiceManager {
 }
 String serviceJs = String.format(";(function(service, options){ ;%s; 
})({ %s }, { %s });", serviceScript, param1, param2);
 
-if(WXEnvironment.isApkDebugable()) {
-WXJSService service = new WXJSService();
-service.setName(name);
-service.setScript(serviceScript);
-service.setOptions(options);
-sInstanceJSServiceMap.put(name, service);
-}
+WXJSService service = new WXJSService();
+service.setName(name);
+service.setScript(serviceScript);
+service.setOptions(options);
+sInstanceJSServiceMap.put(name, service);
 
 WXBridgeManager.getInstance().execJSService(serviceJs);
 return true;
@@ -84,4 +81,16 @@ public class WXServiceManager {
 }
 return null;
 }
+
+public static void reload() {
+WXBridgeManager.getInstance().post(new Runnable() {
+@Override
+public void run() {
+for (Map.Entry entry : 
sInstanceJSServiceMap.entrySet()) {
+WXJSService service = entry.getValue();
+registerService(service.getName(), service.getScript(), 
service.getOptions());
+}
+}
+});
+}
 }



[incubator-weex] Git Push Summary [forced push!] [Forced Update!]

2018-02-02 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 544f92139 -> 3023b070b (forced update)


[1/2] incubator-weex git commit: *[WEEX-206][android] update x86 so for jsc

2018-02-02 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 8c939acbd -> 544f92139


 *[WEEX-206][android] update x86 so for jsc


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/3023b070
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/3023b070
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/3023b070

Branch: refs/heads/master
Commit: 3023b070b4a6223c502b61eba619fa5a9cb221b0
Parents: b947109
Author: yuhun-alibaba 
Authored: Fri Feb 2 15:10:04 2018 +0800
Committer: yuhun-alibaba 
Committed: Fri Feb 2 15:56:42 2018 +0800

--
 android/sdk/libs/x86/libweexjsb.so | Bin 0 -> 3212 bytes
 android/sdk/libs/x86/libweexjsc.so | Bin 12126020 -> 649940 bytes
 android/sdk/libs/x86/libweexjss.so | Bin 0 -> 10942128 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3023b070/android/sdk/libs/x86/libweexjsb.so
--
diff --git a/android/sdk/libs/x86/libweexjsb.so 
b/android/sdk/libs/x86/libweexjsb.so
new file mode 100755
index 000..89b54ae
Binary files /dev/null and b/android/sdk/libs/x86/libweexjsb.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3023b070/android/sdk/libs/x86/libweexjsc.so
--
diff --git a/android/sdk/libs/x86/libweexjsc.so 
b/android/sdk/libs/x86/libweexjsc.so
index 6b3ca7f..3e2bf9a 100755
Binary files a/android/sdk/libs/x86/libweexjsc.so and 
b/android/sdk/libs/x86/libweexjsc.so differ

http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/3023b070/android/sdk/libs/x86/libweexjss.so
--
diff --git a/android/sdk/libs/x86/libweexjss.so 
b/android/sdk/libs/x86/libweexjss.so
new file mode 100755
index 000..13c858f
Binary files /dev/null and b/android/sdk/libs/x86/libweexjss.so differ



[2/2] incubator-weex git commit: Merge branch 'fix_x86_so_bug' of https://github.com/yuhun-alibaba/incubator-weex into incubator-master

2018-02-02 Thread toretto
Merge branch 'fix_x86_so_bug' of 
https://github.com/yuhun-alibaba/incubator-weex into incubator-master


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/544f9213
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/544f9213
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/544f9213

Branch: refs/heads/master
Commit: 544f921399d8b9e246ff588138ced7ba0ac1d3b5
Parents: 8c939ac 3023b07
Author: yuhun-alibaba 
Authored: Fri Feb 2 16:07:49 2018 +0800
Committer: yuhun-alibaba 
Committed: Fri Feb 2 16:07:49 2018 +0800

--
 android/sdk/libs/x86/libweexjsb.so | Bin 0 -> 3212 bytes
 android/sdk/libs/x86/libweexjsc.so | Bin 12126020 -> 649940 bytes
 android/sdk/libs/x86/libweexjss.so | Bin 0 -> 10942128 bytes
 3 files changed, 0 insertions(+), 0 deletions(-)
--




incubator-weex git commit: fix api 21 PaintDrawable Crash

2018-01-23 Thread toretto
Repository: incubator-weex
Updated Branches:
  refs/heads/master 2626fe8c5 -> 6bcb5a462


fix api 21 PaintDrawable Crash


Project: http://git-wip-us.apache.org/repos/asf/incubator-weex/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-weex/commit/6bcb5a46
Tree: http://git-wip-us.apache.org/repos/asf/incubator-weex/tree/6bcb5a46
Diff: http://git-wip-us.apache.org/repos/asf/incubator-weex/diff/6bcb5a46

Branch: refs/heads/master
Commit: 6bcb5a46212fa42185ab94e743d95d9a1b71
Parents: 2626fe8
Author: lvfen <284437...@qq.com>
Authored: Tue Jan 23 15:22:57 2018 +0800
Committer: lvfen <284437...@qq.com>
Committed: Tue Jan 23 15:22:57 2018 +0800

--
 .../main/java/com/taobao/weex/utils/ImageDrawable.java | 13 +
 1 file changed, 13 insertions(+)
--


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/6bcb5a46/android/sdk/src/main/java/com/taobao/weex/utils/ImageDrawable.java
--
diff --git a/android/sdk/src/main/java/com/taobao/weex/utils/ImageDrawable.java 
b/android/sdk/src/main/java/com/taobao/weex/utils/ImageDrawable.java
index 142bf7a..a352cf6 100644
--- a/android/sdk/src/main/java/com/taobao/weex/utils/ImageDrawable.java
+++ b/android/sdk/src/main/java/com/taobao/weex/utils/ImageDrawable.java
@@ -21,12 +21,16 @@ package com.taobao.weex.utils;
 
 import android.graphics.Bitmap;
 import android.graphics.BitmapShader;
+import android.graphics.Canvas;
 import android.graphics.Matrix;
+import android.graphics.Paint;
 import android.graphics.RectF;
 import android.graphics.Shader;
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
 import android.graphics.drawable.PaintDrawable;
+import android.graphics.drawable.shapes.Shape;
+import android.os.Build;
 import android.support.annotation.NonNull;
 import android.support.annotation.Nullable;
 import android.widget.ImageView;
@@ -123,6 +127,15 @@ public class ImageDrawable extends PaintDrawable {
 super.setCornerRadii(radii);
   }
 
+  @Override
+  protected void onDraw(Shape shape, Canvas canvas, Paint paint) {
+if (Build.VERSION.SDK_INT == Build.VERSION_CODES.LOLLIPOP) {
+  // fix api 21 PaintDrawable crash
+  paint.setAntiAlias(false);
+}
+super.onDraw(shape, canvas, paint);
+  }
+
   public
   @Nullable
   float[] getCornerRadii() {