我正在将Phonegap与Framework7结合使用 .
我有一个非常奇怪的问题 . 我正在使用html5视频标签来流式传输视频 . 流媒体工作得非常好 .
当我全屏时出现问题 . 退出全屏并按下后退按钮应用程序关闭而不是前一屏幕 .
如果我播放视频而不是全屏,它将正常工作并返回上一屏幕 .
这是我的代码:document.addEventListener(“deviceready”,onDeviceReady,false);
function onDeviceReady() {
document.addEventListener("backbutton", function (e) {
alert('backbutton');
if (mainView.activePage.name=='index'){
navigator.notification.confirm("Are you sure want to exit from App?", onConfirmExit, "Confirmation", "Yes,No");
function onConfirmExit(button) {
if(button==2){ //If User select a No, then return back;
return;
}else{
navigator.app.exitApp(); // If user select a Yes, quit from the app.
}
}
}
else{
mainView.router.back();
}
}, false);
}
如果我全屏显示,退出全屏并按回,代码中的警报将不会出现 .
这是一些错误还是我做错了什么?
1 回答
我在使用自定义视频播放器插件的Ionic2应用程序中遇到了类似的问题 . 当我将播放器切换到全屏并返回时,Ionic的硬件后退按钮功能停止工作:应用程序在单击硬件后退按钮时立即关闭,而不是从Ionic的导航堆栈弹出下一个视图 .
我使用此处建议的解决方案解决了我的问题:https://github.com/floatinghotpot/cordova-admob-pro/issues/148
我必须覆盖CordovaActivity.java中的dispatchKeyEvent():
当然,这是一个黑客攻击,因为Coreova核心文件已被修改,但我还没有找到更好的解决方案 .