ios申请真机调试( xcode 5)详细解析

摘要 我们做ios项目时,模拟器只能满足我们一部分的需要,而我们开发的app将来是运行在真机上的,所以用真机调试非常有必要。下面介绍怎么申请用真机进行调试。

 

已经有开发证书的直接跳过第一步

第一步:申请“开发证书”

 

进入苹果开发者99美元账号:

选择:Certificates, Identifiers & Profiles

关于 Certificates,Identifiers,Profiles 的介绍请看 ”Certificates, Identifiers ,Profiles

选择:Certificates

选择:Development,点击”+“

可以创建一个证书,详细步骤请参照 申请证书“,在这里就不在重复了

一般说我们开发ios应用,必须有两个证书,”开发证书“、”发布证书“,在电脑上生成了一次这两个证书以后,不需要每一次都添加证书,所以添加证书的步骤在这里不在重新叙述。

如果你在开发者网站已经申请不了证书了,可以选择导出p12文件,请参照“导出P12”文件

 

第二步:添加App IDs

选择 “Identifiers”的 “App IDs”,点击“+”

 

出现以下界面:

  • App ID Description 是一个App ID的描述,就是一个名字,这个名字可以随便取

  • App ID Prefix 苹果已经帮我们填了,不需要我们填,可以看出,它是一个团队的ID

 

下一步,选择        App ID Suffix

App ID Suffix 有两个选项:

 

  • Explicit App ID :顾名思义,这里要填一个明确的 App ID,

    什么意思呢?可以这么来解释:我们做项目时的Bundle Identifier (Bundle ID)是用来标示我们的app的。我们的App ID也是用来标示我们的app的。这两个有什么联系呢?Explicit App ID 就是要我们确定一个唯一的 Bundle ID,用来标示我们的 app,使它有一个固定的身份。可以发现,当提交应用到苹果时,如果我们一开始没写 Explicit App ID,苹果会自动帮我们生成一个与我们发布时填的一样的 Bundle ID 到我们的 App ID中。

       填写  Explicit App ID 的格式为:com.company.appName

 

 

 

  • Wildcard App ID:顾名思义,这里要填一个通配符的 App ID 。意思就是,我们只需要填一个在所有应用都能试用的 App ID 就好了。

      填写  Wildcard App ID 的格式为:com.company.* 

 

注意: Upgrading from a wildcard app ID to an explicit app ID to allow push notifications

You cannot change the app ID of an app once it's in the store. Once you have uploaded an app with a wildcard ID, you are out of luck. You will have to submit it as a new app, with a new app id, and somehow get your users to download the new app instead.

The other poster was having a problem because he was using the placeholder app id, com.MyCompany.MyAppName. That's like trying to get a unique listing in a major US city's phone book for "John Smith." I'm sure lots of developers have tried to use that exact bundle name.

You need to change your bundle name to a REAL bundle name. If your company is Foo corp, and your app is Bar, use the bundle ID

"com.foo.bar"

You should choose a wildcard App ID if you do not plan to use push notifications and/or in App purchase. In your case, since you plan to start with a free version, then to provide a priced new version you should choose an explicit App ID reflecting the name of your application, and use in App purchase to allow people to buy the contents related to your priced version. This is what Apple is now recommending. Basically, the folks at Apple do not want us to develop a light and a priced version. They want a single App that can offer free contents and priced contents through in App purchase.

app一旦出现在了app store中,你就无法再修改其app id了。所以一旦你上传了一个wildcard类型的id,那就糟糕了。你只能用新的app id来提交一个新的app然后用其他方法让用户来下载新的app而不是旧的。

如果你不想使用push notification并且/或者在app pruchase中使用,你就可以选择一个wildcard app id。如果你想首先发布一个free版本,然后提供一个收费的新版本的话,你就应该使用explicit app id来创建。然后使用app pruchase来允许用户购买你收费的版本。这个事apple推荐使用的方式。

申请真机调试的时候,不是为了某一个应用去调试,而是为了所有的应用去调试,必须能适应每一个app,所以我们选择 Wildcard App ID。

com.company.* 的company 一般写公司的名字,也可以按需要写

 

可以发现,选择 Explicit App ID 会比 Wildcard App ID 多几个服务选项可以选,不过我们是真机调试,所以无所谓,将能选的勾上,选择“Continue”就好。

 

 

看到如下界面,点击“Submit”后就可以生成App ID了

 

第三步:申请设备

如图,点击“+”,一个99美元账号只能申请100个设备。

 

Name 自己取一个设备的名字,UDID约等于设备的身份证,可以在xcode中查看

查看UDID

打开xcode,选择“Windows” 的“organizer”:

选择设备看到 “identifier”,这个就是我们设备的 UDID,将其复制,可以填入上上图显示的 UDID中。

当你的机子第一次用于开发时,可以看到,显示的灯是“灰色”的,可以点击“use for developer” 来作为开发机。点击了“use for developer”后,可以发现你的灯变成了黄色的了。

如果一个手机本来就是开发机(一个手机可以安装多个开发用的描述文件)或者越狱的手机,那么它刚插进去就是绿灯。但是绿灯并不代表就能用,必须安装相适应的描述文件。如图就是一个没有安装相应描述文件的开发机。

填好 name 和 UDID后,点击continue 就可以看到如下界面,点击“Register”就可以在苹果上登记了。

 

第四步:申请描述文件

如图点击   “+”

 

 

选择    “iOS App Developer”,然后“Continue”

 

这里选择我们刚刚生成的 App ID,选好后,点击“Continue”

 

这里选择一个开发证书,有两点要注意:

  • 这个证书是我们刚刚自己在本机(当前电脑)与苹果开发者网站生成的 开发证书 “Development certificate”

  • 如果不是刚生成的,这个证书必须在本地的mac的钥匙串中存在(带密钥的证书,不带密钥的依然无效)

如果不想自己在重新生成证书,用别人生成的证书,可以从别人的电脑中导出p12文件,可以参考如何导出p12文件

选好证书以后,点击“Continue”

 

选择设备,设备可以选择全部设备,也可以按需选择你需要的设备:

这里给我们的描述文件取一个名字,这个名字在以后的xcode中是看得到的,所以可以取一个好辨认的名字。取好名字后,选择“Generate”生成描述文件。

 

生成好描述文件后,选择“Download”,双击进行安装(安装后在xcode中可以查看)

  • 安装成功后,以前没作为开发机的手机会变成绿色的(以前就是开发机和越狱的手机一直是绿色的,但是不重新申请符合证书的真机调试任然是不能真机调试的)

  • 点击“Provisioning Profiles” 看到 “Valid profile” 就是成功安装的意思。

如果没有安装成功,一般是证书或者描述文件的问题,看看证书是不是从自己的机子上生成的,描述文件的配置信息(是否和你的本机存在的带秘钥的证书相匹配,你添加的设备是否包含你现在选择调试的设备)等,如图第一个警告是因为没有证书与描述文件相匹配出现的

配置好后,还不是绿灯,则考虑问题:

  •    设备版本高于XCode所能支持的版本,如XCode4.6.3,能支持的最高版本未iOS6.1,如果你的设备系统大于等于iOS7以上,此时需要   更新至XCode5;  再如:XCode5 不支持ios7.1,如果想开发ios7.1,必须将xcode5 升级到 xcode5.1以上版本; 

例如:

 

   

 

在真机调试时,不要忘记设置这两个,否则调试失败:

这个必须填:之前写Wildcard App ID 的内容. app的名字

设置好这两个之后再点击运行。

posted @ 2014-10-29 17:18  如来藏  阅读(336)  评论(0编辑  收藏  举报