我是android中的ndk开发新手.我已经完成了ndk android的文件系统.在这里,解释我做了什么.1)我创建了一个名为"jni"的文件夹,然后创建了名为Android.mk和ndkfoo.c的2个文件.
在Android.mk中
LOCAL_PATH := $(call my-dir)
include $(CLEAR_VARS)
# Here we give our module name and source file(s)
LOCAL_MODULE := ndkfoo
LOCAL_SRC_FILES := ndkfoo.c
include $(BUILD_SHARED_LIBRARY)
Run Code Online (Sandbox Code Playgroud)
在ndkfoo.c中
#include <string.h>
#include <jni.h>
jstring Java_com_mindtherobot_samples_ndkfoo_NdkFooActivity_invokeNativeFunction(JNIEnv* env, jobject javaThis) {
return (*env)->NewStringUTF(env, "Hello from native code!");
}
Run Code Online (Sandbox Code Playgroud)
然后我创建了NdkFooActivity类,我写了
// load the library - name matches jni/Android.mk
static {
System.loadLibrary("ndkfoo");
}
Run Code Online (Sandbox Code Playgroud)
但是现在当我在xp中使用cygwin构建它成功创建.so文件然后我作为android应用程序运行.它给了我LOGCAT中的java.lang.UnsatisfiedLinkError.
所以,请让我知道我错在哪里.
提前致谢,
我正在尝试在关键事件上实现动画.相同的代码在OnClickListener上正常工作,但OnKeyListener,没有任何事情发生.甚至在Logcat上没有错误消息.
请帮我解决这个问题.以下是我的代码.请告诉我我哪里错了.
package com.example.SliderImage;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.KeyEvent;
import android.view.View;
import android.view.View.OnKeyListener;
import android.view.animation.AccelerateInterpolator;
import android.view.animation.Animation;
import android.view.animation.TranslateAnimation;
import android.widget.Button;
import android.widget.ViewFlipper;
public class SliderImage extends Activity {
ViewFlipper flipper;
String value;
int i;
int menuArray[] = {R.id.gtmain, R.id.gtmini, R.id.gtmore};
protected void showPrevious() {
// TODO Auto-generated method stub
}
protected void setInAnimation(Animation inFromRightAnimation) {
// TODO Auto-generated method stub
}
protected void setOutAnimation(Animation outToLeftAnimation) {
// TODO Auto-generated method stub
}
protected void showNext() { …
Run Code Online (Sandbox Code Playgroud)