我已安装Notification插件,如下所示:
phonegap local plugin add https://git-wip-us.apache.org/repos/asf/cordova-plugin-dialogs.git
然后我添加到config.xml
文件夹中的/www/
:
<feature name="Notification">
<param name="android-package" value="org.apache.cordova.dialogs.Notification" />
</feature>
我尝试在index.html
:
document.addEventListener("deviceready", onDeviceReady, true);
function onDeviceReady() {
alert('Device ready');
var beep = function(){
try{
if(navigator != null){
navigator.notification.alert("2");
}else{
alert(navigator);
}
}catch(e){
alert("Alert failed: " + e.message);
}
}
beep();
}
但我总是得到&#34;警报失败&#34;作为navigator.notification
未定义的消息。
我正在使用phonegap 3.3.0-0.19.6
并使用phonegap local build android
我错过了什么?
答案 0 :(得分:3)
我认为你应该使用不同的网址:
phonegap local plugin add https://github.com/apache/cordova-plugin-dialogs
或者更好的是,使用Cordova CLI并执行:
cordova plugin add org.apache.cordova.dialogs
然后
cordova prepare
那应该为你改变config.xml等。
答案 1 :(得分:1)
我正在使用phonegap云构建,并为我添加以下行到phonegap config.xml修复了问题
<gap:plugin name="org.apache.cordova.dialogs" />
答案 2 :(得分:0)
检查/assets/www/cordova_plugins.js文件,看看它对通知插件的引用是否如此,
{
"file": "plugins/org.apache.cordova.dialogs/www/notification.js",
"id": "org.apache.cordova.dialogs.notification",
"merges": [
"navigator.notification"
]
},
{
"file": "plugins/org.apache.cordova.dialogs/www/android/notification.js",
"id": "org.apache.cordova.dialogs.notification_android",
"merges": [
"navigator.notification"
]
},
同时检查/assets/www/plugins/org.apache.cordova.dialogs/www文件夹内容。是否与cordova_plugins.js文件中引用的相同?
答案 3 :(得分:0)
我遇到了同样的问题,这是你必须要做的才能让它发挥作用:
使用cordova cli:
cordova plugin add org.apache.cordova.dialogs
cordova build
然后,cordova构建并不总是在config.xml中添加正确的行 - 所以我们必须将其更改为以下内容: (在 app / res / xml / config.xml - 非www文件夹中)
<feature name="Notification">
<param name="android-package" value="org.apache.cordova.dialogs.Notification" />
</feature>