cocos2dx调用java非静态方法_如何从Android到Java中的非静态函数进行正确调用? (混合中的Cocos2Dx)...

所以我正在用Cocos2Dx开发一个小项目,但我正在尝试添加蓝牙功能,这意味着调用非静态方法可以访问Main Activity与

Android API的关联.我见过的几乎所有内容都告诉我遵循这个程序:

– 创建主要活动的实例(environment-> NewGlobalRef是我正在使用的实例)

– 从活动中获取方法并执行它(environment-> GetObjectClass)

这是代码.在java中我们有以下内容(省略onCreate,onResume等逻辑内容):

public class TSP extends Cocos2dxActivity{

public void CnxAttempt(){

Log.e("TSP_BT","aTTEMPTING!");

}

}

而已!就目前而言,我只想显示一条Log消息,确认该函数已执行.现在,有趣的部分是在C:

static JNIEnv* getJNIEnv(void){

JNIEnv *env = 0;

// get jni environment

if (gJavaVM->GetEnv((void**)&env, JNI_VERSION_1_4) != JNI_OK){

CCLog("Failed to get the environment using GetEnv()");

}

if (gJavaVM->AttachCurrentThread(&env, 0) < 0){

CCLog("Failed to get the environment using Att

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值