NDK方法的命名规则,以及NDK方法中前两个参数的作用

基于NDK的c/c++方法名是不能随便命名的,需要根据一定的规则进行命名,实际上,NDK 方法的命名规则就是JNI的命名规则,除此之外,NDK方法必须带有两个固定的类型的参数

假设调用NDK方法的Java 类是mobile.android.HelloWorldJNI,在该类找那个实际访问的本地方法名是process,返回String,没有参数,

那么NDK方法的定义如下:

jstring Java_mobile_android_HelloWorldJNI_process(JNIEnv*env,jobject obj)

.............................

NDK方法必须以Java开头,后面调用NDK方法的Java类全名(package+class),最后才是实际的方法明,各部分之间用下划线分隔

所有的NDK方法的前两个参数类型必须是JNIEnv*env,jobject obj ,JNIEnv标识当前NDK环境的对象指针,可以通过该参数访问NDK中的内置成员,

jobject表示调用当前NDK方法的Java对象,可以用该参数值访问调用当前NDK方法的Java对象成员。

 

-------------------------------

NDK程序能访问java类成员么?如果可以,应如何做?

 

 

转载于:https://my.oschina.net/u/573470/blog/122423

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值