目前科大訊飛官網上只提供了j轉寫ava平臺下的語音sdk,於是通過jni的方式用C++編寫接口層調用java接口。使用jni的例子網上很多,不過我推薦使用加載dll的方式來加載jni相關庫,HINSTANCE hInstance = ::LoadLibrary(TEXT(dllPath.c_str()));//E:\\Program Files (x86)\\Java\\jdk1.8.0_151X86\\jre\\bin\\server\\jvm.dll
if (!hInstance)
{
std::cout << "創建JavaVM失敗2!" << std::endl;
return Error_JVM_DLL_Load_Failure;
}
類似這種,爲什麼這樣,因爲這種方式不但直接、簡潔,而且不用在編譯器中配置多餘的屬性。另外jni中開放了對應的api來獲取或者創建java中的class、object、method、Fileid等等。