由于Xcode5的到来,关于iOS软件进行真机调试方面,有了一些变化,苹果在Xcode 5中修改了一些规则,一方面是阻止以往破解的方式进行调试(免证书).另一方面是添加了自动生成证书的功能特性,来加快我们开发者生成一些调试用的证书.免去我们频繁要去苹果开发者网站自己生成.
接下来就介绍一下如何在Xcode5中进行真机调试.

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

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

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

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

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

所以如果想要真机调试成功,就必须App ID,证书(Certificates),描述文件(Provisoning Profiles),设备(Devices ),及你所要调试程序的Bundle Identifier保持一致

二、进入申请界面

打开iOS Dev Center,选择Sign in,登陆(至少99美元账号),登陆之后在网页右边找到iOS Developer Program,选择Certificates,Identifiers & Profiles,选择Identifiers

三、添加App ID

选择Identifiers->App IDs,在右侧选择添加按钮添加

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

1、App ID Description:这部分只是你ID的一个代号,只需填写一个自己能分辨的名称即可,在后面申请证书和描述文件中会涉及到选择项

2、App ID Prefix:这部分是Team ID,系统默认,无需填写

3、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)

完成上面的填写之后,选择Continue

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,如图8,Identifier 后面的一串字母加数字的组合即UDID

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

下面还可以选择添加多台设备,本人表示智商不够,不会,99美元账号可以添加100台设备,299美元的账号本人不晓得。。

五、添加证书(Certificates)

1、选择添加证书,按图10操作之后选择continue

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(joanfen),也可设置成Automatic profile中的iPhone Developer,XCode将会自动匹配描述文件

3、检查Bundle ID是否与描述文件所包含的App ID中的Bundle匹配,选择TARGETS->Summary查看,由于我们申请的是通用型App ID,所以Bundle Identifier只需要是com.oschina.打头即可,后面可以随意填写

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

原文地址:http://my.oschina.net/joanfen/blog/167730

iOS真机调试 for Xcode 5的更多相关文章

  1. iOS 真机调试不能连接网络的排错过程

    开发环境: macOS 10.12.1 Xcode 8.1 Qt 5.8 gSOAP 2.8 iPhone 6S+iOS 10.1.1   问题: 使用 Qt Quick 写了一个跨平台的应用,在Wi ...

  2. iOS真机调试之我见

     入职20多天,以前一直以为iOS真机调试是多么复杂的事情,但在公司大牛的帮助下:终于理清头绪,由于公司证书已申请,文章中免不了旁征博引. 1.首先,得有苹果开发者账号,如果在公司,公司会提供:不在公 ...

  3. ios真机调试教程(不上架App Store安装到手机)

    原文 不上架App Store安装到手机调试测试,需要用到ios真机调试证书打包的ipa才能安装到非越狱的手机使用. 2017年最新整理的ios真机调试的详细图文步骤流程,轻松的把你开发的ios ap ...

  4. React-Native iOS真机调试(新版)

    2019独角兽企业重金招聘Python工程师标准>>> React-Native iOS真机调试 看到网上很多以前的文章 找到两种方法 一 修改AppDelegate 把URL的替换 ...

  5. react native iOS真机调试-联网问题与js严格模式

    rn:strict mode does not allow function declarations in a lexically nested statement https://blog.csd ...

  6. 解决低版本Xcode不支持高版本iOS真机调试的问题

    1.现象截图 Could not locate device support files. This iPhone 6s is running iOS 11.1 (15B93), which may ...

  7. IOS 真机调试

    真机调试的步骤: 1.注册成为苹果开发者(99$) 2.登陆苹果开发者主页 https://developer.apple.com/membercenter/index.action 3.点击 Cer ...

  8. IOS 真机调试以及发布应用 2

    参考网站:http://my.oschina.net/u/1245365/blog/196420 已经有开发证书的直接跳过第一步 第一步:申请“开发证书” 进入苹果开发者99美元账号: 选择:Cert ...

  9. IOS 真机调试以及发布应用 1

    参考网站:http://my.oschina.net/u/1245365/blog/196263   Certificates, Identifiers &Profiles 简介 Certif ...

随机推荐

  1. 0821Servlet基础

    什么是servlet    jsp页面的前身是servlet, 但是servlet和jsp是两个不同概念    servlet是运行在服务器端的一段程序, 是可以直接运行一段java后台代码      ...

  2. eclipse汉化 adt汉化

    韩梦飞沙  韩亚飞  313134555@qq.com  yue31313  han_meng_fei_sha

  3. 【rope】bzoj1269 [AHOI2006]文本编辑器editor

    维护一个字符串,支持以下操作:   主要就是 成段插入.成段删除.成段翻转.前两个操作很好通过rope实现.第三个操作也不难,维护两个rope,一个正向,一个反向,翻转时swap一下就行了.   ro ...

  4. I/O多路复用机制:epoll

    在过去的linux 网络编程中,采用select来做事件触发,其缺点在于每次调用select,都需要把fd集合拷贝到内核,内核必须遍历传递进来的所有fd,这在fd很多时开销会很大,相比于select, ...

  5. cocos2d-x解析xml时的Bug

    cocos2d-x中使用tinyxml解析xml配置.如下: tinyxml2::XMLDocument doc; if (tinyxml2::XML_SUCCESS != doc.LoadFile( ...

  6. [转]spring property标签中的 ref属性和ref 标签有什么不同

    spring property标签中的 ref属性和ref 标签有什么不同? 如下:<property name="a" ref="b" /> sp ...

  7. Create process in UNIX like system

    In UNIX, as we’ve seen, each process is identified by its process identifier, which is a unique inte ...

  8. 在MEF中实现延迟加载部件

    在MEF的宿主中,当我们通过Import声明导入的对象时,组装(Compose)的时候会创建该对象.例如: interface ILogger    {        void Log(string ...

  9. mysql的锁定问题

    1.锁定这个问题,是mysql自动产生的,不用程序猿自己加锁 答:默认情况下,档执行insert/update操作时,mysql会自动进行表锁定.从而此时读取操作只能等待. 2.mysql, 需要添加 ...

  10. 解决Eclipse建立Maven项目后无src/main/java资源文件夹的办法

    建立好一个Maven项目后,如果Java Resources资源文件下没有src/main/java文件夹,并且在手动创建这个文件时提示“已存在文件”.这说明,在这个项目配置中已经有了src/main ...