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/05/07 07:52:52 UTC

[19/52] [abbrv] incubator-weex git commit: [WeexCore] merge devTool

[WeexCore] merge devTool


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

Branch: refs/heads/master
Commit: 454de5c0f0f8e72f0aa832584e46ecf10012268d
Parents: 581eb3a
Author: 立省 <li...@alibaba-inc.com>
Authored: Thu Apr 26 16:22:54 2018 +0800
Committer: YorkShen <sh...@gmail.com>
Committed: Mon May 7 15:52:07 2018 +0800

----------------------------------------------------------------------
 .../jniprebuild/jniheader/WXJsFunctions_jni.h   | 171 +++++++++++++++++++
 1 file changed, 171 insertions(+)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-weex/blob/454de5c0/weex_core/Source/android/jniprebuild/jniheader/WXJsFunctions_jni.h
----------------------------------------------------------------------
diff --git a/weex_core/Source/android/jniprebuild/jniheader/WXJsFunctions_jni.h b/weex_core/Source/android/jniprebuild/jniheader/WXJsFunctions_jni.h
new file mode 100644
index 0000000..3cb0ec6
--- /dev/null
+++ b/weex_core/Source/android/jniprebuild/jniheader/WXJsFunctions_jni.h
@@ -0,0 +1,171 @@
+//
+// Created by Darin on 27/03/2018.
+//
+
+#ifndef WEEX_PROJECT_WXJSFUNCTIONS_JNI_H
+#define WEEX_PROJECT_WXJSFUNCTIONS_JNI_H
+
+#include <jni.h>
+#include "../../base/jni/android_jni.h"
+
+namespace {
+    const char kWXJsFunctionClassPath[] = "com/taobao/weex/bridge/WXJsFunctions";
+// Leaking this jclass as we cannot use LazyInstance from some threads.
+    jclass g_WXJsFunction_clazz = NULL;
+#define WXJsFunction_clazz(env) g_WXJsFunction_clazz
+
+}  // namespace
+
+static void initWxBridge(JNIEnv *env, jobject object, jobject bridge, jstring className);
+
+static void jsHandleSetJSVersion(JNIEnv *env, jobject object, jstring jsVersion);
+
+static void jsHandleReportException(JNIEnv *env, jobject object, jstring instanceId, jstring func,
+                                    jstring exceptionjstring);
+
+static void jsHandleCallNative(JNIEnv *env, jobject object, jstring instanceId, jbyteArray tasks,
+                               jstring callback);
+
+static void
+jsHandleCallNativeModule(JNIEnv *env, jobject object, jstring instanceId, jstring module,
+                         jstring method, jbyteArray
+                         arguments, jbyteArray options);
+
+static void
+jsHandleCallNativeComponent(JNIEnv *env, jobject object, jstring instanceId, jstring componentRef,
+                            jstring method,
+                            jbyteArray arguments, jbyteArray options);
+
+static void
+jsHandleCallAddElement(JNIEnv *env, jobject object, jstring instanceId, jstring ref, jstring dom,
+                       jstring index);
+
+static void jsHandleSetTimeout(JNIEnv *env, jobject object, jstring callbackId, jstring time);
+
+static void jsHandleCallNativeLog(JNIEnv *env, jobject object, jbyteArray str_array);
+
+static void jsFunctionCallCreateBody(JNIEnv *env, jobject object, jstring pageId, jstring domStr);
+
+static void
+jsFunctionCallUpdateFinish(JNIEnv *env, jobject object, jstring instanceId, jbyteArray tasks,
+                           jstring callback);
+
+static void jsFunctionCallCreateFinish(JNIEnv *env, jobject object, jstring pageId);
+
+static void
+jsFunctionCallRefreshFinish(JNIEnv *env, jobject object, jstring instanceId, jbyteArray tasks,
+                            jstring callback);
+
+static void
+jsFunctionCallUpdateAttrs(JNIEnv *env, jobject object, jstring pageId, jstring ref, jstring data);
+
+static void
+jsFunctionCallUpdateStyle(JNIEnv *env, jobject object, jstring pageId, jstring ref, jstring data);
+
+static void jsFunctionCallRemoveElement(JNIEnv *env, jobject object, jstring pageId, jstring ref);
+
+static void
+jsFunctionCallMoveElement(JNIEnv *env, jobject object, jstring pageId, jstring ref,
+                          jstring parentRef, jstring index_str);
+
+static void
+jsFunctionCallAddEvent(JNIEnv *env, jobject object, jstring pageId, jstring ref, jstring event);
+
+static void
+jsFunctionCallRemoveEvent(JNIEnv *env, jobject object, jstring pageId, jstring ref, jstring event);
+
+static void jsHandleSetInterval(JNIEnv *env, jobject object, jstring instanceId, jstring callbackId,
+                                jstring time);
+
+static void
+jsHandleClearInterval(JNIEnv *env, jobject object, jstring instanceId, jstring callbackId);
+
+static void jsHandleCallGCanvasLinkNative(JNIEnv *env, jobject object, jstring contextId, int type,
+                                          jstring val);
+
+
+static const JNINativeMethod kMethodsWXJsFunctions[] = {
+        {"initWxBridge",
+                "(Ljava/lang/Object;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(initWxBridge)},
+        {"jsHandleSetJSVersion",
+                "(Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleSetJSVersion)},
+        {"jsHandleReportException",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleReportException)},
+        {"jsHandleCallNative",
+                "(Ljava/lang/String;[BLjava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleCallNative)},
+        {"jsHandleCallNativeModule",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[B[B)V",
+                reinterpret_cast<void *>(jsHandleCallNativeModule)},
+        {"jsHandleCallNativeComponent",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;[B[B)V",
+                reinterpret_cast<void *>(jsHandleCallNativeComponent)},
+        {"jsHandleCallAddElement",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleCallAddElement)},
+        {"jsHandleSetTimeout",
+                "(Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleSetTimeout)},
+        {"jsHandleCallNativeLog",
+                "([B)V",
+                reinterpret_cast<void *>(jsHandleCallNativeLog)},
+        {"jsFunctionCallCreateBody",
+                "(Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallCreateBody)},
+        {"jsFunctionCallUpdateFinish",
+                "(Ljava/lang/String;[BLjava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallUpdateFinish)},
+        {"jsFunctionCallCreateFinish",
+                "(Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallCreateFinish)},
+        {"jsFunctionCallRefreshFinish",
+                "(Ljava/lang/String;[BLjava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallRefreshFinish)},
+        {"jsFunctionCallUpdateAttrs",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallUpdateAttrs)},
+        {"jsFunctionCallUpdateStyle",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallUpdateStyle)},
+        {"jsFunctionCallRemoveElement",
+                "(Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallRemoveElement)},
+        {"jsFunctionCallMoveElement",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallMoveElement)},
+        {"jsFunctionCallAddEvent",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallAddEvent)},
+        {"jsFunctionCallRemoveEvent",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsFunctionCallRemoveEvent)},
+        {"jsHandleSetInterval",
+                "(Ljava/lang/String;Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleSetInterval)},
+        {"jsHandleClearInterval",
+                "(Ljava/lang/String;Ljava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleClearInterval)},
+        {"jsHandleCallGCanvasLinkNative",
+                "(Ljava/lang/String;ILjava/lang/String;)V",
+                reinterpret_cast<void *>(jsHandleCallGCanvasLinkNative)}
+};
+
+
+static bool RegisterNativesImpl(JNIEnv *env) {
+
+    g_WXJsFunction_clazz = reinterpret_cast<jclass>(env->NewGlobalRef(
+            base::android::GetClass(env, kWXJsFunctionClassPath).Get()));
+
+    const int kMethodsWXJsFunctionsSize =
+            sizeof(kMethodsWXJsFunctions) / sizeof(kMethodsWXJsFunctions[0]);
+
+    return 0 <= env->RegisterNatives(WXJsFunction_clazz(env),
+                                     kMethodsWXJsFunctions,
+                                     kMethodsWXJsFunctionsSize);
+
+}
+
+#endif //WEEX_PROJECT_WXJSFUNCTIONS_JNI_H