Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java
来源:互联网 发布:37码半 虎扑卖家 淘宝 编辑:程序博客网 时间:2024/04/29 10:43
转自:http://blog.csdn.net/geolo/article/details/6168310
一、 在JNI中执行Java方法
class AndroidJniDemo {
private native void executeMethod();
private void show() {
System.out.println("Java cwj print"); //执行了show方法后打印java层的输出
}
public static void main(String args[]) { //这里我们在J2SE中测试,Android开发者可以放到Activity中的onCreate调用
AndroidJniDemo ajd = new AndroidJniDemo();
ajd.executeMethod();
}
static {
System.loadLibrary("AndroidJniDemo");
}
}
下面是JNI代码:
JNIEXPORT void JNICALL
Java_AndroidJniDemo_executeMethod(JNIEnv *env, jobject obj)
{
jclass clazz = (*env)->GetObjectClass(env, obj); //通过类的对象
jmethodID mid = (*env)->GetMethodID(env, clazz, "show", "()V"); //查找java中的show方法的ID,最后的签名符号为void类型
if (mid == NULL) {
return; //如果方法ID没有找到
}
printf("JNI cwj print"); //从JNI中打印输出
(*env)->CallVoidMethod(env, obj, mid); //执行show方法
}
- Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java
- Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java
- Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java
- Android-NDK开发之基础--Android JNI实例代码(三)-- 在JNI中构造和实例化Java类
- Android-NDK开发之基础--Android JNI实例代码(三)-- 在JNI中构造和实例化Java类
- Android-NDK开发之基础--Android JNI实例代码(三)-- 在JNI中构造和实例化Java类
- Android NDK(JNI)学习总结一:Java代码中申明native函数-Java调用C函数,并在C函数中访问java类和方法、属性
- Android-本地方法C调用Java中的方法/NDK-JNI开发实例(六)
- 安卓JNI/NDK开发3(进阶 在C代码中调用java方法)
- 转战Android之NDK(jni, java调用c/c++)
- Android之NDK(jni, java调用c/c++)
- Android JNI中C调用Java方法
- Android 在JNI中执行Java方法--C/C++调用Java
- Android JNI开发之c语言调用java方法
- 转战Android之NDK(jni, c/c++调用java)
- Android JNI/NDK开发(2)JNI实现C/C++与Android/JAVA相互调用
- Android-NDK开发之基础--Android JNI实例代码(四)-- JNI中的异常处理实例代码
- Android-NDK开发之基础--Android JNI实例代码(四)-- JNI中的异常处理实例代码
- 11---java的高级特性
- 12---工厂模式
- 编辑框大写锁定气泡提醒
- vim使用心得
- 13---网络编程
- Android-NDK开发之基础--Android JNI实例代码(一)-- 在JNI中执行Java方法--C/C++调用Java
- 14---类集应用
- 打开Access 提示没有使用对象的必要权限
- 如何通过HTML标记或JS代码实现跳转返回页面顶部
- 15---接口与类集综合应用
- 理解 Java 时间, 日期
- IOS下app的发布流程
- 16---java反射机制00(Class类的理解)
- Android-NDK开发之基础--Android JNI实例代码(二)-- 获取/设置类的域或者说属性字段