2011-07-05 7 views
2

私はpocketsphinx androidに取り組んでいます。 Visual Studio 2010でswigツールを使用してC用のJavaラッパーを生成しました。新しいJavaファイルとJNIファイルをフォルダ内の古いものと置き換えます。しかし、私はプロジェクトに新しい.dllライブラリを置く場所を知らないので、古い "pocketsphinx_JNI"を置き換えることができます。ここでアンドロイドプロジェクトでVS2010によって生成された自分の.dllライブラリを読み込む方法は?

は、ライブラリをロードするコードは次のとおりです。

static { 
    System.loadLibrary("pocketsphinx_jni"); 
    }  

P.S:私は短い答えは、あなたができないことであるAndroidのエミュレータ上で

答えて

2

を働いています。 DLLはWindowsライブラリであり、AndroidはLinuxカーネルで動作します。互換性のある共有オブジェクト(SO)ファイルを作成するには、Android NDKを使用する必要があります。

+0

つまり、私はlibpocketsphinxjni.soを生成し、現在のアンドロイドプロジェクトの共有オブジェクトに置き換える必要がありますか? – faizanjehangir

+0

はい。 libフォルダがあり、その中にSOファイルを追加する必要があります。 – CaseyB

+0

swigを使用して.SOファイルを作成していますが、このコマンドを実行すると.oと.classファイルが生成されません:swig -java file.i、なぜこのようなことを教えてください。 – faizanjehangir

関連する問題