我们必须使用HTML5构建一个移动应用程序,以便在安卓和IOS上工作。我们首先使用jQuery移动框架来管理页面,actions.Every很好。问题是当我们使用Apache从设备中获取一些信息,比如uuid,并管理退出应用程序按钮,没有任何工作!我们使用从这个Google获得的Cordova脚本。在构建应用程序phonegap之前,我们将下面的行放入config.xml文件:
<plugin name="Notification" value="org.apache.cordova.notification.Notification" />我们使用Cordova Phonegap 站点提供的正式文档,如下所示:
<!DOCTYPE html>
<html>
<head>
<title>Notification Example</title>
<script type="text/javascript" charset="utf-8" src="cordova-2.5.0.js"></script>
<script type="text/javascript" charset="utf-8">
// Wait for Cordova to load
//
document.addEventListener("deviceready", onDeviceReady, false);
// Cordova is ready
//
function onDeviceReady() {
// Empty
}
// alert dialog dismissed
function alertDismissed() {
// do something
}
// Show a custom alertDismissed
//
function showAlert() {
navigator.notification.alert(
'You are the winner!', // message
alertDismissed, // callback
'Game Over', // title
'Done' // buttonName
);
}
</script>
</head>
<body>
<p><a href="#" onclick="showAlert(); return false;">Show Alert</a></p>
</body>
</html>但是,在为Android平台构建源代码之后,任何事情都没有发生。没有事件被触发或任何与phonegap相关的事件!
我们已经搜索了许多结果和建议来解决这个问题,但没有任何结果!
这些应用程序已经在Android4.3上进行了测试。
谢谢你的建议。
发布于 2014-09-07 08:41:11
使用cordova 2.9.0和上罐可以解决这个问题。
这些行需要放在config.xml文件中:
<feature name="Device">
<param name="android-package" value="org.apache.cordova.device.Device" /> // android
<param name="ios-package" value="CDVDevice" /> IOS
</feature>
<!-- -->
<plugins>
<plugin name="App" value="org.apache.cordova.App" />
<plugin name="Device" value="org.apache.cordova.Device" />
<plugin name="Device" value="CDVDevice" />
</plugins>
<!-- phonegap plugins -->
<gap:plugin name="org.apache.cordova.console" />
<gap:plugin name="org.apache.cordova.device" version="0.2.8" />
<gap:plugin name="org.apache.cordova.dialogs" />发布于 2014-08-30 06:51:46
您正在使用一个非常旧的cordova (2.5)版本,最新版本是3.5,这里是文档和下载的适当位置:http://cordova.apache.org/
尝试在console.log函数中放置一个onDeviceReady或警报,以确保cordova被正确初始化,但我认为您的问题在于cordova项目的设置。尝试使用带有命令行的3.5创建一个新项目,正如文档中首先解释的那样。
发布于 2014-09-01 20:47:04
尝试从命令行添加设备插件:
phonegap plugin add org.apache.cordova.device这在过去对我起过作用。Windows、Linux和Mac的命令是相同的。然后把一些东西放在你的设备阅读事件中,以确保它被发射。
https://stackoverflow.com/questions/25579212
复制相似问题