我正在使用 sencha touch 2 开发 IOS 应用程序,我需要发送推送通知。我已经设置了苹果证书文件,临时配置文件也做了一些服务器端编码来实现这一点。但不确定 sencha 中是否有推送通知服务?我怎样才能做到这一点...我应该使用PhoneGap吗?请指引我正确的方向。非常感谢您的帮助。提前致谢
问问题
3104 次
3 回答
1
是的,要使您的基于 iOS Sencha-Touch 的应用程序支持通知,您应该使用文档中提到的第三方插件:-Sencha Packager -PhoneGap -Simulator
我使用了 PhoneGap 实现,并在 app.js 文件中放置了与通知相关的信息。当后端生成通知时,我会根据身份验证时存储的会话令牌将其发送给正确的用户:
Ext.Application({
...
//notifications Configuration
notifications : {
storeTokenUrl : 'https://adress/whereto/store/token/',
gcmsenderid : '0123456789012',
appid : 'apple_app_id',
title : 'notification title'
}
})
于 2013-08-29T14:01:28.613 回答
0
当我需要做推送通知时,我使用的是 sencha touch 2.0(当时最晚)
我使用了诸如urbanairship、pushwoosh之类的第三方插件,这很好。
对于这些插件,您需要使用 PhoneGap。
参考这个链接
于 2013-08-26T10:59:55.157 回答
0
感谢大家引导我朝着正确的方向前进。我使用 sencha 原生设备功能来发送推送通知。它不适用于安卓。我通过以下方式实现了。我将此代码放在我的 app.js 文件中。您将在那里获得设备令牌。将设备令牌发送到您的服务器。在那里,您可以使用此设备令牌配置推送通知
Ext.device.Push.register({
type: Ext.device.Push.ALERT|Ext.device.Push.BADGE|Ext.device.Push.SOUND,
success: function(token) {
console.log('# Push notification registration successful:');
console.log('token: ' + token);
WinReo.app.devicetokenid = token;
WinReo.app.platform = Ext.device.Device.platform;
//Ext.Msg.alert('Title', WinReo.app.platform +'', Ext.emptyFn);
},
failure: function(error) {
console.log('# Push notification registration unsuccessful:');
console.log(' error: ' + error);
},
received: function(notifications) {
console.log('# Push notification received:');
console.log(' ' + JSON.stringify(notifications));
}
});
当你第一次打开应用程序时,我会询问这个应用程序是否允许推送通知消息。在那里您可以选择是/否。稍后您可以通过转到设备中的设置/通知来编辑此设置。
于 2013-10-10T09:42:57.497 回答