一种新的方式来分发杂志 Newsstand

应用程序设置

基本应用
  前提是要有跟随本教程XCode 4.2 SDK安装和iOS 5。即使大多数的新功能,可以直接在iPhone模拟器测试,推动notifcations和在应用程序购买本教程的一部分需要iOS开发者账户。

所以让我们从一个简单的方法:

打开XCode和创建一个新的“空”的项目,您可以自由地选择目标设备iPhone和iPad之间。然后创建一个新的视图控制器,称之为StoreViewController,进入应用程序委托实例化一个新对象,该控制器和把它放进一个新的导航控制器。最后定义一个新的图标,把它添加在您的项目并运行在模拟器。最明显的结果是这样的,我们的图标在跳板和应用程序显示一个空的屏幕:

启用的报摊

现在我们需要指示系统,我们希望我们的应用程序要兼容报摊。

第一个要求是创建一个特定于报摊的图标,这个图标是不同于通常的应用图标,它必须出现在一个我们的杂志的封面。在我们的例子中,我们准备了一个简单的130 x 190像素图标和进口在XCode。

此外,我们需要添加或修改三个新领域应用信息plist。第一个新字段是UINewsstandapp,必须添加和设置为YES。

第二个是创建或修改CFBundleIcons字典项通过添加报摊图标。最后,如果我们要支持背景下载新的资产,我们需要添加的应用背景报摊代码功能。新添加的plist物品将出现在xml语法为:

<key>CFBundleIconFiles</key>

<array>

<string>icon.png</string>

<string>icon@2x.png</string>

</array>

<key>CFBundleIcons</key>

<dict>

<key>CFBundlePrimaryIcon</key>

<dict>

<key>CFBundleIconFiles</key>

<array>

<string>icon.png</string>

<string>icon@2x.png</string>

</array>

<key>UIPrerenderedIcon</key>

<false/>

</dict>

<key>UINewsstandIcon</key>

<dict>

<key>CFBundleIconFiles</key>

<array>

<string>icon_newsstand.png</string>

</array>

<key>UINewsstandBindingEdge</key>

<string>UINewsstandBindingEdgeLeft</string>

<key>UINewsstandBindingType</key>

<string>UINewsstandBindingTypeMagazine</string>

</dict>

</dict>

<key>UINewsstandApp</key>

<true/>

<key>UIBackgroundModes</key>

<array>

<string>newsstand-content</string>

</array>

注意:

CFBundleIconFiles部分仍然存在为了向后兼容,但在新的iOS 5语法已经复制在CFBundlePrimaryIcon CFBundleIcons节。这些新的设置出现在XCode如下图所示,我们这里显示的值而不是关键参数的名称信息,只是为了让你看看新图标文件结构是标有一个iOS 5标签:

让我们构建并运行应用程序再一次,结果将出现如下:我们原来的图标被罢免了跳板和替换为封面像图标在报摊组;如果我们打开组然后我们就能在我们的应用程序图标,点击移动它到前台。注意,经典的风格图标仍系统所需的,因为它们被用于聚光灯,推送通知,在应用程序商店。

显示和下载杂志

现在是时候开始编写一些代码,将我们的项目加入NewsstandKit框架。

别忘了导入NewsstandKit标题的分类,需要它:

#import <NewsstandKit/NewsstandKit.h>

为简单起见,我们假设列表中可用的问题(所有免费的)是在一个plist文件,可以从服务器下载的出版商。所以为了我们定义一个类称为出版商将照顾下载当前的项目列表。一旦项目被下载他们将提交给用户。的plist是相当简单的:它是一个数组,每个字典词典代表一个问题通过提供识别名称(独特的)、标题(对用户可见),出版日期和url缩略图封面图片和内容(PDF文件)下载。

<dict>

<key>Name</key>

<string>Magazine-0</string>

<key>Title</key>

<string>Magazine Issue 0</string>

<key>Date</key>

<date>2011-10-01T06:00:00Z</date>

<key>Cover</key>

<string>http://www.viggiosoft.com/media/data/blog/newsstand/magazine-0.png</string>

<key>Content</key>

<string>http://www.viggiosoft.com/media/data/blog/newsstand/magazine-0.pdf</string>

</dict>

在启动时将下载的StoreViewController从服务器的问题清单,解析它并将提供这个表中列出。同时它将下载覆盖缩略图和表中会显示它们。这是很典型的代码还不相关,所以我不会解释报摊的细节。结束时的加载视图将以这种方式出现。你只会这个项目列表一起盖和暗示邀请丝锥下载。

iOS Newsstand 指导 报刊杂志 iOS开发相关推荐

  1. 《iOS开发完全上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C新手训练营

    编写Hello World应用程序通常被认为,是学习任何编程语言的第一步.在这一章,你将创建iOS版的Hello World应用程序作为起步,快速了解Xcode这个开发iOS应用程序的主要工具.   ...

  2. 《iOS开发全然上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C新手训练营...

         编写Hello World应用程序通常被觉得,是学习不论什么编程语言的第一步.在这一章,你将创建iOS版的Hello World应用程序作为起步,高速了解Xcode这个开发iOS应用程序的主 ...

  3. 《iOS开发完全上手——使用iOS 7和Xcode 5开发移动与平板应用》之Objective-C

    2019独角兽企业重金招聘Python工程师标准>>> 编写Hello World应用程序通常被认为,是学习任何编程语言的第一步.在这一章,你将创建iOS版的Hello World应 ...

  4. iOS 7: iPhone/iPad应用开发技术详解

    iOS 7: iPhone/iPad应用开发技术详解 作者:刘一道 出版社:机械工业出版社 出版年:2013-11 页数:507 定价:79.00元 ISBN:9787111440512 样章下载:h ...

  5. iOS 7 iPhone iPad应用开发技术详解

    2019独角兽企业重金招聘Python工程师标准>>> iOS 7 iPhone iPad应用开发技术详解 本书内容全面,从 Objective-C语法知识.iOS功能特 性,到高级 ...

  6. iOS应用内付费(IAP)开发步骤列表

    iOS应用内付费(IAP)开发步骤列表 前两天和服务端同事一起,完成了应用内付费(以下简称IAP, In app purchase)的开发工作.步骤繁多,在此把开发步骤列表整理如下.因为只是步骤列表, ...

  7. iOS 移动端生成工具开发

    代码地址如下: http://www.demodashi.com/demo/11284.html 一.准备工作 编译环境 xcode 用于生成冗余架构代码, 实现生成零耦合架构 二.程序实现 上个月的 ...

  8. iOS开发笔记:大小写敏感的iOS文件系统,而iOS模拟器对大小写不敏感

    一个程序在模拟器上运行正常,但在真机上运行就是出错,排除了下列多种可能性: (1)用5.0的SDK开发,部署在4.3的真机系统上 (2)越狱的iPhone机器 (3)文件的汉字编码不正确 (4)ZIP ...

  9. unity5.X简易的3d跑酷游戏源码。支持安卓+IOS双端 C#语言开发。

    unity5.X简易的3d跑酷游戏源码.支持安卓+IOS双端 C#语言开发.拿来学习研究和二次开发都很不错. 完整源码下载 unity5.X简易的3d跑酷游戏源码.支持安卓+IOS双端C#语言开发-U ...

最新文章

  1. 使用SSH连接CentOS步骤
  2. 信号 频率_信号的时间域分辨率和频率域分辨率
  3. html怎么自动设为底部,让底部永远在页面最底部显示的css方法
  4. C语言多种方法实现同一个功能
  5. GCC built in CAS API
  6. 什么叫大地高_涨得高不是不买的理由,更不是卖出的理由,什么叫追涨杀跌?(附最简单选股方法)---交易那些事儿...
  7. hdu4821 字符串hash(有多少(M*L长的,M个不相同)子串))
  8. 转转Q1手机行情:iPhone13开始“飘香” 二手5G手机市场苹果占一半
  9. [转载] Python中生成器和迭代器的区别
  10. NumPy库---介绍
  11. 2018_08_10_生活记录_关于我和这个博客的说明
  12. C++编程练习:2-华氏度转摄氏度
  13. ue4白天夜晚切换_白天/夜晚编码的美好时光...多年来最佳
  14. STM32F427利用FSMC接口访问FPGA的SRAM(3)—— STM32F427访问FPGA的SRAM
  15. C++ swap用法
  16. 科普计算机软硬件知识,科普显卡基础知识 让你更加了解显卡
  17. 操作系统思维导图总结
  18. 病毒、蠕虫、木马区别
  19. 【视频】机器人直接爬货架取货
  20. Win10+Ubuntu双系统安装教程

热门文章

  1. zabbix[服务端安装]
  2. A-Level经济真题每期一练(14)
  3. 计算机学习过程使用软件
  4. android intent { (has extras) },android – 活动开始时缺少Intent extras
  5. u盘无法格式化怎么办?3个方法解决!
  6. vba 提取 json某个值_VBA利用IE,抓取解禁股票数据
  7. Android手机上网实现机制
  8. CSDN中Markdown新版编辑图片居中问题
  9. 2021.5.9数仓之机器详情ODS EDS DM分层设计
  10. android dispatch input输入子系统,10.12 android输入系统_InputStage理论