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); 
    } 
}) 
+0

您是否在多个设备上测试过这种行为(不是一个软件有问题)? – Shade 2013-03-27 22:28:37

+0

5个设备。 2个iPad和3个iPhone。 – user1868134 2013-03-27 22:33:25

+0

您能否提供您上次更新的代码更改(与推送通知相关)的区别? – Shade 2013-03-27 22:34:33

如果通知设置已经消失,这不太可能是代码问题。该代码只能请求通知,它不能完全改变设置。

您的更新有可能是使用较旧的供应配置文件构建的,该配置文件没有启用推送。在配置文件中的“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安装配置文件,然后修改并重新从门户网站下载配置配置文件,然后重新构建并重新提交该应用程序。

+0

奇怪的是,给予足够的时间在通知中心重新出现应用程序。然后不久,推送消息又开始工作。这是我们可以从配置文件问题期望的行为吗? – user1868134 2013-03-30 16:59:14

+0

我从来没有见过这样的事情;如果安装的应用程序发生这种情况而无需重新安装,重新构建它或更新配置文件,那么它听起来像是一个奇怪的角落案例或错误。我会收集尽可能多的信息,然后用APple进行归档。 – robotadam 2013-04-09 16:17:12