Отображение push-уведомлений iOS-приложения на переднем плане - PullRequest
0 голосов
/ 17 сентября 2018

В настоящее время используется следующее для обработки push-уведомлений на устройствах 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. Когда приложение находится в фоновом режиме, и пользователь нажимает на push-уведомление, вызывается обратный вызов, и я могу прочитать полезную нагрузку. Однако, пока приложение находится на переднем плане, отображается баннер с уведомлением (как будто приложение все еще находится в фоновом режиме). Обратный вызов никогда не вызывается при нажатии на баннер или при получении.

Пример

Это, кажется, происходит на устройствах с iOS 10+. У устройства с 9.3.5 проблем не было.

1 Ответ

0 голосов
/ 20 сентября 2018

Мне удалось добиться этого, создав приложение с помощью Titanium SDK 7.2.0 GA.Приложение ранее использовало 7.3.1 GA и 7.4.0 GA.

...