iOS PushPlugin Cordova 注册问题
Posted
技术标签:
【中文标题】iOS PushPlugin Cordova 注册问题【英文标题】:iOS PushPlugin Cordova issue in registration 【发布时间】:2016-06-24 09:24:42 【问题描述】:我正在使用 Cordova iOS 平台。我需要在我的项目中添加推送通知。
步骤:
我在 Google 控制台中创建了一个项目并创建了一个 Project-ID。
从 Apple Developer 创建了一个 APNS PushNotification 生产证书。
在我的项目中添加以下插件
cordova plugin add phonegap-plugin-push --variable SENDER_ID="722784892462"
在 index.js 中
var pushNotification;
gcmNotification =
onNotificationAPN : function (e)
if (e.id)
navigator.notification.beep();
,
registerPushNotification : function ()
try
pushNotification = window.plugins.pushNotification;
var errorHandler = function (error)
console.log(error);
;
var tokenHandler = function (result)
alert('device token = ' + result);
;
pushNotification.register(tokenHandler, errorHandler, "badge": "true", "sound": "true", "alert": "true", "ecb": "onNotificationAPN" );
catch(e)
exceptionAlert("registerPushNotification>>"+e);
function onNotificationAPN(e)
gcmNotification.onNotificationAPN(e);
我在我的真实设备上试过了。
我收到以下错误:
【问题讨论】:
【参考方案1】:你有没有在你的html页面中添加cordova.js文件
<script type="text/javascript" src="cordova.js"></script>
【讨论】:
cordova.js 已添加。除了这个之外,我的其他插件都运行良好 我试过这个对我有用。检查此网址github.com/phonegap-build/PushPlugin【参考方案2】:我找到了解决方案。 我已将代码从 PushNotification.js 替换为 Push.js
https://github.com/phonegap/phonegap-plugin-push/tree/master/www
并在 index.js
中添加以下代码var push = PushNotification.init(
android:
senderID: "12345679"
,
ios:
alert: "true",
badge: "true",
sound: "true"
,
windows:
);
push.on('registration', function(data)
// data.registrationId
);
push.on('notification', function(data)
// data.message,
// data.title,
// data.count,
// data.sound,
// data.image,
// data.additionalData
);
push.on('error', function(e)
// e.message
);
【讨论】:
以上是关于iOS PushPlugin Cordova 注册问题的主要内容,如果未能解决你的问题,请参考以下文章
cordova pushplugin 无法在 iOS 中获取设备令牌
在 iOS 中使用 PushPlugin for Cordova 清除单个通知
如何在cordova android上连接PushPlugin + Parse