iOS应用程序在更新后从通知中心消失
我有一个使用推送通知,徽章和声音通过城市飞艇在Titanium Studio中编写的iOS应用程序。在我上次更新之后,升级的人在通知中心遇到问题。起初我的应用程序仍然出现在通知中心,但通常出现在应用程序名称下的“徽章,声音,横幅”已经消失。如果您进入通知中心的应用程序设置,则更改这些内容的选项根本就不存在。当然推送通知在这一点上也不起作用。iOS应用程序在更新后从通知中心消失
现在,如果您重新启动手机或重新安装应用程序,通知中心的程序条目将完全消失。我发现重新安装应用程序并重新启动手机足够多次后,通知中心中的条目将重新出现,并且推送将再次运行。这当然是一个荒谬的事情,要求我们所有的用户去做。
即使所有这一切都发生,我仍然从手机收到正确的APID,推送消息宣称正确。手机不显示它们。
在一次新鲜的安装,我已经尝试了所有的一切都很好的蝙蝠。
我完全沉迷于这一个去哪里。有什么建议么?编号1: 以下是代码的相关部分。我只更改了以前版本的一行,注意到只有一行代码要从以前的版本更改。
var Urbanairship = require("com.0x82.urbanairship");
Urbanairship.options = {
APP_STORE_OR_AD_HOC_BUILD: true,
DEVELOPMENT_APP_KEY: "xxx",
DEVELOPMENT_APP_SECRET: "xxx",
PRODUCTION_APP_KEY: "yyy",
PRODUCTION_APP_SECRET: "yyy",
LOGGING_ENABLED: true,
LOG_LEVEL: 5
};
Ti.Network.registerForPushNotifications({
types: [
Ti.Network.NOTIFICATION_TYPE_BADGE,
Ti.Network.NOTIFICATION_TYPE_ALERT,
Ti.Network.NOTIFICATION_TYPE_SOUND
],
success: function(e){
var token = e.deviceToken;
Urbanairship.autoBadge = true;
Urbanairship.pushEnabled = true; //Added this line, only line to change
Urbanairship.registerDevice(token);
userData.pushID = token; //save pushid
Ti.App.Properties.setString('userData', JSON.stringify(userData));
},
error: function(e){
alert("The Push Servers appears to be down. Please restart the app and try again");
if(DEBUG == true){Ti.API.debug("Apple Push Error: "+e.error)}
},
callback: function(e){
pushReceived(e.data.type);
}
})
如果通知设置已经消失,这不太可能是代码问题。该代码只能请求通知,它不能完全改变设置。
您的更新有可能是使用较旧的供应配置文件构建的,该配置文件没有启用推送。在配置文件中的“APS-环境”标志不会被找到,当应用程序试图注册它会显示在Xcode控制台此错误: https://support.urbanairship.com/customer/portal/articles/60710-can-t-get-a-device-token-%22no-valid-aps-environment-entitlement-%22-seen-in-console
如果是这样的问题,你可以删除现有配置为了安全起见,从xcode安装配置文件,然后修改并重新从门户网站下载配置配置文件,然后重新构建并重新提交该应用程序。
奇怪的是,给予足够的时间在通知中心重新出现应用程序。然后不久,推送消息又开始工作。这是我们可以从配置文件问题期望的行为吗? – user1868134 2013-03-30 16:59:14
我从来没有见过这样的事情;如果安装的应用程序发生这种情况而无需重新安装,重新构建它或更新配置文件,那么它听起来像是一个奇怪的角落案例或错误。我会收集尽可能多的信息,然后用APple进行归档。 – robotadam 2013-04-09 16:17:12
您是否在多个设备上测试过这种行为(不是一个软件有问题)? – Shade 2013-03-27 22:28:37
5个设备。 2个iPad和3个iPhone。 – user1868134 2013-03-27 22:33:25
您能否提供您上次更新的代码更改(与推送通知相关)的区别? – Shade 2013-03-27 22:34:33