报亭原子饲料的使用和限制

时间:2013-12-19 00:30:44

标签: ios ipad notifications atom-feed newsstand-kit

在我阅读了一些指南和参考资料后,我仍然对报摊如何运作有疑问。

  1. 首先(我只想确定),原子供稿仅供应用商店使用,还是用于应用?应用程序在前台填写nkissue对象时是否必须读取此内容?或者我必须为此制作我自己的定制饲料(xml,plist或其他)。我没有看到任何存储问题URL的内部条目。我应该像本教程http://www.viggiosoft.com/blog/blog/2011/10/17/ios-newsstand-tutorial/那样做相同或类似的东西吗?

  2. 如果您只需要在有效负载上发送“content-available = 1”,通知“UIRemoteNotificationTypeNewsstandContentAvailability”如何工作?它是否下载了原子Feed中的最新问题?我应该如何在后台继续下载(代码片段会很好)。

  3. 原子饲料是否可选?如果我有自己的问题下载自定义Feed,原子Feed是可选的,因为它可能只用于应用商店吗?

  4. 修改 看起来像atom是可选的,仅适用于itunes,我应该为我认为的应用程序使用其他服务。我还不明白的是我应该在哪里实现背景加载......在

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions 在“if”中,看起来像if ([launchOptions objectForKey:UIApplicationLaunchOptionsNewsstandDownloadsKey] || [launchOptions objectForKey:UIApplicationLaunchOptionsRemoteNotificationKey]) {}

    -(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo
    

    还是两种选择?我是对的吗?

1 个答案:

答案 0 :(得分:2)

  1. 是的,Atom Feed仅用于使用新的问题信息更新App Store。获取问题信息的方式取决于您。

  2. 您可以发送内容可用的其他数据:1,例如刚刚发布的问题的唯一ID。例如:

    {"aps":{"content-available": 1, "sound":"silent.wav"}, "issue_id":"latest_issue_id"}

    (由于iOS 7静音推送通知中的错误read here,我添加了声音组件。)

  3. 是的,它是可选的。

  4. 应在- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions-(void)application:(UIApplication *)application didReceiveRemoteNotification:(NSDictionary *)userInfo上调用后台加载。当应用程序被唤醒时(在未处于活动状态之后)将调用一个,而在处于活动状态或后台状态时调用另一个。 (再次使用iOS7测试时要小心,它现在不能像现在这样工作,等待iOS7.1 ...)