接入第三方h5游戏。
1.使用浏览器打开,但是无法返回到app中,此方法是最后的选择。
2.使用webview 内嵌入h5游戏(部分api可能不太一样)。
⑴. var webView = new ccui.WebView(url); // url为h5游戏
cc.director.getRunningScene().addChild(webView);
⑵. 这里主要有2个API setOnJSCallback 和 setJavascriptInterfaceScheme
setOnJSCallback 方法主要用于监听在h5游戏点击返回时候 ,所触发的事件或者内容。即回调
setJavascriptInterfaceScheme 方法用于webview设置 scheme .
例如:
webView.setJavascriptInterfaceScheme('www.baidu.com');
webView.setOnJSCallback(function(sender, url){
//这里的url 就是 www.baidu.com 触发由h5游戏返回app时处理。
});
以上又js 层处理完毕。
⑶. 还需要 改动 Cocos2dxWebView.java 文件中一个内容 这样才可以收到回包。
这里直接贴代码。
说明下:
做到这里,app方前端的工作基本可以。 剩下就是些横竖屏 适配h5游戏等。
⑷. 触发setOnJSCallback
要求第三方h5游戏的开发人员, 在他们的h5游戏中增加返回按钮,并且按钮所需要的代码如下:
window.location.href = url;
这里的url 就是我们上面所说的scheme 必须一样才可以!!!