2012-01-30 10 views
5

私はAndroidには初めてです NDKを使用して基本アプリケーションを作成するには、http://marakana.com/forums/android/examples/49.htmlリンクの指示に従ってください。いいえJNI_Onload()が見つかりませんでした。VMがシャットダウンしました

私はこれらのステップを正確に続けました。私は共有ライブラリも作成しました。私は、アプリケーションを実行すると 、CatLogは次のエラーを示しています。前述のように

Trying to load lib /data/data/com.example.NDKDemo/lib/libndk_demo.so 0x4129dc18 
01-30 04:50:58.856: D/dalvikvm(586): Added shared lib 
        /data/data/com.example.NDKDemo/lib/libndk_demo.so 0x4129dc18 
01-30 04:50:58.856: D/dalvikvm(586): No JNI_OnLoad found in 
        /data/data/com.example.NDKDemo/lib/libndk_demo.so 0x4129dc18, 
        skipping init 
01-30 04:50:58.866: D/AndroidRuntime(586): Shutting down VM 
01-30 04:50:58.866: W/dalvikvm(586): threadid=1: thread exiting with uncaught 
        exception (group=0x409c01f8) 
01-30 04:50:58.896: E/AndroidRuntime(586): FATAL EXCEPTION: main 
01-30 04:50:58.896: E/AndroidRuntime(586): java.lang.RuntimeException: 
        Unable to instantiate activity ComponentInfo 
        {com.example.NDKDemo/com.example.NDKDemo.NativeLib}: 
        java.lang.ClassCastException: 
        com.example.NDKDemo.NativeLib cannot be cast to android.app.Activity 
+0

ネイティブ共有ライブラリがJNI_OnLoad関数を提供していない場合、それは大丈夫です。それはエラーではありません。 –

+0

返信ありがとう、私は同じアプリケーションを実行しているとき、私はCatlogで次のエラーが発生しています – Chandu

答えて

1

を、JNI_OnLoadをする必要はありません。ここにあなたの問題があります:

活動ComponentInfo {com.example.NDKDemo/com.example.NDKDemo.NativeLib}をインスタンス化できません

: とjava.lang.ClassCastException: com.example.NDKDemo.NativeLibをキャストすることはできませんあなたのクラスcom.example.NDKDemo.NativeLibがandroid.app.Activityにキャストすることはできません。android.app.Activity

にあなたのバグもNDKの問題ではありませんように、それが見えます。

AndroidManifest.xmlにリストするクラスは、Activityから派生したクラスです。あなたは例のようにNDKDemoクラスを作成した場合は、それがあなたの活動だ、とあなたはのAndroidManifest.xmlで、それに名前を付ける必要があります。

<activity android:name="NDKDemo" ... other options ... > 
関連する問題