我的as3中的设备BACK按钮被禁止进行默认操作,而是执行其他操作(如果当前显示主菜单则退出应用程序,如果未显示主菜单则返回主菜单)。
var _queue = Promise.resolve();
function log(message){
_queue = _queue.then(function(){ // chain to the queue
return new Promise(function(resolve){
fs.appendFile("/tmp/logs/log.txt", new Date() + message + "\n", function(err, data){
if(err) console.log(err); // don't die on log exceptions
else resolve(); // signal to the queue it can progress
});
});
});
}
除了一种情况 - 当我点击AdMob横幅(通过原生扩展实现)然后从浏览器返回到应用程序时,它工作正常。然后后退按钮不会返回菜单,而是关闭应用程序。
奇怪的是,只有在点击AdMob横幅后返回应用程序时,后退按钮才能正常工作。如果我单击打开浏览器然后返回应用程序的任何其他按钮,后退按钮工作正常。在点击AdMob插页式广告后返回应用后,它甚至可以正常工作!因此,只有AdMob横幅会打破后退按钮。
我曾尝试在Event.ACTIVATE上再次添加后退按钮侦听器(当用户返回应用时),但它没有帮助。
发生了什么,我该如何防止这种情况发生?我自己编写了admob原生扩展,所以我可以尝试在as3或android java中解决这个问题。谢谢!