Flash开发iOS应用全攻略(五)——如何上传应用到iTunes Connect

Flash开发iOS应用全攻略(五)——如何上传应用到iTunes Connect

上一篇我介绍了【如何为iTunes Connect准备应用】。最后在这篇文章里我会简单介绍下如何来上传IPA到iTunes Connect。

登陆iTunes Connect,进入Manage Your Applications页面后,点击你创建的应用图标,进入应用的主页。

如图,在应用的主页中可以看到应用的基本信息。通过右上方的按钮可以来管理付费方面的设置。在左下方图标旁边是应用的当前状态。上传应用之前必须确定应用的状态为Waiting for upload。

点击图标下方的View Details进入应用的详细信息页面。在页面上方中部有一个Binary Details按钮,点击后可以查看文件上传的情况。在这个页面还可以更改应用的状态。我目前遇到的状态有以下几种:

  • Waiting for upload 等待上传,只有这种状态下才可以上传IPA
  • Waiting for Review 等待审核,上传成功后开始排队等待审核
  • In Review 正在接受审核
  • Developer Reject 开发者撤回,开发者可能出于某种原因要撤回文件进行修改,在下次上传之前必须进入Binary Details页面修改应用状态为Waiting for upload,才可以进行下次上传。上传后会重新排队。

另外,由于我的应用正在接受审核,所以我不知道还有哪些状态,但至少有拒绝和通过这两种。

更新mobileprovision和p12

现在我来介绍一下,在上传应用之前还必须要做的一个重要事情。我在“如何使用iOS开发者授权和申请证书”这篇文章介绍了mobileprovision和p12这两个文件的生成方法,也提到了它们在开发阶段和发布阶段需要使用不同的文件。接下来我就简单介绍以下在哪里为准备发布的应用生成mobileprovision和p12文件。

回到开发者授权系统,进入Certificates页面后,点击Distribution标签。如下图,点击图中的链接可以下载一个AppleWWDRCA(Apple World Wide Developer Relations Certification Authority)证书文件到本地,如果是MAC,双击它就可以进入Keychain Access,这个证书文件会给所有你从Apple开发者网站下载的证书签名,包括前篇文章提到的证书。但是我怎么也找不到如何在Windows下使用AppleWWDRCA给证书签名的资料,所以除了建议使用MAC来签名之外,我无法提供一个可行的方法。如果你的证书没有经过AppleWWDRCA签名,它是无法正常上传到iTunes Connect的。

回到开发者授权系统证书页面,点击Request Certificate,按照我们之前介绍过的流程上传一个CSR文件,然后下载一个cer文件进行签名(需要用MAC),再导出p12供Flash发布。

mobileprovision文件的生成方式同之前的方法没有什么区别,只不过需要从Distribution标签下重新申请一个Profile,然后选择一个Distribution的签名证书,就可以导出provision文件了。

使用新的p12和mobileprovision文件重新打包发布一个IPA,这个文件就是我们即将上传到iTunes Connect上的Binary文件。

使用Application Loader上传应用

在Mac下使用Application Loader是上传Binary到iTunes Connect的唯一途径。如果你安装了Xcode 4,可以使用最新的Application Loader 1.4来上传,否则可以下载Application Loader 1.3.dmg,还可以参考Application Loader使用指南。

Application Loader使用方法非常的简单,使用你的开发者帐号登陆,然后按照提示一步一步操作就可以了。Application Loader提供的不仅是文件上传的功能,它还同时校验和检查IPA的证书与授权,所以如果你的文件在发布过程中没有经过合法的签名,或者没有使用正确的授权与证书,那么上传是不会成功的。

上传成功后就可以等着Review了,我目前的经验也只能分享到这里。希望有对流程更清楚的专家可以对我介绍有误的地方及时提出修改意见,谢谢!

Flash开发iOS应用全攻略(四)——如何为iTunes Connect准备应用

在上周我介绍了【如何在Flash里发布iOS应用】,以及【如何申请成为合法的iOS开发者】、【如何使用iOS开发者授权和申请证书】。今天我会给大家介绍一下如果你打算将应用发布到 Apple应用程序商店,都应该做些什么。

如果你已经成功注册了iOS开发者,那么现在就可以登陆iTunes Connect来管理应用程序。

如何申请合同

如果你打算在iTunes上出售应用,那么你需要申请一份与Apple的双方合同。如下图:

点进去之后就是申请合同的页面,你可以申请iOS Paid Applications (付费应用合同)和iAd Network(广告合同)。它们的申请流程基本是一样的。我们以iAd合同为例,点击列表右侧的Request按钮,在新的页面中仔细阅读签订前的协议后,点击同意并继续。

查看你的注册邮箱,会收到一封来自do_not_reply@apple.com的邮件,邮件附件中是一份含有合同条款的PDF,仔细阅读后,可以回到iTunes Connect的合同页面继续完成申请流程。

如图,列表中最右侧的Status是当前的合同状态,如图中显示为Pending Tax, Contact,意思是税率信息和联系方式信息没有填写。因为我在此之前已经申请过了付费应用合同,已经填写过了一次银行信息,否则这里显示的状态应该是Pending Tax, Bank, Contact。

银行信息的填写

点击列表中Bank对应的Setup按钮,进入银行信息的编辑页面。

首先在下拉列表中选择China,然后点Next

新的页面中需要输入银行的CNAPS(China National Automatic Payment System)Code,这是中国的银行联网付费系统号码,每一个银行都有这样的一个号码。如下图,点击Look up your bank,可以查询你的银行信息。

在接下来的银行查询系统中,可以通过Bank Name(银行名字)、City(城市)和Post Code(邮政编码)来检索你的开户行信息,每一个查询条件都可以指定start with(以关键字开始)或者contains(包含)。比如要查询中国银行(Bank of China)在北京的某个支行,那么在Bank Name里选择start with,然后填写”Bank“;在City里填写”Beijing“,就可以列出北京市所有名字以”Bank“开头的银行名字。

从列表中选择你的开户行,然后点击Next就可以了。这样CNAPS Code就会被自动填写,你只需要在接下来的页面填入帐号信息。

如图,分别在Bank Account Number与Confirm Bank Account Number里输入一遍帐号,在Account Holder Name里输入帐号持有人的姓名(汉语拼音),注意要用汉语拼音,而且必须是存折或者银行卡持有人的名字;最后在Bank Account Currency里填写银行帐号的货币单位。这样就可以完成银行信息的填写。

联系人的填写

在合同列表中点击Contact Information对应的Setup按钮进入联系人填写页面。联系人的填写比较简单,点击Create New Person可以创建一个联系人,然后指定这个联系人是什么身份,如图,可以指定为高管(Senior Manager)、Finace(财务)、Technical(技术支持)、Legal(法律部门)、Promotions(市场推广)等。如果你是个人帐号,那么就全部使用自己。

赋税信息的填写

在合同列表中点击Tax对应的Setup来填写的是赋税信息(我最头疼考虑的东西),不过对于一般中国大陆的开发者这几步也不用怎么费脑筋。

先在第一页选择缴税的类型。如图:

如果你是加拿大的开发者,点击Canada Tax Forms下面的Setup;或者你想在日本的应用商店出售应用,那么注意页面下面有一排小字For developers residing outside of Japan who want to sell apps on the Japan App Store, learn more about optional Japanese tax forms. 点击learn more来了解跟日本应用商店相关的赋税信息。如果你两者都不是,那么点击 U.S Tax Forms下面的Setup按钮进入下一页。

下一页是一个选择题,问你是不是美国纳税人。问题下面的一段文字介绍了两种被认为是美国纳税人的条件:

1. 你目前是一个合法的永久的美国公民。

2. 你今年人在美国境内居住满了31天,并且在今年、去年和前年这三年里一共在美国境内住满了183天。

符合这两个条件之一,选择Yes,否则选择No。然后继续。

下页仍然是一个选择题,问你在美国有没有业务活动。如果你在美国有雇员,或者你有通过网络盈利的设备(或者出租的设备)在美国,那么你就选择Yes,否则选择No,继续。

最后一页比较Easy,选择了你是那种受益人(如果是个人就选择Individual/Sole Proprietor),最后确认你的名字和称呼(先生、女士、或者职位),就可以点击完成赋税信息的填写。

这样,申请合同的流程就完成了,接下来等1-3天可以再次登陆页面来查看(我没有收到Email的通知),如果申请成功,合同会移动到Contracts In Effect列表中,这样你的合同就生效了。

如何管理应用

在iTunes Connect里可以管理你所创建的所有应用,包括给应用命名、添加缩略图、添加描述文字已经指定价格等等操作。

首先在iTunes Connect里点击中间部分的Manage Your Applications可以进入应用程序的管理界面。

创建应用

如果你创建一个新的应用,点击页面左上角的Add New App按钮,进入创建页面,如图。

注意:这里所有的信息都要用英文填写。

App Name:应用的名称

SKU Number:Stock Keeping Unit,货号。如果你有很多应用,给每一个应用指定一个唯一的货号会方便你管理应用库。你可以用数字或者字母随便指定你的货号。

Bundle ID:这个是非常关键的一项设置,关系到你的应用能否被正常发布到商店。 在这里你会看到一个下拉列表,列表里是在开发者授权系统里创建的所有App ID的Description。选择你想要添加的App ID,然后在展开的Bundle ID Suffix里填入那个域名格式的Bundle ID(如com.jamesli.stanley2),注意:这个Bundle ID Suffix与在开发者授权系统里创建的Bundle ID必须完全相同,否则应用文件无法正确上传。 确认无误后再点击Continue按钮,否则应用保存后就无法回过头来修改这个值,只有删除App重新添加了。

给应用标价

接下来是给应用标价。如图,在Availabilities Date里选择应用的生效时间,然后在下面的下拉列表中选择你打算出售的价位,点击See pricing matrix可以看到所有的标价标准。如果你选择的不是Free,那么你必须要有一个生效的iOS Paid App合同,否则需要按照本文章上半部分来申请一个合同。

填写应用信息

下一步是一张表单,具体内容如下,注意全部用英文填写

  • Version Number 版本号,如1.0.0.1
  • Description 应用描述,4000字以内
  • Primary/Secondary Category 应用归类,在这里可以给应用选择一主一次两个归类,次要归类是可选项。
  • Keywords 检索关键字, 逗号分隔,总长度不能超过100字节。
  • Copyright 版权信息,如2012 Noah Boat Inc.
  • Contact Email Address 联系人信箱
  • Support URL 支持站点,填入客服以及支持站点
  • App URL 应用信息站点,(可选)填入应用的详细信息介绍站点。
  • Privacy Policy URL 隐私政策站点,如果在应用中采用了付费购买功能,则这一项为必填项,否则可选。
  • Review Notes 审核备注,这是给审核App的人看的,可以填入一些测试应用的相关信息(比如测试用的帐号密码等),这项不能超过4000字节。

接下来是应用的Rating,是指应用内对敏感内容的出现级别;None为不出现;Infrequent/Mild为不经常,轻微出现;Frequent/Intense为频繁出现。

下面是敏感内容的解释:

  • Cartoon or Fantasy Violence 指卡通化的的暴力场面。比如格斗游戏或者闯关游戏里的厮杀。
  • Realistic Violence 真实的暴力场面。比如逼真的3D游戏或者电影片段中的暴力。
  • Sexual Content or Nudity 色情或者裸露的内容(注意,是内容而并非画面,画面在最后一条)
  • Profanity or Crude Humor 亵渎或粗俗幽默。比如对宗教对人种的亵渎歧视等等。
  • Alcohol, Tobacco, or Drug Use or References 与烟酒、毒品有关的内容。
  • Mature/Suggestive Themes 成人或者限制级场景
  • Simulated Gambling 虚拟的赌博
  • Horror/Fear Themes 恐怖、惊悚的场面

下面的这两项据说即使是轻微出现,通过审核的可能性也不大。

  • Prolonged Graphic or Sadistic Realistic Violence 长篇幅地直白展现暴力或者虐待场面。
  • Graphic Sexual Content and Nudity 色情或者裸露的画面

关于EULA(最终用户协议)和Icon的上传我就不一一介绍,保存后,你就可以为应用上传文件了。

请继续浏览【如何上传应用到iTunes Connect

Flash开发iOS应用全攻略(三)——如何使用iOS开发者授权以及如何申请证书

上一篇我介绍了【如何申请成为合法的iOS开发者】,这篇文章会详细介绍如何使用授权文件(.mobileprovision)和签名证书文件(.cer)

在缴费成功后会收到一份来自Apple Developer Suport的确认邮件,如下图:

在邮件里有一个Login按钮,点击后可以进入Apple Developer会员中心。点击图中的iOS Provisioning Portal,进入开发者授权设置系统。

在设置界面中,可以选择点击页面下方的助手来运行向导。

或者直接从左边的导航来设置,我在这篇文章会主要介绍如何通过导航设置开发者授权以及证书。不过在此之前,我要先简单介绍一下Apple开发者授权的一些基本知识。

Apple对其设备有严格的使用限制,任何应用程序都必须经过iTunes Store下载安装,要么直接从设备里下载,要么从电脑中通过iTunes下载后同步到设备中。所以没有经过破解的设备是没有办法直接安装IPA文件的。但是Apple也提供了一套面向开发者的机制,让他们可以在指定的设备上安装IPA文件来测试和开发,这个机制的核心就是开发者授权。我前面介绍的申请流程就是申请获得一个可以在设备中安装运行IPA文件的开发者授权。

使用开发者授权是一套完整而且相对合理的流程,它可以分为下面几个阶段:

1. 授权设备,将开发者授权与指定的设备绑定在一起,使得这些设备可以自由安装开发者发布的IPA。

2. 生成授权文件.mobileprovision,这个文件会被打包进入IPA,实现设备与授权开发帐号的绑定。

3. 生成证书文件.p12,这个文件也会被打包进入IPA,实现应用发行商的签名以及身份验证。

除此之外,开发者授权系统还提供了开发(Development)和发布(Distribution)两个不同的渠道。开发测试的时候需要设备的绑定而实现在设备上单独安装IPA,发布的时候则不需要绑定设备。所以开发与发布需要使用不同的.mobileprovision与.cer文件。

下面回到刚才的开发者授权系统,我先来介绍一下如何在开发阶段使用授权与证书。

授权设备

点击左侧导航的Device,进入授权设备的页面,点击右上方的Add Device按钮可以添加一个设备。

添加设备的时候可以指定设备的名字(随便写),以及设备的UID(Unique Identifier)。每一个Apple的设备都有一个唯一的识别码,获得这个识别码的方法很简单,将你的设备连接到电脑,然后在iTunes里找到你的设备信息(如下图),点击图中红色方框的位置,设备UID就会显示出来。可以直接通过Ctrl + C (苹果是Command + C)可以把UID拷贝到剪切板。

添加App ID

点击左侧导航的App IDs按钮可以进入应用程序ID的配置页面,可以点击页面右方的New App ID按钮添加一个新的应用。这个ID对应的是即将开发和测试的应用程序。如下图,在description里添加一个单一应用的名称(不支持特殊字符),然后在最下面的Bundle Seed ID里面填入一个含有domain格式的字符串(如com.jamesli.appname)。Bundle Seed ID是一个集合了开发商与应用程序的信息,格式为(com.[开发商].[应用]),这里可以指定为单一应用,也可以指定为全部应用。如果是单一应用,建议刚才填写的description与Bundle Seed ID的最后一项相同(如angrypigs和com.jamesli.angrypigs),如果是全部应用,可以使用这样的Bundle Seed ID: com.jamesli.

申请开发者证书

申请证书的流程在MAC和WIN上是不同的。我分别介绍:

MAC

在Applications->Utilities里手动打开Keychain Access。从顶部菜单栏里Keychain Access -> Certificate Assistant -> Request a Certificate from Certificate Authority. 在新弹出的窗口中填写你的信息后选择Save to disk,就会在桌面保存一个CertificateSigningRequest文件。(如下图)

WINDOWS

在Windows下申请Apple证书是一件非常痛苦的事情,下面我就详细介绍以下:

1. 首先需要在下面的链接下载OpenSSL。

http://www.slproweb.com/products/win32openssl.html

如下图,你需要下载Visual C++ 2008 Redistributables 和 Win32 OpenSSL v1.0.0d Light

2. 下载安装后,在C盘下就有一个OpenSSL-Win32的安装目录。

3. 以管理员身份打开命令行进入OpenSSL-Win32/bin文件夹,如果你不是管理员,需要先在命令行中键入下面的命令:

set RANDFILE=.rnd

键入下面的命令,生成一个private key:

openssl genrsa -out mykey.key 2048

然后键入下面的命令,申请一个CertSigningRequest文件,注意emailAddress后面是你的邮箱,CN后面是你的名字,C后面是国家

openssl req -new -key mykey.key -out CertificateSigningRequest.certSigningRequest -subj “/emailAddress=yourAddress@example.com, CN=Common Name, C=CN”

这样在OpenSSL-Win32/bin下面就生成了一个CertificateSigningRequest.certSigningRequest文件,注意任何错误提示都不要忽略,否则即使生成了文件也可能无法使用。

这个过程请不要使用Chrome浏览器

返回开发者授权系统的Certificate页面里,点击页面右方的Request Certificate申请一个证书,然后点击页面下方的按钮上传生成的certSigningRequest文件,这样就完成了证书的申请流程。申请成功后,Certificate页面里就有了一条证书,刷新几次页面后证书的状态就变成Issued,点击download按钮可以下载一个cer文件。

接下来是通过cer文件生成p12文件的过程。因为Flash发布iOS应用需要的证书文件格式是p12。这个流程在MAC和Windows上也是有区别的。

MAC

点击下载的.cer文件,文件会自动在Keychain Access里打开,可以右键点击key导出一个p12文件,如下图:

WINDOWS

Windows下生成p12仍然比较麻烦。首先使用管理员身份打开命令行进入OpenSSL-Win32/bin文件夹,如果不是管理员身份则同样需要先运行下面的命令:

set RANDFILE=.rnd

为了操作方便,将下载的cer文件拷贝到bin文件夹下,然后运行下面的命令行生成一个pem文件

openssl x509 -in developer_identity.cer -inform DER -out developer_identity.pem -outform PEM

然后运行下面的命令生成一个p12文件:

openssl pkcs12 -export -inkey mykey.key -in developer_identity.pem -out iphone_dev.p12

在输入了两次密码之后,便会在bin文件夹下有一个iphone_dev.p12的文件。

使用开发者授权

正如上面我们提到的,如果要发布一个可以在指定的设备上单独安装的IPA,则必须使用开发者授权文件.mobileprovision。这个文件可以从开发者授权系统中申请获得。

点击左侧导航的Provisioning进入授权页面,如图点击右侧的New Profile按钮创建一个新的授权文件。

在创建页面中填入名称,选择创建好的证书,以及指定设备(可以多选),提交后就可以生成一个授权帐号。并且可以下载一个mobileprovision文件到本地。

到现在,我们就具备了Flash发布iOS应用的两个重要文件,.mobileprovision和.p12,返回Flash,在发布设置的Deployment选项卡中填入这两个文件(如下图)。这样就可以在指定的设备中开发iOS项目了!

下周我会继续给大家介绍【如何为iTunes Connect准备应用】以及【如何上传应用到iTunes Connect

Flash发布iOS应用全攻略(二)——如何成为一个合法的iOS开发者

上一篇文章里,我们介绍了【如何在Flash里发布iOS应用】。但是在发布设置中需要用到几个文件使得发布流程无法继续进行。这篇文章我会具体介绍一下如何成为一个合法的iOS开发者。

iOS开发者的申请流程

如果你是一个开发团队,在你打算掏腰包购买iOS开发者授权之前,最好先问一下你的同事,是否已经有人获得了开发许可,因为一个开发许可一年内最多可以授权给111个设备来开发测试。如果你没有授权许可可以借用,或者你打算最终在iTunes Store中以自己的名义发布你的应用,那么就准备一张国际信用卡,准备支付99美元来申请一个iOS开发者授权。

点击下面链接进入Apple Developer Center

http://developer.apple.com/

点击页面左边中部的iOS Dev Center进入iOS开发中心

iOS开发者的申请流程

点击页面顶部右侧的Register按钮

iOS开发者的申请流程

然后点击Get Started按钮进入申请流程

iOS开发者的申请流程

Apple ID
在申请流程的第一步是选择Apple ID,如果你已经有一个Apple ID,曾经在Apple的应用商店中购买过应用,那么这里可以选择”Use an existing Apple ID”,否则需要点击”Create an Apple ID”来创建一个帐号。最后点击继续按钮。

Personal Profile
这里是一张表单,分为三个部分,创建Apple ID(如果之前选择的是创建),安全信息(Security Information),个人资料(Personal Information),注意所有的选项都需要填写!填写完毕之后继续到下一个页面。

Professional Profile
这一页是开发者的一些职业信息。注意在第一项中选择iOS,如果你是学生,请在第二个问题后勾选Check this box if you are currently enrolled in a college or university. 全部选择完毕后继续。

Legal Agreement
这页是一份协议,仔细阅读后勾选下面的框框然后继续。

Email Verification
到刚才注册的邮箱里等着收邮件,将一封来自Apple Developer Support的信中的验证码填入这一页里的输入框后,点击继续。

iOS开发者的申请流程

看到这个页面,你就完成了开发者的注册流程,并且会收到一封确认邮件。

可以开发并测试你的应用程序了么? 不行,因为你只是登了记,想要在你的设备上测试开发,现在还不具备这个资格。

点击刚才的注册成功页面下方的一个继续按钮,再在接下来显示的页面右方点击”Join The Developer Programs”,来到下面的这个页面。

http://developer.apple.com/programs/start/standard/

iOS开发者的申请流程

从流程图上来看,我们至少还需要三步才能申请。准备好了么?点击继续。

Apple ID
再次确认你的Apple ID,因为我们刚才已经登记成功,所以这里只看右面的Existing Apple Developer部分。这里有三个选项,如果你是第一次申请而且不是学生,选择第一项;如果你是第一次申请但你是学生,选择第二项;如果你已经申请过这个授权但是想为你的授权帐号添加一些附属的功能,选第三项。选好之后继续。

发现流程有所变化,进入了申请付费的流程

Enter Account Info
首先需要选择你的身份是个人还是公司,如果是公司申请需要提供公司合法名称,法人名称,以及一些business document。这里只对个人申请作介绍。

点击Individual后,需要用刚注册的帐号登陆一次,进入填写银行帐号的阶段。

请注意这里的两个IMPORTANT和两个EXACTLY,帐号的姓名必须与信用卡上的一模一样,账单邮寄地址也必须与你接下来要在Apple Online Store付费时使用的邮寄地址一模一样。

iOS开发者的申请流程
iOS开发者的申请流程

Select Program
接下来一页是选择申请的平台,iOS和Mac都是99美元一年,Safari的插件开发是免费的。我们选择iOS,然后继续。

Review & submit
在这一页检查你的填写信息是否正确,如果正确无误,点击继续。

Agree to License
仔细阅读开发者授权协议后,点击下面的选框然后继续。

Purchase Program
如果你在之前填表的时候选择的是China,那么这个时候你会看到一个大大的黄色惊叹号,并且告诉我们Apple Online Store在咱们国家是不好用的。没有关系,Apple也提供了另一条付费的途径,在页面左边的中部可以下载一个PDF,将你的信用卡信息填进去,然后传真到页面指定的那个电话号码之后,你就可以等着收邮件了。

Apple网站上说是需要3-5个工作日,我等了差不多两个星期吧,先是信用卡被划走了99美元,然后收到了一封收据邮件,再后来收到了一个激活帐号的确认邮件,才最终完成了开发者授权的申请,成为一个合法的iOS开发者。

请继续浏览【如何使用iOS开发者授权以及如何申请证书