2011-12-22 47 views
1

我需要在本地C++中調用各種Java函數來做一些事情(加載gfx等),並想知道如何。你們中有人是否知道一些樣本或有一些有用的代碼片段?如何從NDK C++調用Java?

+1

嘗試使用搜索: [http://stackoverflow.com/questions/5198105/calling-a-java-method-from-c-in-android][1] [1]:http://stackoverflow.com/questions/5198105/calling-a-java-method-from-c-in-android – Yury 2011-12-22 22:33:43

+0

我使用了搜索,但一定錯過了。無論如何,這正是我正在尋找的,它的工作原理,謝謝! – HardCoder 2011-12-23 07:39:30

回答

2

要從NDK調用Java函數,您必須使用JNI。

一個有用而簡單的例子是在以下鏈接提供:

Invoke Java from C/C++

但我建議你:

  • 創建一個新的Java虛擬機作爲上面的例子。相反,您應該使用調用NDK函數時獲得的JavaVM *和JNIEnv *。
  • 使用NDK時請小心內存泄漏。