2013-02-11 62 views
1

我想在Android中使用NDK項目解碼OGG文件(我試了幾次)。不管我是哪一個,當我建我總是得到類似這樣的錯誤:導入Android NDK項目(解碼OGG)

Caused by: java.lang.UnsatisfiedLinkError: Couldn't load videokit: findLibrary returned null 

我很新的NDK(明顯),所以我不知道我做錯了。我想要做的就是能夠設置OGG文件的播放速率。

回答

1

代碼的java部分鏈接到共享庫對象(.so文件),它通過使用ndk-build編譯代碼的C++/NDK部分而獲得。在這種情況下,您的應用程序無法找到要加載的正確.so文件。這裏有幾件事你可以檢查 -

  1. 非常基本的檢查 - 你在jni文件夾中運行「ndk-build」嗎?如果你沒有,生成沒有.so文件 - eclipse仍然會編譯你的項目,但它不會工作。
  2. 如果您的項目根目錄是PROJECT,請檢查$(PROJECT)/ jni/libs/armeabi或$(PROJECT)/ jni/libs/armeabi-v7a - 一旦您或兩個位置都應該包含.so文件用「ndk-build」命令完成。
  3. 檢查你的java代碼中的某個地方,你在這個.so文件上調用「System.LoadLibrary」。 我認爲它應該是「System.LoadLibrary(videokit)」,但我不確定。