Skip to content

Commit 34d7528

Browse files
miominYorkShen
authored andcommitted
* [android] Fix setViewport when debug
1 parent 5a1d32a commit 34d7528

File tree

1 file changed

+3
-49
lines changed

1 file changed

+3
-49
lines changed

weex_core/Source/android/bridge/impl/jsfunction_impl_android.cpp

Lines changed: 3 additions & 49 deletions
Original file line numberDiff line numberDiff line change
@@ -18,6 +18,7 @@
1818
*/
1919

2020
#include <android/base/jni/jbytearray_ref.h>
21+
#include <android/jsengine/api/WeexJSCoreApi.h>
2122
#include "jsfunction_impl_android.h"
2223
#include "../../base/string/string_utils.h"
2324
#include "../../jniprebuild/jniheader/WXJsFunctions_jni.h"
@@ -103,59 +104,12 @@ void
103104
jsHandleCallNativeModule(JNIEnv *env, jobject object, jstring instanceId, jstring module,
104105
jstring method, jbyteArray
105106
arguments, jbyteArray options, jboolean from) {
106-
107-
108-
#if JSAPI_LOG
109-
LOGD("[ExtendJSApi] handleCallNativeModule >>>> pageId: %s, module: %s, method: %s, arg: %s",
110-
jString2StrFast(env, instanceId).c_str(), jString2StrFast(env, module).c_str(),
111-
jString2StrFast(env, method).c_str(), jByteArray2Str(env, arguments).c_str());
112-
#endif
113107
JByteArrayRef argumentsRef(env, arguments);
114108
JByteArrayRef optionsRef(env, options);
115109

116110

117-
// add for android support
118-
jobject result;
119-
result = static_cast<jobject>(Bridge_Impl_Android::getInstance()->callNativeModule(
120-
getCharFromJString(env, instanceId),
121-
getCharFromJString(env, module),
122-
getCharFromJString(env, method),
123-
argumentsRef.getBytes(),
124-
argumentsRef.length(),
125-
optionsRef.getBytes(),
126-
optionsRef.length()));
127-
128-
jfieldID jTypeId = env->GetFieldID(jWXJSObject, "type", "I");
129-
jint jTypeInt = env->GetIntField(result, jTypeId);
130-
jfieldID jDataId = env->GetFieldID(jWXJSObject, "data", "Ljava/lang/Object;");
131-
jobject jDataObj = env->GetObjectField(result, jDataId);
132-
if (jTypeInt == 1) {
133-
if (jDoubleValueMethodId == NULL) {
134-
jclass jDoubleClazz = env->FindClass("java/lang/Double");
135-
jDoubleValueMethodId = env->GetMethodID(jDoubleClazz, "doubleValue", "()D");
136-
env->DeleteLocalRef(jDoubleClazz);
137-
}
138-
jdouble jDoubleObj = env->CallDoubleMethod(jDataObj, jDoubleValueMethodId);
139-
} else if (jTypeInt == 2) {
140-
jstring jDataStr = (jstring) jDataObj;
141-
//ret = std::move(createStringResult(env, jDataStr));
142-
} else if (jTypeInt == 3) {
143-
jstring jDataStr = (jstring) jDataObj;
144-
//ret = std::move(createJSONStringResult(env, jDataStr));
145-
} else if (jTypeInt == 4) {
146-
jbyteArray array = (jbyteArray)jDataObj;
147-
if(array != nullptr){
148-
int length = env->GetArrayLength(array);
149-
void* data = env->GetByteArrayElements(array, 0);
150-
//ret = std::move(createByteArrayResult((const char*)data, length));
151-
env->ReleaseByteArrayElements(array, (jbyte*)data, 0);
152-
}
153-
}
154-
env->DeleteLocalRef(jDataObj);
155-
if(result != nullptr){
156-
env->DeleteLocalRef(result);
157-
}
158-
//return ret;
111+
_callNativeModule(getCharFromJString(env, instanceId), getCharFromJString(env, module), getCharFromJString(env, method),
112+
argumentsRef.getBytes(), argumentsRef.length(), optionsRef.getBytes(), optionsRef.length());
159113
}
160114

161115
void

0 commit comments

Comments
 (0)