不知所云。
NDK里面实现和实例化类没有什么特殊的要求。你在VC里面怎么实现的就在这里怎么实现,当然VC的接口是不能使用的。
你是不是想在java里面实例化一个c++的类,然后以后再在C++里面使用这个经过java实例化的对象是吧。
你可以这样。在java的类里面用一个long或int保存实例化后的对象的指针或者说地址。当在c++里面需要使用这个对象的时候,再通过jni调用java 的方法获取到这个int值(其实就是c++类对象的指针,强制转换一下就好了),c++里面就可以使用它了。
NDK里面实现和实例化类没有什么特殊的要求。你在VC里面怎么实现的就在这里怎么实现,当然VC的接口是不能使用的。
你是不是想在java里面实例化一个c++的类,然后以后再在C++里面使用这个经过java实例化的对象是吧。
你可以这样。在java的类里面用一个long或int保存实例化后的对象的指针或者说地址。当在c++里面需要使用这个对象的时候,再通过jni调用java 的方法获取到这个int值(其实就是c++类对象的指针,强制转换一下就好了),c++里面就可以使用它了。
这个我现是这样想的,不过我在JNI生成的那个头里中,对应的实例源码的地方实例化那个C++的类,总是编译不通过,想问一下你,有没有这方面一些DEMO给我参考一下呀,我在网上找的都是访问一些方法之类的
如果还有说明不懂,跟贴,最近我把JNI调用研究比较深;HOHO
public class MyNative {
static {
System.loadLibrary("HelloWorld");
} // C 中实现的方法
public native int output(); public native int input(int i);
}这样声明调用就可以
MyNative myNative = new MyNative(); int str = myNative.output(); int i = 10;
myNative.input(i);