Android-NDK開發之基礎--Android JNI有關Java類命名方式
(Ljava/lang/String;I)V 其中本句
I = Integer
B = Byte
S = Short
C = Char
LXXX; = L加上類名
3. 在JNI下面,我們常用的命名方式:
static JavaVM *g_VM; //全域性環境指標
static jclass jNativesClass;
(*env)->GetJavaVM(env, &g_VM); //獲取env環境指標,這樣以後用g_VM就可以了。
4. jobjectArray jargv // java陣列
int getArrayLen(JNIEnv * env, jobjectArray jarray): //獲取一個Java陣列長度,返回為jsize型別
jstring jele = (jstring)(*env)->GetObjectArrayElement(env, jargv, n); //從將Java陣列元素n轉為本地的jstring
const char *word = (*env)->GetStringUTFChars(env, jele, 0); //將java的utf字元轉為c下面的char*
5. 記住釋放記憶體,這不是java
(*env)->ReleaseStringUTFChars(env, jele, word);
6. 有關Java類命名方式
(Ljava/lang/String;I)V 其中本句
I = Integer
B = Byte
S = Short
C = Char
LXXX; = L加上類名
7. JNI本身沒有什麼技術含量,Android123提醒大家,會C語言的網友只需要知道Java和C/C++中如何通過JNI相互傳輸資料即可。
8. JNI和Java如何傳遞大型資料呢,其實變通的方法可以通過共享一個檔案方式處理一些大型資料。