Netbeans Cordova PushPlugin 无法在 iOS 上运行
Posted
技术标签:
【中文标题】Netbeans Cordova PushPlugin 无法在 iOS 上运行【英文标题】:Netbeans Cordova PushPlugin not working on iOS 【发布时间】:2015-05-15 10:39:35 【问题描述】:我正在使用 Netbeans 构建一个使用 PushPlugin (https://github.com/phonegap-build/PushPlugin) 的 Cordova 项目。
它在 android 上运行良好,但在 ios 上它不注册设备。它也没有给出任何错误。
同样奇怪的是插件文件夹 (com.phonegap.plugins.PushPlugin) 位于项目 /plugins 文件夹中,但它并没有在构建时被复制到平台/ios/[appname]/Plugins。
我的 config.xml 中有这个:
<feature name="PushPlugin">
<param name="android-package" value="com.plugin.gcm.PushPlugin"/>
<param name="ios-package" value="PushPlugin"/>
</feature>
我使用以下 javascript:
var pushNotification;
function onDeviceReady()
alert('ready');
try
pushNotification = window.plugins.pushNotification;
if (typeof device == 'undefined')
alert('device undefined');
if (device.platform == 'android' || device.platform == 'Android' || device.platform == 'amazon-fireos')
pushNotification.register(successHandler, errorHandler,
"senderID": "[senderid]",
"ecb": "onNotification"
);
else
alert('ios!');
pushNotification.register(tokenHandler, errorHandler,
"badge": "true",
"sound": "true",
"alert": "true",
"ecb": "onNotificationAPN"
);
catch (err)
txt = "There was an error on this page.\n\n";
txt += "Error description: " + err.message + "\n\n";
alert(txt);
function onNotificationAPN(e)
// handles APNS notifications for iOS
if (e.alert)
navigator.notification.alert(e.alert);
if (e.sound)
var snd = new Media(e.sound);
snd.play();
if (e.badge)
pushNotification.setApplicationIconBadgeNumber(successHandler, e.badge);
function onNotification(e)
//handles notifications for Android (left out)
function tokenHandler(result)
alert('device token = ' + result);
function successHandler(result)
alert('success = ' + result);
function errorHandler(error)
alert('error = ' + error);
document.addEventListener('deviceready', onDeviceReady, false);
我确实看到了“就绪”和“ios!”警报,但在那之后,什么都没有发生。
【问题讨论】:
【参考方案1】:问题解决了!结果我不得不复制插件文件并手动将它们添加到 xcode 项目中。
【讨论】:
以上是关于Netbeans Cordova PushPlugin 无法在 iOS 上运行的主要内容,如果未能解决你的问题,请参考以下文章
在 netbeans 中将 FacebookConnect 添加到科尔多瓦
Gradle "com.android.dex.DexException" 构建一个涉及 cordova-plugin-googlemaps 和 ibm-mfp-push 插件的应