我已经为PhoneGap参考中指定的android原生按钮实现了几个函数:
JS:
var _previous;
function bindCordovaNativeHandlers(){
document.addEventListener("deviceready", onDeviceReady, false);
}
function onDeviceReady(){
document.addEventListener("menubutton", onMenuKeyDown, false);
document.addEventListener("backbutton", onBackKeyDown, false);
}
function onMenuKeyDown(){
//open function bar
$('.action').click();
}
function onBackKeyDown() {
//quit funciton
var interval = 2000,
current = Date.now();
_previous = _previous || 0;
console.log(current - _previous);
if (current - _previous <= interval) {
navigator.app.exitApp();
}
_previous = current;
}
HTML:
为了不引起我的用户的任何怀疑,我想要求最低限度的权限(cordova插件被翻译成android权限)。
该功能是否需要任何cordova插件?
我在上一次构建中删除的插件:
<gap:plugin name="org.apache.cordova.battery-status" />
<gap:plugin name="org.apache.cordova.camera" />
<gap:plugin name="org.apache.cordova.media-capture" />
<gap:plugin name="org.apache.cordova.console" />
<gap:plugin name="org.apache.cordova.contacts" />
<gap:plugin name="org.apache.cordova.device" />
<gap:plugin name="org.apache.cordova.device-motion" />
<gap:plugin name="org.apache.cordova.device-orientation" />
<gap:plugin name="org.apache.cordova.dialogs" />
<gap:plugin name="org.apache.cordova.file" />
<gap:plugin name="org.apache.cordova.file-transfer" />
<gap:plugin name="org.apache.cordova.geolocation" />
<gap:plugin name="org.apache.cordova.globalization" />
<gap:plugin name="org.apache.cordova.inappbrowser" />
<gap:plugin name="org.apache.cordova.media" />
<gap:plugin name="org.apache.cordova.network-information" />
<gap:plugin name="org.apache.cordova.splashscreen" />
<gap:plugin name="org.apache.cordova.vibration" />
答案 0 :(得分:0)
嗯,答案是它没有工作,因为,如PhoneGap文档中所述,您应该添加cordova.js的引用,它在构建过程中注入到项目的根目录中,具体取决于构建所用设备的操作系统。
e.g:
<script src="cordova.js"></script>