【发布时间】:2011-07-23 10:09:48
【问题描述】:
我用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);
}
【问题讨论】:
-
从 logcat 发布错误信息。
-
@Chris Strattom 我是这个领域的新手......但我在 Eclipse 中没有错误。它是运行时。 eclipse中的输出pu是正常的。但是当程序启动时,它说应用程序....已意外停止。请重试。
-
你需要学习如何在电脑上使用logcat来查看设备的错误信息。如果您没有找到任何内容,则说明您没有找到正确的位置,因为即使一切正常运行,日志也相当“嘈杂”。
标签: android c++ android-ndk