准备

开发者账号

自从Xcode7 出来之后,一般的真机测试不需要开发者账号,也就不需要看这篇教程,只有app具有“推送”等功能的时候,要真机测试就必须要开发者账号和设置证书。苹果只是让你体验一下它的基本功能,要深入还是要花钱的。

待测试的项目

真机测试步骤

一、创建App ID

二、创建证书请求文件 (CSR文件)

三、根据CSR创建开发者证书(CER)(开发、测试用的Develope证书)

四、添加设备(Devices)

五、根据Devices创建Provisioning Profiles配置文件 (PP文件)

六、设置Xcode 然后真机调试

重点

使用P12 文件 使多台Mac进行真机调试(或者发布) 【重点】

一、创建App ID

1.打开苹果开发者官网,点击“Account”登录会员中心。

2.填写信息创建app ID

点击+创建ID

第一个选项:明确的app id 与项目中的Bundle Identifier相对应

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

第二个选项:通用app id可以在所有不需要明确id的app中使用

淘宝上卖的真机调试证书就是这个

二、创建证书请求文件(CSR文件)

创建CSR文件请看《iOS-最全的App上架教程》的第二点这里就不多说了。

三、根据CSR创建开发者证书(CER)

1. 找到Certificates ,点击All,然后点击右上角 + 号

2. 点击Developement中的iOS App Developement选项

3. 点击Continue

4. 点击Continue

5. 点击choose File.. 选择创建好的证书请求文件:CertificateSigningRequest.certSigningRequest 文件,点击Generate

6. 点击Download下载创建好的发布证书(cer后缀的文件),然后点击Done,你创建的发布证书就会存储在帐号中

7. 双击安装。如果安装不上,可以直接将证书文件拖拽到钥匙串访问的列表中

四、添加设备

1、点击+添加设备到开发者账号中,为制作PP文件做准备

Name:设备的描述 可以随便填 方便你记忆

UDID:设备的标号

2、获取UUID(这里随便提供一种方法获取UUID)

将iPhone手机插入到电脑上 ,打开iTunes,然后按如图操作

3、填入UUID就OK了

五、根据Devices创建Provisioning Profiles配置文件 (PP文件)

1、找到Provisioning Profiles ,点击All,然后点击右上角 + 号

2、选择iOS App Developement,点击Continue

3、在App ID 这个选项栏里面找到你刚刚创建的:App IDs(Bundle ID) 类型的套装,点击Continue

4、选择你刚创建的发布证书(或者生成p12文件的那个发布证书),点击Continue

5、选择设备

注意:wildCard格式的证书没有推送,PassCard等服务的应用,慎重选择。因为PP证书的开发者证书需要真机调试,所以我们需要绑定真机,这里因为之前添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的udid复制出来在此添加。在发布的PP文件中,是没有这一步的。

6、在Profile Name栏里输入一个名字(这个是PP文件的名字,可随便输入,在这里我用工程名字,便于分别),然后点击Generate

7、然后点击下载 ,将其下载下来

双击就添加到Xcode中,这样在真机调试或者发布时,就可以分别有不同的PP证书与其对应。其实可以不用下载保存

六、设置Xcode 真机调试

1、设置Bundle ID 和 申请的appid 一致

2、设置Debug的CER证书

3、配置证书描述文件(PP文件)

4、选择真机 进行真机调试

使用P12 文件 使多台Mac进行真机调试 (或者发布)【重点】

1、为什么要使用P12文件

当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中应该只有一个开发证书,一个发布证书,没必要生成那么多的证书,证书一般在过期之后才会重新添加。)

这时候,再点击“+”时,就会发现点击不了开发和发布证书,也就是添加不了开发证书和发布证书了:

2、P12文件能解决什么问题

为了不能添加证书的问题我们有2个解决方案

  • 第一种方法——“revoke”(不推荐):

将以前的证书“revoke”掉,

然后重新生成一个新的证书。

这种方法是可以的,但是会造成相应的ProvisioningProfiles(PP文件)失效,这是小问题。但是又要重新申请证书甚至描述文件很浪费时间,所以不提倡这种做法。

  • 第二种方法——“.p12”(推荐):

我们的每一个证书都可以生成一个.p12文件,这个文件是一个加密的文件,只要知道其密码,就可以供给所有的mac设备使用,使设备不需要在苹果开发者网站重新申请开发和发布证书,就能使用。

3、P12文件是如何使用的

注意:一般.p12文件是给与别人使用的,本机必须已经有一个带秘钥的证书才可以生成.p12文件

导出一个带有私钥的证书(这里我选择调试证书 也就是调试的CER证书 ,其实也可以是 发布证书,只不过那就不用于调试 而是用于上架了)。然后点击导出

填好名字和储存位置,点击储存

填写该P12文件证书的密码,点“好”

然后生成P12文件

其实P12文件不仅是真机测试的时候用,上架的时候也会用,P12文件的使用方法,调试和上架是一样的。最简单的理解就是:把P12文件当做CER文件使用,调试就当调试CER,上架就当发布CER使用。

使用

  • 调试:就是把该教程的第三步创建调试证书省略,将其换成P12文件即可

  • 上架:把《iOS-最全的App上架教程》的第三步穿件发布证书省略,将其换成P12文件即可。

iOS—最全的真机测试教程的更多相关文章

  1. iOS- 最全的真机测试教程

      想要上架的同学请看:<iOS-最全的App上架教程> 因为最近更新了Xcode 8 ,证书的创建都大同小异,只是在Xcode 8中的设置有一些变化,我就在下面补充,如有什么疑问,请联系 ...

  2. Unity导出iOS真机测试教程

    原地址:http://unity3d.9tech.cn/news/2014/0410/40177.html 学 习了两天的Android开发,我感觉Android开发跟IOS开发和.NET平台下的开发 ...

  3. 【转】让Xcode支持iOS12.0 设备真机测试(不断更新真机支持包)Xcode 真机测试 iOS

    最新支持12.0 (16A366)! 所有真机包都是同一大版本号向下兼容.例如12.0 Beta6的真机包,是可以兼容12.0 Beta2及Beta1的. 12.0 (16A366)正式版可用!所有低 ...

  4. 让Xcode8.0支持iOS11.2设备真机测试

    最新支持11.2 (15C5097c)! 11.1 全版本! Xcode只可以支持iPhone手机对应iOS系统以下的真机测试.一般想要支持最新的iPhone手机系统,有两个方法. 第一.就需要更新X ...

  5. 让Xcode支持高版本系统设备真机测试

    最新支持11.2 (15C107) Xcode只可以支持iPhone手机对应iOS系统以下的真机测试.一般想要支持最新的iPhone手机系统,有两个方法. 第一.就需要更新Xcode,这一个方法有一个 ...

  6. iOS 11开发教程(十)iOS11无线连接手机真机测试

    iOS 11开发教程(十)iOS11无线连接手机真机测试 在Xcode 9.0中,已经可以通过无线连接手机进行真机测试了.具体的操作步骤如下: (1)首先需要使用数据线将手机连接到苹果电脑上. (2) ...

  7. iOS 11开发教程(九)iOS11数据线连接真机测试

    iOS 11开发教程(九)iOS11数据线连接真机测试 在Xcode 7.0之后,苹果公司在开发许可权限上做了很多的改变,在测试App方面取消了一些限制.在Xcode7.0之前的版本,苹果公司只向注册 ...

  8. iOS 9应用开发教程之定制应用程序图标以及真机测试

    iOS 9应用开发教程之定制应用程序图标以及真机测试 定制ios9应用程序图标 在图1.12中可以看到应用程序的图标是网状白色图像,它是iOS模拟器上的应用程序默认的图标.这个图标是可以进行改变的.以 ...

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

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

随机推荐

  1. ios学习笔记(一)Windows7上使用VMWare搭建iPhone开发环境(转)

    原文地址:http://blog.csdn.net/shangyuan21/article/details/18153605 我们都知道开发iPhone等ios平台的移动应用时需要使用Mac本,但是M ...

  2. Calibrating delay loop... 问题以及解决方法(RealARM开发板)

    RealARM的210开发板在启动是有时会出现这样的死循环 Calibrating delay loop... ,那么原因是什么呢? 经过查找,发现跟RTC有关,实际上就是晶振和RTC电源的问题.所以 ...

  3. oracle 序列 ,check约束

    ====================序列 //查询当前用户序列 select * from user_sequences //查询所有序列 select * from all_sequences; ...

  4. python 去除字符串中连续的空格,并使用其他的分隔符替代连续的空格

    例:1: filt函数用法及匿名函数lamda用法,详见http://www.cnblogs.com/apple2016/p/5657698.html join()用法详见http://www.cnb ...

  5. BAT 批处理脚本 教程

    第一章 批处理基础第一节 常用批处理内部命令简介 批处理定义:顾名思义,批处理文件是将一系列命令按一定的顺序集合为一个可执行的文本文件,其扩展名为BAT或者CMD.这些命令统称批处理命令.小知识:可以 ...

  6. FormData对象实现文件Ajax上传

    后台: import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; imp ...

  7. PHP中使用数组指针函数操作数组示例

    数组的内部指针是数组内部的组织机制,指向一个数组中的某个元素.默认是指向数组中第一个元素通过移动或改变指针的位置,可以访问数组中的任意元素.对于数组指针的控制PHP提供了以下几个内建函数可以利用. ★ ...

  8. php socket通信(tcp/udp)

    注意 1.在socket_bind的时候ip地址不能真回环地址如127.0.0.1 2.server.php后台跑起来的时候 nohup php server.php > /var/tmp/a. ...

  9. RMAN笔记小结

    首先感谢junsansi和leshani两位大师的文笔:我可是好好看了很多遍:这两位哦:我跟你们说:对rman的解说那是相当精彩:文章形如流水,通俗易懂:内容那是入木三分...;好了我也不多说了,反正 ...

  10. 20145227 《Java程序设计》第9周学习总结

    20145227 <Java程序设计>第9周学习总结 教材学习内容总结 1.JDBC简介 JDBC全名Java DataBase Connectivity,是java联机数据库的标准规范. ...