基于Cocos Creator开发的游戏集成华为游戏多媒体安卓原生SDK

本文档介绍了如何使用Cocos Creator V2.4.8开发的游戏集成华为游戏多媒体安卓原生SDK,包括Cocos游戏侧的JS调用Java方法、接收回调消息的实现,以及Android侧的项目配置、SDK集成和Java与JS交互的详细步骤。

背景

Cocos creater V2.4.8开发的游戏需要集成华为游戏多媒体安卓原生SDK,输出APK游戏。

接入步骤

Cocos游戏侧:

Cocos侧作为SDK的调用者和SDK消息的接收者。需要分别定义JS调用安卓SDK以及接收SDK返回的消息。

JS调用Java方法

通过反射机制直接在 JavaScript 中调用 Java 的静态方法,其中第一个参数是 Java 的类名且包含固定前缀路径org/cocos2dx/javascript/,第二个参数是方法名,第三个参数是方法签名,决定该消息是否有返回值及其返回类型(很重要),第四个参数是想传递给Java测的参数。 具体代码如下: jsb.reflection.callStaticMethod("org/cocos2dx/javascript/" + data.objectName, data.functionName, "(Ljava/lang/String;)Z", ...data.restOfName);

JS侧接收安卓回调消息

这个依赖于安卓中Cocos2dxJavascriptJavaBridge这个类的 evalString方法,可以执行JS字符串代码。如下: Cocos2dxJavascriptJavaBridge.evalString("cc.javaCallback("+message+"")"); 需要注意里面字符串开头处的cc.javaCallback,这是双方约定好回调信息触发的是JS中的cc.javaCallback方法。那么我们需要在JS中定义全局方法cc.javaCallback来接收参数,如下: cc.javaCallback = function (event, result) { console.log("cc.javaCallback event", event, result); } 其中funtion的参数需要和我们刚才定义消息返回值及其返回类型保持一致。

示例代码

封装后的公共callJavaWithCallback方法: 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值