iOS申请证书->真机调试->提交到AppStore

1.首先说下苹果开发者账号的申请:

下面就开始注册苹果ID并且通过交纳99美元,来获取一个官方授权的证书以便于你发布你的应用程序到IPHONE.

对于中国开发人员,打开如下图链接: http://developer.apple.com/programs/register/

如果你已经拥有一个苹果ID,也可以不注册,不过,苹果建议你为开发专用的账号专门注册一个苹果ID。如图所示,点击注册。

 开发者账号注册流程 - woimoo - woimoo

我们就来到了下面这个图中所示的界面:点击 continue继续下一步。

开发者账号注册流程 - woimoo - woimoo

这里,你可以选择是使用已经有的账号,还是创建一个,我们默认大家都需要创建一个新的账号。

开发者账号注册流程 - woimoo - woimoo

来到这个注册表单,这里,我在图中做了详细的描述,这里的文字描述就省略了。

开发者账号注册流程 - woimoo - woimoo

接下来,这个表单实际上是个调查性质的。如果你选择已经有的账号,登陆后,也会要求你填写这个表单。

开发者账号注册流程 - woimoo - woimoo

接下来,同意条款。

开发者账号注册流程 - woimoo - woimoo

验证邮件

开发者账号注册流程 - woimoo - woimoo

注册ID成功

开发者账号注册流程 - woimoo - woimoo

下面,我们就开始注册开发人员项目:开发者账号注册流程 - woimoo - woimoo

首先,打开这个链接:http://developer.apple.com/iphone/program/start/enroll/

开发者账号注册流程 - woimoo - woimoo

继续下一步,这里,注意看到,这里是Enrollment而不再是注册了。另外我们这次就可以选择使用已经有的账号,因为刚才已经注册过了。

开发者账号注册流程 - woimoo - woimoo

 接下来,填写你刚刚注册的用户名密码。

开发者账号注册流程 - woimoo - woimoo

进入enroll界面:

开发者账号注册流程 - woimoo - woimoo

选好你要的计划后:告诉你要99刀。

开发者账号注册流程 - woimoo - woimoo

然后信用卡的名字,以及你的账单地址

开发者账号注册流程 - woimoo - woimoo

总结一下你刚才填写的信息。

开发者账号注册流程 - woimoo - woimoo

开发者账号注册流程 - woimoo - woimoo

最后,同意协议。

如果你填写的是中国地址,他会给你一个PDF文件,让你填写,并且签字后,传真到美国的一个号码。

如果你填写的是一个美国地址或者英国地址,则会给你发送一封邮件确认后,再继续。


2.公司与个人账号的区别:

99美金个人用户

99美金团队:

审核多了企业资质认证,可以多开发者共享.(如何共享?)这个测试的时候如果有多个人的话,可以拆分多个子账户出来测试,对于测试方便点。也就是说一个AppleID对应于多个Devices ID。

 

299美金企业用户:
面向拥有500雇员以上的公司,开发专用的企业内部使用的app。 这个账号 需要邓氏码,小企业一般申请不下来,但只要有那个码就好办了 (500或者500以上的公司用于内部分发)。
为企业客户发布应用,例如为某集团发布办公客户端

区别:

个人和公司的区别:个人的账号只能显示个人的Full Name,公司则可以显示类似Studios,或者自定义的团队名称  。

 

      

公司帐号比个人多一些帐号管理的设置:个人帐号集Agent,Admin,Developer等为一身,而公司帐号可以设置不同的AppleID来担当。  

 

 

 99美元的是供个人开发使用,
99的为公司使用,可以自己定义一定数量的开发者子账号,不过只能有主账号来提交,发布等操作。
299的是供企业内部账号使用,外面用户不能使用itunes访问到。而且绑定认证次数无限  

 

注意一点,公司和个人帐号都是99$一年;而299$那个是大企业专用,无法提交App到App Store,只能公司内部自用,比如基于iOS的OA系统

3.安装开发者证书:

这个是证书,我们先从这里一次开始向下 一步一步的配置。



点这里,会下载一个.cer的证书文件下来。。。



然后双击这个下载下来的证书,安装到登录钥匙串。。。



看到没有? 这个就是安装好后的证书。这个证书就不用管了。。。接着来



点击 钥匙串 - 》证书助理 - 从证书机构请求证书,然后下一步 下一步。。。 最后在桌面生成一个证书。

吧证书提交到网站上就可以了。



开始添加ios设备,这个很简单。。



左边随便写个名字,右边在xcode中得到序列号:


这个是创建apple id,也很简单。名字随便写。下面的按照格式写公司标示符。



我们现在做最后一步的配置,手机证书的配置:


名字随意取。然后是第一步配置的证书,然后是apple id 然后是绑定的设备。。。



我们吧这个证书下载下来。。。



看到没 这些就是我们安装在手机上的证书,如果没有第一个是不能调试的!第一个需要你吧手机设置为开发机才会自动创建。。。


点第一个按钮 就可以给手机添加为开发机。。。



这个是在info.plist里需要设置的公司标示符。和你appleid的必须一样。。。



这是最后一步。。。 设置证书,这样就可以真机调试了。


前提:已经成功申请了iOS开发者账号

环境:xcode 4.6.1 ; iOS 6.1.2


1、授权设备:

进入Apple Developer会员中心,点击图中的iOS Provisioning Portal,进入开发者授权设置系统:


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


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


添加设备的时候可以指定设备的名字(随便写),以及设备的UDID。每一个Apple的设备都有一个唯一的标识符,获得这个标识符的方法很简单,有两种方式:

(1)将你的设备连接到电脑,然后在iTunes里找到你的设备信息(如下图),点击图中红色方框的位置,设备UDID就会显示出来。右击UDID会提示拷贝,将拷贝的结果复制到框内即可;

(2)打开xcode,window→organizer→devices,在里面可以看到identifier信息




2、添加App ID:

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



3、添加证书:

(1)首先在mac电脑上生成开发者证书:

在Applications->Utilities里手动打开Keychain Access。按照下图操作最终点击“从证书颁发机构请求证书”


正确填写自己的邮箱和姓名即可,选择“存储到磁盘”,点击继续。最终会生成一个名为“CertificateSigningRequest.certSigningRequest”的文件。


这时候返回刚才的iOS Provisioning Portal网页界面,点击左侧的“Certificate”,点击页面右方的Request Certificate申请一个证书,然后点击页面下方的按钮上传生成的certSigningRequest文件,这样就完成了证书的申请流程。申请成功后,Certificate页面里就有了一条证书,刷新几次页面后证书的状态就变成Issued,点击download按钮可以下载一个cer文件。



4、使用开发者授权:

1)回到iOS Provisioning Portal网页界面,点击左侧的“provisioning”,点击右侧的New Profile按钮创建一个新的授权文件:

填写profile Name;在Certificates中选择刚刚创建好的证书(一劳永逸的一步,之后只需勾选该证书即可,不必再手动添加);APP ID选择刚刚建的那个;Devices 选择刚刚添加的设备;Submit(绑定设备到应用程序);刷新页面,会看到刚刚建的那个后边有个Download,点击Download,下载了一个.mobileprovision文件。

(2)打开xcode→window→organizer,将下载的.mobileprovision文件拖到Provisioning中(此步骤绑定设备到应用程序,并生成证书)

(3)项目中的plist 文件,将Bundle Identifier 这一项的内容改成Bundle Seed ID(格式:com.[开发商].[应用])即可

将run按钮右边的设备选为对应的真机设备,接下来就编译运行看看吧!



4.提交到AppStore:

上传程序到AppStore上,遇到了很多问题,下面把在网上找的一些资料和处理问题的方法摘抄在一起.

1.首先要在itunesconnect.apple.com上面新建一个应用,并把描述什么的都写上,具体见网址http://www.cocoachina.com/bbs/read.php?tid-7923.html

2.之后要用Application Loader 上传你的程序, Application Loader,在 /Developer/Applications/Utilities 里就有。上面会显示你“Waiting For Upload”状态的程序,选择一个,并上传你压缩好的zip文件。上传成功之后itunesconnect.apple.com上面就变成了“Waiting For Review”状态。

遇到的问题如下:

1.当上传一半因为网络原因或者自己取消,重新上传时会提示“an existing transporter instance is currently uploading this package”。解决分为两种情况:

    (1).如果是没传完的应用处于“waiting for review”状态,reject 后重新上传即可。有些同学可能找不到在哪reject。点击“view details”按钮,

Links

    (2).如果此时应用处于“waiting for upload”状态,删除 ~/.itmstransporter/UploadTokens/ 目录内所有文件,即可重新上传。

2.上传zip文件时,提示:iPhone/iPod Touch: application executable is missing a required architecture. At least one of the following architecture(s) must be present: armv6处理办法,转载其他同学的解决办法。

截图如下:


\

产生这个错误,很是疑惑,尝试了几个办法,都失败了,无奈之下,只好求助伟大的stackoverflow。解决办法翻译如下:


如果你的xcode是4.2以上的版本的话,请尝试一下的解决办法:

1.点击你的项目名称(在左侧栏),之后点击Target:

 \

 

2.点击'Build Settings' (在右侧栏):

 \

 

3.打开‘Architectures’标签,点击名称为 'Release' 或者 'Distribution' 的行,选择'Other...':

 \

 

4.双击名称为'$(ARCHS_STANDARD_32_BIT)'的行,使之成为可编辑状态,删除文字,输入armv6。再点击左下角的“+”号,在出现的栏中输入armv7。最后点击“done”按钮。

 \

 

以上就是解决方法了,下面你再尝试“build/archive”就可能不会出现上述的错误信息了。

 


如果问题依旧,请尝试该链接this answer from justinxreese,就是在你的info.plist文件中的"Required Device Capabilities"加入全部的 armv6 和 armv7的信息。



stackoverflow的链接地址如下:http://stackoverflow.com/questions/4198676/warning-iphone-apps-should-include-an-armv6-architecture-even-with-build-config


3.还遇到UIBackgroundModes错误,解决办法找到工程中的App-info.plist,前缀不一定是这个,把Required background modes项的值填上,具体选项的解释引用其他同学的解释,其实不用在程序里面加,直接更改plist就可以了。

iOS从4.0之后支持后台播放声音了。下面是实现声音文件播放,并且用户关闭屏幕之后仍然能够播放声音文件。具体的实现方法如下:

在plist文件中加入下面的字段:

image

声明内容如下:

Info.plist中添加UIBackgroundModes键值,它包含一个或多个string的值,包括

audio:在后台提供声音播放功能,包括音频流和播放视频时的声音

location:在后台可以保持用户的位置信息

voip:在后台使用VOIP功能

 

在程序中添加:

AVAudioSession *session = [AVAudioSession sharedInstance];  
    [session setActive:YES error:nil];  
    [session setCategory:AVAudioSessionCategoryPlayback error:nil]; 

声明声音在后台运行。最后运行程序,关闭程序,声音则在后台成功播放。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值