准备

开发者账号

自从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. 夺命雷公狗-----tp中遇到数据乘积的问题的遇见

    昨晚遇到了一个很神奇的问题, 然后打印出来的结果是 ) LIMIT , 然后dump出来的结果有点无语,他是10*10这样的倍增的,如果数据量大,分分钟直接可以让服务器直接死掉.... 想这问题我想了 ...

  2. [OrangePi] Building the system

    You can try to build Debian/Ubuntu for OrangePI yourself. Clone my GitHub repository. You will need ...

  3. [转][Automation]- C# SendKey代码表

    使用 SendKeys 将键击和组合键击发送到活动应用程序.此类无法实例化.若要发送一个键击给某个类并立即继续程序流,请使用 Send.若要等待键击启动的任何进程,请使用 SendWait. 每个键都 ...

  4. FireDac 与数据库连接时字符集及对应的字段类型问题

    近日在一个过程调用时发生一个奇怪现象, 异常返回意思是说, 数据的长度是[6], 而字段定义的长度是[3].  分析后认为:  调用过程你不涉及到对返回数据集的字段手动定义问题, 出现这个问题应是两边 ...

  5. 161019、并发容器ConcurrentHashMap

    java.util.concurrent.ConcurrentMap<K, V>一种是用读写锁实现Map的方法.此种方法看起来可以实现Map响应的功能,而且吞吐量也应该不错.但是通过前面对 ...

  6. Spring使用p名称空间配置属性

    给XML配置文件"减肥"的另一个选择就是使用p名称空间,从 2.0开始,Spring支持使用名称空间的可扩展配置格式.这些名称空间都是基于一种XML Schema定义.事实上,我们 ...

  7. 对于改善 MySQL 数据装载操作有效率的方法是怎样

    多时候关心的是优化SELECT 查询,因为它们是最常用的查询,而且确定怎样优化它们并不总是直截了当.相对来说,将数据装入数据库是直截了当的.然而,也存在可用来改善数据装载操作效率的策略,其基本原理如下 ...

  8. PHP编写的图片验证码类文件分享方法

    适用于自定义的验证码类! <?php/* * To change this license header, choose License Headers in Project Propertie ...

  9. 《Linux/Unix系统编程手册》

    TCP的TIME_WAIT状态,超时时间为2倍MSL(IP报文超过TTL前最大生存时间,BSD规范为30s,RFC1122建议为2分钟).

  10. textarea不能提交html格式的代码

    解决方法:web.config中<system.web>节点添加 <httpRuntime targetFramework="4.5" requestValida ...