1

ユーザー間のビデオ、オーディオ チャットを提供する ooVoo ライブラリを実装しようとしています。登録後、このリンクから SDK をダウンロードしました。

ooVoo ライブラリのドキュメントを読みましたが、サンプル デモでも実行できません。誰かがこのライブラリを実装している場合は、これを行う方法を教えてください。

プロジェクトにoovooSdk.jarファイルを追加しました。

このアプリを初めて実行しようとすると、logcat で次のエラーが発生します。

04-03 09:35:21.054: E/dalvikvm(1914): dlopen("/data/app-lib/com.ooVoo.oovoosample-1/liboovoo-sdk.so") failed: Cannot load library: soinfo_link_image(linker.cpp:1635): could not load library "libva.so" needed by "liboovoo-sdk.so"; caused by load_library(linker.cpp:745): library "libva.so" not found
04-03 09:35:21.054: D/AndroidRuntime(1914): Shutting down VM
04-03 09:35:21.054: W/dalvikvm(1914): threadid=1: thread exiting with uncaught exception (group=0xb4ce9908)
04-03 09:35:21.084: E/AndroidRuntime(1914): FATAL EXCEPTION: main
04-03 09:35:21.084: E/AndroidRuntime(1914): java.lang.UnsatisfiedLinkError: Cannot load library: soinfo_link_image(linker.cpp:1635): could not load library "libva.so" needed by "liboovoo-sdk.so"; caused by load_library(linker.cpp:745): library "libva.so" not found
04-03 09:35:21.084: E/AndroidRuntime(1914):     at java.lang.Runtime.loadLibrary(Runtime.java:371)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at java.lang.System.loadLibrary(System.java:535)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.oovoo.core.ConferenceCore.<init>(ConferenceCore.java:289)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.oovoo.core.ConferenceCore.instance(ConferenceCore.java:176)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.ooVoo.oovoosample.ConferenceManager.<init>(ConferenceManager.java:103)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.ooVoo.oovoosample.ConferenceManager.getInstance(ConferenceManager.java:94)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.ooVoo.oovoosample.Main.MainActivity.initConferenceManager(MainActivity.java:104)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.ooVoo.oovoosample.Main.MainActivity.onCreate(MainActivity.java:58)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.Activity.performCreate(Activity.java:5104)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1080)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2144)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2230)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.ActivityThread.access$600(ActivityThread.java:141)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1234)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.os.Handler.dispatchMessage(Handler.java:99)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.os.Looper.loop(Looper.java:137)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at android.app.ActivityThread.main(ActivityThread.java:5039)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at java.lang.reflect.Method.invokeNative(Native Method)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at java.lang.reflect.Method.invoke(Method.java:511)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:793)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:560)
04-03 09:35:21.084: E/AndroidRuntime(1914):     at dalvik.system.NativeStart.main(Native Method)
4

4 に答える 4

1

古い質問ですが、ooVoo SDK はネイティブ コードを使用しており、FFI とやり取りするには JNI が必要です。IDE によっては、これらのライブラリをさまざまな場所に配置する必要があります。

oovoosdk.jar はこれらの .so ファイルを探しに出かけますが、それらを見つけられません。これらのライブラリを正しくリンクすると、正常に動作します。

Eclipse の使用

執筆時点では、Android Studio ではファイルを配置する必要があり、配置src/main/jniLibs後にプロジェクトで「Gradle Sync」を実行します。

于 2014-12-04T01:31:58.230 に答える
0

これで問題は解決しました:

public class MyActivity extends Activity {
    ...
    static {
        System.loadLibrary("oovoo-sdk");
    }
    ...
}
于 2015-06-25T14:38:18.777 に答える
0

すべての .so ファイルをデバイスにデプロイしたことを確認してください。

ooVoo SDK は、x86 と armeabi v7a の 2 つのプラットフォーム用に提供されています。armeabi の実装には .so ファイルが 1 つしかありませんが、x86 には 3 つのファイルがあります。

一部の Android デバイスでは、正しく処理されません。両方のプラットフォームで同じファイルが必要です。それを解決するには、arm フォルダーに libva-android.so および libva.so という名前の空のファイル (サイズ 0) を作成します。

于 2015-05-20T15:27:11.290 に答える
0

ooVoo 開発者サイトにログインするだけで、

  1. ログイン後、ダッシュボードへ
  2. [CREATE A NEW APP] ボタンをクリックします - AppId が生成されます
  3. VIEW ボタンをクリックし、もう一度 VIEW TOKEN をクリックし、もう一度 ADD TOKEN をクリックします - トークンが生成されます
  4. マニフェスト ファイルのメタデータ内にAppIDを配置します。
  5. また、トークンをマニフェスト ファイルのメタデータ内に配置します。TOKEN をコピーするときは注意してください。リアルタイム デバイスで実行します。 これは私のために働いた。この手順がお役に立てば幸いです。
于 2014-04-18T15:25:00.493 に答える