一,添加图标

你的应用在iPhone主屏幕上的标准图标(Icon.png)是57像素*57像素的正方形,PNG格式,不能有透明效果或者图层,72DPI.除些之外,你还可以提供一个同样格式的114像素*114像素的高分辨率图标(Icon@2x.png).当用户的设备是Retina屏幕的时候,这个图标就会派上用场了。如果你是iPad开发应用,则主屏幕图标(Icon~ipad.png)的大小应该是72像素*72像素。如果你正在开发的是需要在iPhone和iPad上都能运行的通用型程序,那么上面提到的三种大小的图标你都需要提供。

一般情况上,应用中的每个图片资源都要准备两个大小不同的版本:一个标准分辨率的图片和一个高分辨率的图片,高分辨率的图盘点表和于在Retina屏幕上显示。

这两个图片有一定的命名规则:标准分辨率的图片的名称是:“<文件><设备描述符>.<后缀>",高分辨率图片的名称是:"<文件>@2x<设备描述符>.<后缀>.

图片名称中的<文件>和<后缀名>两部分即通常意义上的文件名称和后缀名。<设备描述符>可有可无,如果有的话,必须是"~ipad"或者"\~iphone".如果你希望你的应用在iPhone上和iPad上分别使用不同版本的图片的话,可以用这个设备描述符来指定。

二,添加启动图片

给你的应用添加一个启动图片是iOS设备为你准备的”小伎俩"之一。当应用启动时,会首先显示启动图片给用户,一直到应用启动完成真正的UI界面才显示出来。也就是说,系统在加载应用的过程中会显示应用的启动图片,避免了在加载时显示空白的屏幕给用户。

大多数启动图片都是很简单的,这没有关系,因为启动图片只是为了告诉用户你的应用启动非常快。如果你把启动图片当作启动页面使用,会给用户造成你打断了他们的感觉,他们会抱怨为什么你要浪费他们的时间给他们看一个毫无意义的界面,而不是立即就启动应用。如果你正确的使用了启动图片,用户会感觉到你在尽快启动你的应用,尽了最大的努力去给用户最好的体验。

三,编译与签名

不同的描述文件用于不同的目的,Ad Hoc发布的描述文件用于Alpha和Beta测试,而App Store发布的描述文件则用于将你的应用最终版本发布到iTunes App Store中。

Ad Hoc方式生成的版本用于将你的应用发布到你的开发环境之外,可以发布给你的Beta测试者或者是企业内部使用。和我们之前为开发而注册的iOS设备一样,你需要注册所有那些要运行你应用的Ad hoc版本的设备。在iOS Provisioning Portal中你每年最多可以注册100台设备,这是一个硬性的规定,如果超出了100个,即使删除那些已注册过的设备你也不能再注册新的设备了。

四,提交到App Store

SKU是一个只包含字母和数字的标识符,用于唯一确定你的应用。需要注意的是,SKU以后将不能更改,即使是上传了应用的新的二进制包(或者版本),从理论上来讲你可以选择任何字符串,不过,最好能很好地描述你的应用并且和具体版本无关。

1,版本号,值必须是1.0或者以上,向App Store提交小于1.0的版本同样是审核团队拒绝你的应用的理由之一。

2,如果你的应用使用了第三方在线服务,必须有账号才能使用所有的功能,你必须在这里提供一个测试用的用户名和密码。否则,审核团队同样会拒绝你的应用。

3,你需要为你的应用上传一个512*512像素的图标,以便于在iTunes上显示,还要至少上wfnyg张应用截图。在App Store中展示。

五,审核被拒的原因。

1,审核团队会拒绝那些版本号小于1.0的,或者是标记为“Beta","Alpha"的应用。

2,应用的57像素*57像素的图标必须和512像素*512像素的图标完全一样。另外如果你计划发布一个免费的”Lite"版本和收费的“Pro"版本,那么这两个应用的图标必须不一样。

3,在你的应用里面使用苹果的图片资源,比如图标,iOS设备的图片等,都会是审核不通过的一个理由。

4,发布到App Store的应用都不允许动态连接私有的或者第三方库,否则非常容易导致苹果拒绝你的应用。不过,使用静态链接库在目前还是一个灰色地带,一般情况下都 没问题。

5,另一个拒绝你的原因是你的应用和系统内置应用的功能重复,对网页浏览器进行扩展的应用常常受到这样的指责。其他类似的例子是电子邮件客户端和音乐播放器类的应用。

6,如果你的应用使用了表格视图,但是表格视图编辑模式下对单元格进行操作的方法不符合规范,苹果也会拒绝你的应用。比如,选中单元格进行了操作之后无法取消选择。

7,没有对网络状态进行检测或者不能正确处理无法连接网络的情景(并通知用户)是另一个常见的拒绝理由。

8,如果你的应用需要大量的网络传输,你要保证这些传输不通过移动蜂窝网络进行。如果你的应用会通过移动蜂窝网络进行大量的网络传输,审核团队也会拒绝你的应用。如果你的应用的确会那样做,你应该在设备切换到蜂窝移动网络的时候 禁止或者限制数据传输。

9,在用户点击不同用途的文本输入框时,你的应用应该弹出相应的键盘。弹出了不对应的键盘往往也是审核团队拒绝你的应用的一个原因。

10,苹果会从你指定的最小版本到当前最新版本的iOS系统上逐一测试你的应用。如果审核团队发现你的应用中哪怕只有部分功能在某些版本上不能正常工作,他们通常都会拒绝你的应用。不幸的是,他们几乎从来不告诉你是在iOS的哪个版本上出现的问题。这有可能导致一个悲剧,那就是如果你不是在审核团队发现问题的那个iOS版本上测试,你就重视不了他们发现的问题。

参考资料《iOS编程指南》

 

【读书笔记】iOS-发布你的应用的更多相关文章

  1. [读书笔记]iOS 7 UI设计 对比度

    好久没写随笔了,最近在读<iOS 7 byTutorials>,很不错,推荐给大家. 每一个好的程序员也都是一个设计师,不懂设计的程序员不是好的CTO.哈哈,开个小玩笑. iOS 7设计的 ...

  2. 读书笔记-iOS核心动画高级技巧

    如果不使用+imageNamed:,那么把整张图片绘制到CGContext可能是最佳的方式了. 这里我们利用了CALayer的KVC来存储和检索任意的值,将图层和索引打标签. 使用KVC打标签

  3. Web高级征程:《大型网站技术架构》读书笔记系列

    一.此书到底何方神圣? <大型网站技术架构:核心原理与案例分析>通过梳理大型网站技术发展历程,剖析大型网站技术架构模式,深入讲述大型互联网架构设计的核心原理,并通过一组典型网站技术架构设计 ...

  4. HDFS Federation (读书笔记)

    HDFS Federation (读书笔记) HDFS的架构 HDFS包含两个层次:命名空间管理(Namespace) 和 块/存储管理(Block Storage). 命名空间管理(Namespac ...

  5. Android驱动开发5-8章读书笔记

    Android驱动开发读书笔记                                                              第五章 S5PV210是一款32位处理器,具有 ...

  6. <读书笔记>软件调试之道 :从大局看调试-理想的调试环境

    声明:本文档的内容主要来源于书籍<软件调试修炼之道>作者Paul Butcher,属于读书笔记.欢迎转载! ---------------------------------------- ...

  7. <读书笔记>软件调试之道 :从大局看调试-零容忍策略

    声明:本文档的内容主要来源于书籍<软件调试修炼之道>作者Paul Butcher,属于读书笔记.欢迎转载! ---------------------------------------- ...

  8. <读书笔记>软件调试之道 :从大局看调试-发现代码存在问题

    声明:本文档的内容主要来源于书籍<软件调试修炼之道>作者Paul Butcher,属于读书笔记.欢迎转载! ---------------------------------------- ...

  9. 《C#图解教程》读书笔记之一:C#和.NET框架

    本篇已收录至<C#图解教程>读书笔记目录贴,点击访问该目录可获取更多内容. 一.在.NET之前的编程世界 C#语言是在微软公司的.NET框架上开发程序而设计的,首先作者给大家纠正了一下C# ...

  10. 《你必须知道的.NET》读书笔记一:小OO有大智慧

    此篇已收录至<你必须知道的.Net>读书笔记目录贴,点击访问该目录可以获取更多内容. 一.对象  (1)出生:系统首先会在内存中分配一定的存储空间,然后初始化其附加成员,调用构造函数执行初 ...

随机推荐

  1. java之ArrayList详细介绍

    1  ArrayList介绍 ArrayList简介 ArrayList 是一个数组队列,相当于 动态数组.与Java中的数组相比,它的容量能动态增长.它继承于AbstractList,实现了List ...

  2. 优化版小程序canvas,增加失败逻辑,及完善文字

    wxml <view class="shareBox" style="backgound:{{isShow ? '#000' : '#fff'}}" wx ...

  3. 使用new Image()进行预加载

    概述 这篇博文记录了用new Image()进行预加载的总结,供以后开发时参考,相信对其他人也有用. 旧的预加载 一般我们为了让背景图更快的加载,我们常常把背景图放在一个display:none的im ...

  4. 三种方法在当前目录下打开cmd命令窗口

    概述 运行npm的时候,每次都要cd到目录,很麻烦,所以总结了三种在当前目录下直接打开cmd窗口的方法,供以后开发时参考,相信对其他人也有用. 方法一 在当前目录按住shift再右键. 会看到右键菜单 ...

  5. Java 架构师+高并发+性能优化+Spring boot大型分布式项目实战

    视频课程内容包含: 高级 Java 架构师包含:Spring boot.Spring cloud.Dubbo.Redis.ActiveMQ.Nginx.Mycat.Spring.MongoDB.Zer ...

  6. Python获取网页指定内容(BeautifulSoup工具的使用方法)

    Python用做数据处理还是相当不错的,如果你想要做爬虫,Python是很好的选择,它有很多已经写好的类包,只要调用,即可完成很多复杂的功能,此文中所有的功能都是基于BeautifulSoup这个包. ...

  7. 第二章 微服务构建:Spring Boot

    此处介绍Spring Boot的目的除了它是Spring Cloud的基础外,也由于其自身的各项优点,如自动化配置.快速开发.轻松部署等,非常适合用作微服务架构中各项具体微服务的开发框架. 本章内容: ...

  8. salesforce lightning零基础学习(七) 列表展示数据时两种自定义编辑页面

    上一篇Lightning内容描述的是LDS,通过LDS可以很方便的实例化一个对象的数据信息.当我们通过列表展示数据需要编辑时,我们常使用两种方式去处理编辑页面:Pop Up Window弹出修改详情以 ...

  9. SQOOP安装部署

    1.环境准备 1.1软件版本 sqoop-1.4.5 下载地址 2.配置 sqoop的配置比较简单,下面给出需要配置的文件 2.1环境变量 sudo vi /etc/profile SQOOP_HOM ...

  10. VM虚拟机扩展硬盘容量

    VM虚拟机扩展硬盘容量 第一步,关闭系统,给虚拟机硬盘增加空间. 第二步,启动系统.查看硬盘大小和分区情况. 第三步,分区. 第四步,格式化分区. 第五步,挂载. 第六步,开机自动挂载. 第一步: 当 ...