2011-07-23 14 views
-1

JNIフォルダにmakeファイルでC++プログラムを作成し、SDKでプログラムを作成しました。Android ndkの問題

私はC++ライブラリを使いたいと思っていますが、私がそれを使用してエミュレータで実行すると、error.itには強制終了が必要です。

C++ソース:(wipeSRC.cpp)

#include <stdio.h> 
#include <stdlib.h> 
#include <sys/stat.h> 
#include <jni.h> 

JNIEXPORT jint JNICALL Java_X_XX_WF_Simple(JNIEnv* env, jobject obj,jstring addrs) 
{ 
    return 1; 
} 

makeファイル:JAVAと

# makefile to pack JNI with AMR-NB native library 
# 

LOCAL_PATH:= $(call my-dir) 

include $(CLEAR_VARS) 
LOCAL_MODULE := wipeLib 
LOCAL_SRC_FILES := wipeSRC.cpp 


include $(BUILD_SHARED_LIBRARY) 

とSDKで

package X.XX; 

import android.app.Activity; 
import android.os.Bundle; 

public class WF extends Activity 
{ 
    /** Called when the activity is first created. */ 
    @Override 
    public void onCreate(Bundle savedInstanceState) 
    { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.main); 
     Simple("hello"); 
    } 
    static 
    { 
     System.loadLibrary("wipeLib"); 
    } 

    native int Simple(String addrs); 

} 
+0

logcatからエラーメッセージを投稿してください。 –

+0

@Chris Strattom 私はこのフィールドでは新しいです.... しかし、私は日食でエラーがありません。 ランタイムです。日食の出産は正常です。 しかし、プログラムがluanchedしたとき、アプリケーションが....予期せず停止したと言っています。もう一度試してみてください。 – MIMAD

+0

PCからlogcatを使用してデバイスからのエラーメッセージを表示する方法を学ぶ必要があります。もしあなたが何も見つけられないのであれば、あなたは正しい場所を探しているわけではありません。 –

答えて

0

解決! 私はWindows XPを試して知っているlast.butウィンドウ7を使用しました。

解決方法は次のとおりです。 Windows 7でcygwinを使用し、XPに勝つためにライブラリをコピーします。 JAVA.atでコード化するためにXPを使用してください。最後の問題は解決されます。

私はすべてのプログラマーがLinuxに行くほうが良いと思います。 :D