Android bug(二) 音視頻之Applying operator to JniEnv instead of a pointer

jni中的常見問題:

使用C++編寫代碼
在這裏插入圖片描述

解決辦法:
將C++代碼改成

 jint *rgbData = (jint *) (env->GetPrimitiveArrayCritical( rgbOut, 0));
 jbyte *yuv = (jbyte *) env->GetPrimitiveArrayCritical( avyuv, 0);

錯誤原因:

可以查看<jni.h>

1、用.cpp文件定義的

   const char* GetStringUTFChars(jstring string, jboolean* isCopy)
    { return functions->GetStringUTFChars(this, string, isCopy); }

2、用.c文件定義

const char* (*GetStringUTFChars)(JNIEnv*, jstring, jboolean*);

廢話不多說,感謝大家觀看,關注一下。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章