Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> Android NDK學習筆記7-JNI的NIO操作

Android NDK學習筆記7-JNI的NIO操作

編輯:關於Android編程

JNI提供了在原生代碼中使用NIO(I/O)的函數,與數組操作相比更適合原生代碼和java應用程序之間傳送大量數據。
● 創建直接字節緩沖區
原生代碼可以創建java應用程序使用的直接字節緩沖區,該過程是以提供一個原生C字節數組為基礎,例如:

unsigned char* buffer = (unsigned  char*) malloc(1024)
……
jobject directBuffer;
directBuffer = (*env)->NewDirectByteBuffer(env,buffer,1024);

● 直接字節緩沖區獲取
java應用程序中也可以創建直接字節緩沖區,在原生代碼中調用GetDirectBufferAddress函數可以獲取原生自己數組的內存地址。例如:

unsigned char* buffer
buffer = (unsigned char*) (*env)->GetDirectBufferAddress(env,directBuffer);
  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved