Не удается зарегистрироваться для push-уведомлений в Appcelerator - PullRequest
0 голосов
/ 23 января 2012

Я разрабатываю приложение для iOS с помощью Appcelerator. В этом приложении я хочу использовать push-уведомления. В моем app.js я добавил следующий код, но когда я запускаю его на телефоне, он даже не регистрирует, что приложение хочет использовать push.

Я использую SDK 1.8 из Titanium. Странно то, что работал точно такой же код хорошо для более низких SDK в других моих приложениях.

// Set the Urban Airship credentials

var APP_KEY = 'XXXXX';

// Set the Urban Airship credentials

var APP_SECRET = 'XXXXX';

// Start the register function

Titanium.Network.registerForPushNotifications({

    // Set the push types

    types:[

        Titanium.Network.NOTIFICATION_TYPE_BADGE,
        Titanium.Network.NOTIFICATION_TYPE_ALERT,
        Titanium.Network.NOTIFICATION_TYPE_SOUND

    ],

    // If the call was successful

    success: successCallback,

    // If the call resulted in an error

    error: errorCallback,

    // The message callback

    callback: messageCallback

});

function successCallback(e) {

    // Setup the XHR client

    var request = Titanium.Network.createHTTPClient({

        // Setup the onload

        onload:function(e) {

            if (request.status != 200 && request.status != 201) {

                // Set the response

                request.onerror(e);

                // Return

                return;

            }
        },

        // Set up the error

        onerror:function(e) {

            Ti.API.info("Register with Urban Airship Push Service failed. Error: "+ e.error);

        }

    });

    // Set the device token

    Titanium.App.Properties.setString("device_token", e.deviceToken);

    // Register device token with UA

    request.open('PUT', 'https://go.urbanairship.com/api/device_tokens/'+ e.deviceToken, true);

    // Set the basic authentication

    request.setRequestHeader('Authorization','Basic ' + Titanium.Utils.base64encode(APP_KEY + ':' + APP_SECRET));

    // Send the request

    request.send();

}

1 Ответ

0 голосов
/ 08 декабря 2012

Сначала убедитесь, что у вас установлен модуль в tiapp.xml

Второе: вам нужно заполнить

var APP_KEY = 'XXXXX';

var APP_SECRET = 'XXXXX';

Ваши app_key и app_secret находятся в верхней части вашего файла tiapp.xml (исходный код, а не графический интерфейс)

Приветствия

...