我在JNI文件夹中用make文件编写了一个c ++程序。并用SDK编写了一个程序。
我想使用C ++库,但是当我使用它并在模拟器上运行时我有错误。我说我应该使用强制退出。
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;
}
制作档案:
# 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)
和使用JAVA的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 :(得分:0)
解决了! 我最后使用的是Windows 7但是我知道我尝试使用Windows XP。
解决方案是: 在Windows 7中使用cygwin并复制库以赢得XP。然后使用XP在JAVA.at中编码。最后一个问题将得到解决。
我认为所有程序员都选择Linux更好。 :d