iOS:真机调试

简介:

真机调试现在发生了改变,在Xcode7以前进行真机调试是需要证书的,正是由于这个原因,这个过程比较麻烦;在Xcode7以后是免证书的,使用起来就简单很多了。

 

Xcode7以前的步骤如下:

原链接地址为:http://my.oschina.net/joanfen/blog/167730

目录[-]

  一,真机调试所需要材料说明

  二,开始申请

  三,添加App ID

  四,添加设备(Devices)

  五,添加证书(Certificates)

  六,添加描述文件(Provisioning profiles)

  七,配置Xcode

  八,p12导出证书

 

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

 如果出现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证书吧,祝大家好运!

 

Xcode7(包括7)以后的步骤很简单:(没有证书这个过程)

1.连接数据线,选择信任mac访问手机;
2.将工程的target的iOS平台与手机系统版本一致,或者至少手机能支持的;
3.运行Xcode后,点击菜单中的Preferences…进入Accounts标签,这里选择添加Apple ID,即输入账户名和密码,登陆成功后,显示了iOS和Mac的Free标记了,免费;
4.运行工程,进行测试即可。
 
 

xcode 升级为7之后,真机编译过不去,模拟器能编译过,编译不过,

方法一:更新library使包含Bitcode,否则会出现以下中的警告;

1
(null): URGENT: all bitcode will be dropped because ‘/Users/myname/Library/Mobile Documents/com~apple~CloudDocs/foldername/appname/GoogleMobileAds.framework/GoogleMobileAds(GADSlot+AdEvents.o)‘ was built without bitcode. You must rebuild it with bitcode enabled (Xcode setting ENABLE_BITCODE), obtain an updated library  the vendor, or disable bitcode for this . Note: This will be an error in the future.

方法二:关闭Bitcode

工程设置中 buildingsetting 中搜索bitcode 选择no

另外 http 支持有问题,需要配置支持 http,

info 里面:

点击+号添加一个
NSAppTransportSecurity     这个是一个字典类型NSDictionary
字典下面添加:
NSAllowsArbitraryLoads这个是个bool类型   设为 Yes

 

程序猿神奇的手,每时每刻,这双手都在改变着世界的交互方式!
本文转自当天真遇到现实博客园博客,原文链接:http://www.cnblogs.com/XYQ-208910/p/5139956.html ,如需转载请自行联系原作者
相关文章
|
iOS开发 开发者
iOS无线真机调试
iOS无线真机调试
501 0
iOS无线真机调试
|
6月前
|
iOS开发 开发者
Xcode7.2真机调试iOS 9.3的设备
Xcode7.2真机调试iOS 9.3的设备
108 0
|
11月前
|
数据安全/隐私保护 iOS开发 开发者
新技术:使用免费苹果账号申请 iOS 证书进行真机调试
如果您是跨平台开发者并且还没有注册苹果开发者账号,即使使用 Xcode 进行免费测试也无法将应用安装到非越狱手机上。但幸运的是,现在有一项新技术可以使用普通的免费苹果账号申请 iOS 证书,从而打包 IPA 安装到自己的手机上进行测试。本文将介绍如何使用 Appuploader 进行五步操作,申请 iOS 证书、生成描述文件、打包 IPA 并安装
|
Web App开发 移动开发 数据安全/隐私保护
【新技术】不用开发者账号申请ios证书真机调试
【新技术】不用开发者账号申请ios证书真机调试
【新技术】不用开发者账号申请ios证书真机调试
|
数据安全/隐私保护 iOS开发 开发者
iOS开发证书申请教程(udid真机调试测试)
iOS开发证书申请教程(udid真机调试测试)
iOS开发证书申请教程(udid真机调试测试)
|
测试技术 数据安全/隐私保护 iOS开发
IOS开发之免费证书+不越狱真机调试
IOS开发之免费证书+不越狱真机调试
|
数据安全/隐私保护 Android开发 iOS开发
免费苹果账号(apple id)申请ios证书p12真机调试
免费苹果账号(apple id)申请ios证书p12真机调试
|
iOS开发 开发者
iOS上架、打包、真机调试、证书
iOS上架、打包、真机调试、证书
111 0
iOS上架、打包、真机调试、证书
|
程序员 iOS开发
iOS开发:真机调试提示XXX, but code signing identity Apple Development问题
最近从网上下载一个demo,然后想要运行真机,运行不成功,提示提示XXX is automatically signed, but code signing identity Apple Development的问题,然后通过排查报错原因找到了报错原因,那么本篇博文就来分享一下具体的解决原因。
161 0
iOS开发:真机调试提示XXX, but code signing identity Apple Development问题
|
程序员 iOS开发 开发者
iOS开发:Mac电脑Xcode里面添加导入真机调试包的步骤
在Xcode使用的过程中,有时候会因为一些系统原因或者是不想频繁升级电脑上的xcode版本而需要进行导入操作,尤其是苹果每次发布新系统之后,最让人头大的就是更新xcode来适用苹果最新的包内容,不然就会影响开发时候的测试以及上线。但是像博主这样比较懒的狗程序来说,真的不想每次苹果发布更新iOS系统之后就立马升级更新xcode,那么就用到了在现有版本的xcode里面导入最新的iOS系统真机调试包就可以了。
381 0
iOS开发:Mac电脑Xcode里面添加导入真机调试包的步骤