-
Creator 版本: 2.4.7
-
目标平台:
-
重现方式:
-
首个报错:
-
之前哪个版本是正常的:
-
手机型号:
-
手机浏览器:
-
编辑器操作系统:
-
重现概率:
因为目前原生层并没有转发 js 控制 setVideoVolume 的消息到 Cocos2dxVideoHepler.java ,所以压根就没法设置音量。
简单的方案:在 AppActivity.java 出添加对 Cocos2dxVideoHelper.setVolume 的调用方法: setVideoVolume ,
然后再 js 用 jsb.reflection.callStaticMethod 这个方法调用 setVideoVolume 方法即可。
js 代码:
setVolume (volume) {
if (cc.sys.os === cc.sys.OS_ANDROID) {
//@ts-ignore
var nativeViewIndex = this._videoPlayer.nativeViewIndex;
let className = "org/cocos2dx/javascript/AppActivity";
let methodName = "setVideoVolume";
let methodSignature = "(IF)V";
jsb.reflection.callStaticMethod(className, methodName, methodSignature, nativeViewIndex, volume);
} else if (cc.sys.isBrowser) {
this._videoPlayer.volume = volume
}
}
demo: http://download.cocos.org/CocosTest/zhefengzhang/NoDelete/videoTest.zip
谢谢。。ios也这样处理吗??
这里改的是 android 的,ios 需要改另外的文件
感谢,已按照上面的方法实现。
该主题在最后一个回复创建后14天后自动关闭。不再允许新的回复。
