摘要 申请真机调试证书全过程,最新更新:2014-05-19 2014-10-16记:由于现在 itunes 更新变化较大,本文可能不能很好地解决您的问题,而我现在不负责公司的发布调试问题,暂未及时更新,请大家谅解,找到更好的资料我会与大家分享,谢谢!

转载请注明出处,原文地址 http://my.oschina.net/joanfen/blog/167730

如果本文不能解决您的问题请移步:http://my.oschina.net/u/1245365/blog/196420

关于证书选项呈灰色的情况,因为苹果的开发者中心改版,很多人遇到这个问题,本来放在文中的,现在提到前面来

如果出现ios development一项为灰色不可点击状态,苹果的说法是

如果您要为此电脑添加证书,请revoke以前的证书后添加,或者通过以前的mac导出证书

原文不记得了,大概这个意思,苹果不希望你的开发者账号里出现多台Mac的证书,如果在其他mac上已经添加过证书的话,就直接通过P12导出(导出方法见下文)后给当前的Mac使用即可,或者删除之前的证书后再添加

一、真机调试所需材料说明

在申请真机调试证书之前,先对苹果真机调试所需的文件进行说明:

苹果真机调试需要证书(Certificates)和描述文件(Provisoning Profiles)

1、证书(Certificates) 通过苹果自带的钥匙串生成后上传到Developer中再生成来完成

2、描述文件(Provisoning Profiles) 生成描述文件时需要选择App ID(包含Bundle,必须与你程序的bundle保持一致,为了能同时调试多个程序,一般bundle填写时末尾用*号代替,后文会具体说明)选择证书(Certificates)及设备(Devices)三样东西

真机测试必要条件:App ID,证书,描述文件,设备,及调试程序的Bundle Identifier保持一致

二、开始申请

打开iOS Dev Center,选择Sign in,登陆(至少99美元账号),登陆选择Certificates,Identifiers & Profiles --> Identifiers

三、添加App ID

选择Identifiers->App IDs,开始添加

App ID由用.符号分开的两部分组成,在默认情况下,App ID的前缀为你的团队ID,后缀被定义为一个bundle ID的搜索字符串,AppID的每一个部分对你的应用程序都有不同而且很重要的用途

  • App ID Description:这部分只是你ID的一个代号,只需填写一个自己能分辨的名称即可,在后面申请证书和描述文件中会涉及到选择项
  • App ID Prefix:这部分是Team ID,系统默认,无需填写
  • App ID Suffix:这部分是App ID后缀,可选择Explicit App ID或者Wildcard App ID

3.1、Explicit App ID

Explicit App ID:如果你打算将应用程序中加入Game Center,或在应用中使用应用内购买,进行数据保护,使用iCloud,或者想要给你的应用程序一个唯一的配置文件,你就必须申请Explicit App ID。

要创建Explicit App ID,在下面的框中输入一个唯一的字符串,这个字符串必须与你的应用程序的Bundle ID匹配,苹果推荐使用   com.你的公司名称.app名称   作为你的Bundle ID,如果是选择Explicit App ID,Bundle ID中     不能含有*号

3.2、Wildcard App ID:通用App ID,只需使用com.oschina.*的格式即可匹配多个应用,本文以通用型为例

Wildcard App ID:可以让你用一个App ID来匹配多个App,想要创建一个通用App ID,在输入Bundle ID末尾使用*号

4、App Services:应用程序提供的服务

App Services:选择你应用中将会使用的服务,在App ID注册成功之后也可再次编辑你的选择

在自己应用中所使用到的选项上打√,因为我选择的是通用型(WildCard),所以Game Center,In-App Purchase, Push Notifications都是不可选的,如果要使用这些功能,请选择精确型(Explicit)

5、确认信息,确认之后选择Submit,出现Registration complete.的字样,Done。

四、添加设备(Devices)

1、将设备连上电脑,打开在XCode的Organizer->Devices中

Xcode5以下的Organizer在软件右上角即可找到,XCode5的Organizer选择Window->Organizer(快捷键shift+command+2)
    设备连接上XCode之后Devices中的信号灯有灰色,黄色,绿色三种情况

1.1、灰色灯

如果设备是之前未作为开发机,在Devices中设备上的灯应该为灰色,在右侧有选项将设备作为开发机,点击即可,由于没有新机,无法截图演示

1.2、黄灯,有两种情况

  • 设备未连接好,请将连接线重新插一次,并检查接口是否插紧,如果还是黄灯,则未下一种情况
  • 设备版本高于XCode所能支持的版本,如XCode4.6.3,能支持的最高版本未iOS6.1,如果你的设备未iOS7及以上,此时需要更新至XCode5

1.3、绿灯:说明连接成功,可进行调试

2、UDID,通过itunes和Xcode都可以看到设备的UDID

  • 在itunes中,连上设备之后,有一项“ECID”,单击,即可以查看到UDID。
  • 在Xcode的organizer中选中设备“Identifier”一栏即为UDID。

3、回到苹果开发者中心,选择Devices 右侧栏的添加按钮,方法与添加App ID相同

下面还可以选择添加多台设备,本人表示智商不够,不会,99美元账号可以添加100台设备,299美元的账号本人不晓得。。
     Tips:设备添加后当年不可删除,如果要删除必须要在次年续费时进行删除。

五、添加证书(Certificates)

1、选择Certificates->development,添加证书

2. 申请证书

2.1. 打开电脑中的钥匙串:选择LaunchPad->其他->钥匙串访问
    2.2. 选择钥匙串访问->证书助理->从证书颁发机构请求证书           
    2.3. 填写邮件地址和名称,点击继续存储,一般存储在桌面(根据个人喜好)        
    2.4. 回到developer的界面,选择Continue,出现上传证书界面
    2.5. 选择Choose File上传刚才存储的证书,然后选择Generate.
    2.6. 生成之后会出现可以Download的证书,选择下载双击安装即可

六、添加描述文件(Provisioning Profiles)

  1. 选择Provisioning Profiles->Development,然后选择右侧添加键添加
  2. Select Type -> 选择iOS App Development -> 选择Continue
  3. 选择App ID,选择之前添加的com.oschina.*,选择Continue
  4. 选择证书,选择刚才生成的开发证书,然后选择Continue
  5. 选择设备,会出现设备列表,一般来说把所有设备都添加进去,方便多台设备调试,不用再申请profile,选择Continue
  6. 为这个profile命名,不可含有标点,选择Generate
  7. 选择下载,双击安装即可

七、配置XCode

  1. 打开XCode,插上设备,如果XCode不显示设备,而是iOS Device的状态,则检查Targets->iOS Application Target->Deployment Target中的版本是否与设备版本不匹配
  2. 选择上图中Build Settings,将Code Signing中的profile设置成刚才下载的Provisoning Profile,也可设置成Automatic profile中的iPhone Developer,XCode将会自动匹配描述文件
  3. 检查Bundle ID是否与描述文件所包含的App ID中的Bundle匹配,选择TARGETS->Summary查看,由于我们申请的是通用型App ID,所以Bundle Identifier只需要是com.oschina.打头即可,后面可以随意填写

选择真机设备,运行,大功告成。

八、P12导出证书

在钥匙串中找到登录选项中得iPhone Developer一项,右键选择导出,证书类型选择“个人信息交换(.p12),并将创建的provision profile文件和证书一起拷贝到别的mac上双击安装就可使用了

PS:如果设备为越狱设备,不管provision profile里有没有包含你得设备,都是可以真机调试的,如果不想花费99美元的话,可以在淘宝上买一个证书,或者是找亲朋好友索要他们的P12证书吧,祝大家好运!

【转】iOS Developer:真机测试的更多相关文章

  1. Cocos2d-x 关于在iOS平台真机测试的一些注意

    下面简单记录一下在最近cocos2d-x项目在iOS平台真机测试和模拟器测试中遇到的一些要注意的地方(使用ipod): 1.图片大小 游戏中基本上都是会用到图片,那么在使用图片的时候要特别注意图片的s ...

  2. ios app真机测试到上架App Store详细教程-必看

    详细操作地址 http://www.applicationloader.net/blog/zh/88.html 苹果iOS APP真机调试测试和上架App Store视频教程 优酷 http://v. ...

  3. MAC电脑下Appium + python3 + robotframework ios的真机测试环境搭建

    本人的环境搭建前的准备,MAC电脑一台(macOS Mojave 10.14.0及以上),Xcode 10.0及以上   ,自己注册的一个Apple ID 账户,必须你的电脑能连接互联网,最好不要用公 ...

  4. ionic ios 打包 真机测试常见问题

    1.ionic 项目在windows下正常打包安卓包时  迁移到mac下打包ios时  不需要复制平台目录platforms即可  不用再mac下去安装各种插件信息 2.ionic 下不能访问api信 ...

  5. iOS: 删除真机测试的Provisioning Profile后,在Code Singing中出现entitlements.plist文件无效,解决办法如下:

    问题主题:method to The entitlements specified in your application’s Code Signing Entitlements file do no ...

  6. iOS Sprite Kit教程之真机测试以及场景的添加与展示

    iOS Sprite Kit教程之真机测试以及场景的添加与展示 IOS实现真机测试 在进行真机测试之前,首先需要确保设备已经连在了Mac(或者Mac虚拟机)上,在第1.9.1小节开始,设备就一直连接在 ...

  7. ios真机测试问题

    前端页面在ios端真机测试出现的问题 由于苹果对于性能的要求是近乎苛刻,如果没有可点的特性的元素系统默认不会给它响应事件,因此真机测试时容易添加不上绑定事件 解决办法: 1.通过js判断当前是否为苹果 ...

  8. iOS、真机调试

    Xcode中IOS.真机测试 一.购买开发者账号(需要有信用卡.每年支付$99.0) 二.直接淘宝购买一个.用于测试,但是不能上传App 1.获取手机的UUID(Identifier xxxxxx9e ...

  9. iOS Developer:真机测试

    如果出现ios development一项为灰色不可点击状态,苹果的说法是 如果您要为此电脑添加证书,请revoke以前的证书后添加,或者通过以前的mac导出证书 原文不记得了,大概这个意思,苹果不希 ...

随机推荐

  1. cf C Milking cows

    题意:输入n,然后输入n个数,在n个数中0或1,0代表这头牛向左看,1代表这头牛向右看,问最后最少损失多少牛奶. 思路:贪心,连着的0可以不损失,一旦插入1就会损失牛奶. #include <c ...

  2. BZOJ 1059 [ZJOI2007]矩阵游戏

    1059: [ZJOI2007]矩阵游戏 Time Limit: 10 Sec  Memory Limit: 162 MBSubmit: 2707  Solved: 1322[Submit][Stat ...

  3. GitHub的5人骨干小组:早期初创公司该如何招到正确的人

    转自:http://news.cnblogs.com/n/190924/ 前 5 年对初创公司来说至关重要,根据美国中小企业发展署的数据,大约 1/4 的初创公司在第一年内关门大吉,只有不到一半的企业 ...

  4. Construct Binary Tree from Preorder and Inorder Traversal——LeetCode

    Given preorder and inorder traversal of a tree, construct the binary tree. 题目大意:给定一个二叉树的前序和中序序列,构建出这 ...

  5. ACM编程网站

    ACM:ACM国际大学生程序设计竞赛(英文全称:ACM International Collegiate ProgrammingContest(ACM-ICPC或ICPC)是由美国计算机协会(ACM) ...

  6. Teacher YYF - POJ 3746(打表........)

    1.名词和介词可以被用作主语或宾语 名词->n  介词->pron 2.当使用名词时,必须有冠词在它前面 n+art(冠词) 3.名词可以被一个形容词修饰,动词可以被一个副词修饰 adj+ ...

  7. How many - HDU 2609 (trie+最小表示)

    题目大意:有 N 个手链,每个手链的最大长度不超过100,求出来最多有多少个不同的手链.   分析:因为手链是可以转动的,所以只要两个手链通过转动达到相同,那么也被认为是一种手链,然而如果每次都循环比 ...

  8. G - Supermarket poj1456

    题目的描述很长,其实描述的问题很简单,说有n的商品,它们每个的价值是pi,但是呢,再过di天这些商品就不能卖了(有可能过期了...),现在给出来每个商品的价值和可以卖的最后期限,问可以得到最多多少资金 ...

  9. iPhone应用中如何避免内存泄露?

    如何有效控制iPhone内存管理的对象的所有权与引用计数和以及iPhone内存的自动释放与便捷方法.本文将介绍在iPhone应用中如何避免内存泄露.想了解“在iPhone应用中如何避免内存泄露”就必须 ...

  10. Android 开源项目android-open-project解析之(三) ScrollView,TimeView,TipView,FlipView

    九.ScrollView Discrollview 支持滚动时Item淡入淡出,平移,缩放效果的ScrollView 项目地址:https://github.com/flavienlaurent/di ...