Appcelerator iOS 推送通知显示在前台
Appcelerator iOS push notification displaying in foreground
目前正在使用以下设备处理推送通知 os iOS 台设备。
Ti.App.iOS.addEventListener("usernotificationsettings", function registerForPush() {
Ti.App.iOS.removeEventListener("usernotificationsettings", registerForPush);
Cloud.Users.login({
login: "user",
password: "12345"
}, function (e) {
if (e.success) {
Ti.Network.registerForPushNotifications({
success: function(e){
Cloud.PushNotifications.subscribeToken({
channel: "AppAlerts",
device_token: e.deviceToken,
type: "ios"
}, function(e){
alert("subscribed");
});
},
error: function(e){
alert(e.error);
},
callback: function(e){
alert(e);
}
});
}
});
});
我可以毫无问题地向 Appcelerator 注册设备令牌。当应用程序在后台并且用户单击推送通知时,将调用回调并且我能够读取有效负载。但是,当应用程序在前台时,会显示通知横幅(就像应用程序仍在后台一样)。单击横幅或收到时永远不会调用回调。
Example
这似乎发生在 iOS 10+ 的设备上。 9.3.5的设备没有问题。
我设法通过使用 Titanium SDK 7.2.0 GA 构建应用程序来实现这一点。该应用程序之前使用的是 7.3.1 GA 和 7.4.0 GA。
目前正在使用以下设备处理推送通知 os iOS 台设备。
Ti.App.iOS.addEventListener("usernotificationsettings", function registerForPush() {
Ti.App.iOS.removeEventListener("usernotificationsettings", registerForPush);
Cloud.Users.login({
login: "user",
password: "12345"
}, function (e) {
if (e.success) {
Ti.Network.registerForPushNotifications({
success: function(e){
Cloud.PushNotifications.subscribeToken({
channel: "AppAlerts",
device_token: e.deviceToken,
type: "ios"
}, function(e){
alert("subscribed");
});
},
error: function(e){
alert(e.error);
},
callback: function(e){
alert(e);
}
});
}
});
});
我可以毫无问题地向 Appcelerator 注册设备令牌。当应用程序在后台并且用户单击推送通知时,将调用回调并且我能够读取有效负载。但是,当应用程序在前台时,会显示通知横幅(就像应用程序仍在后台一样)。单击横幅或收到时永远不会调用回调。
Example
这似乎发生在 iOS 10+ 的设备上。 9.3.5的设备没有问题。
我设法通过使用 Titanium SDK 7.2.0 GA 构建应用程序来实现这一点。该应用程序之前使用的是 7.3.1 GA 和 7.4.0 GA。