Я разрабатываю приложение для 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();
}