我需要为适用于Android和IOS的应用创建推送通知。 我已阅读了docomention但无法弄清楚如何将其用于工作。
向某人激活一个可以显示给我的有效代码,以便我可以看到它是如何工作的? 我在IOS上试过这个:
var deviceToken;
Titanium.Network.registerForPushNotifications({
success : function(e) {
deviceToken = e.deviceToken;
alert("deviceToken = " + deviceToken);
//subscribeToChannel();
},
error : function(e) {
alert("Error: " + e.message);
},
callback : function(e) {
alert("deviceToken = " + deviceToken);
//recebePush(e.data);
}
});
但成功,错误pr回调函数从未被解雇。
在Android中,我试过这个:
// Require the module
var CloudPush = require('ti.cloudpush');
var deviceToken = null;
// Initialize the module
CloudPush.retrieveDeviceToken({
success: deviceTokenSuccess,
error: deviceTokenError
});
// Enable push notifications for this device
// Save the device token for subsequent API calls
function deviceTokenSuccess(e) {
deviceToken = e.deviceToken;
}
function deviceTokenError(e) {
alert('Failed to register for push notifications! ' + e.error);
}
// Process incoming push notifications
CloudPush.addEventListener('callback', function (evt) {
alert("Notification received: " + evt.payload);
});
但它总是返回错误说:“无法注册推送通知!INVALID_SENDER。
我为Android生成了一个GCM API密钥和GCM发件人ID,为IOS创建了证书,但它没有工作
答案 0 :(得分:0)
答案 1 :(得分:0)
您是否已使用Appcelerator平台注册了GCM API密钥/发件人ID和APNS证书(在Apps> YOURAPP> Arrow> Push Notifications)下的菜单中。
您需要在Appcelerator中注册这些凭据,并且需要在Appcelerator Studio中为您的应用启用Appcelerator Platform Services。您应该在tiapp.xml中看到类似的内容:
<property name="acs-authbase-url" type="string">https://secure-identity.cloud.appcelerator.com</property>
<property name="acs-base-url" type="string">https://api.cloud.appcelerator.com</property>
<property name="acs-push-api-url" type="string">https://api.cloud.appcelerator.com/v1/</property>
<property name="acs-api-key-production" type="string">xxxxxxxxxxxxxx</property>
<property name="acs-api-key-development" type="string">xxxxxxxxxxxxxx</property>