iOS - AppRealTest App 真机测试

简介: 前言1、准备开发者账号自从 Xcode7 出来之后,一般的真机测试不需要开发者账号,也就不需要看这篇教程,只有 app 具有 “推送” 等功能的时候,要真机测试就必须要开发者账号和设置证书。

前言

  • 1、准备

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

    • 1) 创建 App ID
    • 2) 创建证书请求文件(CSR 文件)
    • 3) 根据 CSR 创建开发者证书(CER)(开发、测试用的 Develope 证书)
    • 4) 添加设备(Devices)
    • 5) 根据 Devices 创建 Provisioning Profiles 配置文件(PP文件)
    • 6) 设置 Xcode 然后真机调试
  • 3、重点

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

1、创建 App ID

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

    AppRealTest1

    AppRealTest2

    AppRealTest3

  • 2、填写信息创建 app ID

    AppRealTest4

    AppRealTest5

    AppRealTest6

    • 第一个选项:明确的 app id 与项目中的 Bundle Identifier 相对应,如果你打算将应用程序中加入 Game Center,或在应用中使用应用内购买,进行数据保护,使用 iCloud,或者想要给你的应用程序一个唯一的配置文件,你就必须申请 Explicit App ID。

    • 第二个选项:通用 app id 可以在所有不需要明确 id 的 app 中使用,淘宝上卖的真机调试证书就是这个

    AppRealTest7

    AppRealTest8

    AppRealTest9

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

  • CSR 文件主要用于绑定你的电脑的

  • 1、在 Mac 上,点开 LaunchPad,在其他中找到打开钥匙串访问

    AppRealTest10

  • 2、点击电脑左上角的 钥匙串访问 => 证书助理 => 从证书颁发机构请求证书

    AppRealTest11

  • 3、出现如下界面,选择存储到磁盘,点击继续

    AppRealTest12

  • 4、选择存储到桌面,存储

    AppRealTest13

  • 5、点击完成

    AppRealTest14

  • 6、在桌面上看到下面的文件,证书请求文件完成

    AppRealTest15

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

  • 1、在苹果开发者中心找到 Certificates,点击 All,然后点击右上角 + 号

    AppRealTest16

  • 2、点击 Developement 中的 iOS App Developement 选项

    AppRealTest17

  • 3、点击 Continue

    AppRealTest18

  • 4、点击 Continue

    AppRealTest19

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

    AppRealTest20

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

    AppRealTest21

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

4、添加设备

  • 1、在苹果开发者中心找到 Devices,点击 All,然后点击右上角 + 号添加设备到开发者账号中,为制作 PP 文件做准备

    AppRealTest22

    AppRealTest23

    • Name:设备的描述 可以随便填 方便你记忆
    • UDID:设备的标号
  • 2、获取 UDID(这里随便提供一种方法获取 UDID)

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

      AppRealTest24

      AppRealTest25

      AppRealTest26

  • 3、填入 UDID 就 OK 了

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

  • 1、在苹果开发者中心找到 Provisioning Profiles ,点击 All,然后点击右上角 + 号

    AppRealTest27

  • 2、选择 iOS App Developement,点击 Continue

    AppRealTest28

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

    AppRealTest29

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

    AppRealTest30

  • 5、选择设备

    AppRealTest31

    • 注意:wildCard 格式的证书没有推送,PassCard 等服务的应用,慎重选择。因为 PP 证书的开发者证书需要真机调试,所以我们需要绑定真机,这里因为之前添加过一些设备,所以这里就可以直接全选添加,如果没有的话,需要将真机的 udid 复制出来在此添加。在发布的 PP 文件中,是没有这一步的。
  • 6、在 Profile Name 栏里输入一个名字(这个是 PP 文件的名字,可随便输入,在这里我用工程名字,便于分别),然后点击 Generate

    AppRealTest32

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

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

6、设置 Xcode 真机调试

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

    AppRealTest33

  • 2、设置 Debug 的 CER 证书

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

    AppRealTest34

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

7、使用 P12 文件多台 Mac 进行真机调试 (或者发布)

  • 1、为什么要使用 P12 文件

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

      AppRealTest35

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

      AppRealTest36

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

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

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

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

        AppRealTest37

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

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

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

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

      AppRealTest38

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

      AppRealTest39

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

      AppRealTest40

    • 然后生成 P12 文件

      AppRealTest41

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

    • 使用

      • 调试:就是把该教程的第三步创建调试证书省略,将其换成 P12 文件即可。
      • 上架:把 “App 上架” 文章的第三步创建发布证书省略,将其换成 P12 文件即可。
目录
相关文章
|
10天前
|
JavaScript 前端开发 Android开发
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
55 13
【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
1月前
|
安全 数据安全/隐私保护 Android开发
【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app
【05】2025年1月首发完整版-篇幅较长-苹果app如何上架到app store完整流程·不借助第三方上架工具的情况下无需花钱但需仔细学习-优雅草央千澈详解关于APP签名以及分发-们最关心的一篇来了-IOS上架app
302 75
|
13天前
|
JavaScript 搜索推荐 Android开发
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
40 8
【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
|
13天前
|
数据采集 JavaScript Android开发
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
46 7
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
9天前
|
缓存 Java 测试技术
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
115 3
【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
|
1天前
|
人工智能 程序员 API
iOS|记一名 iOS 开发新手的前两次 App 审核经历
啥,这玩意也有新手保护期?
9 0
|
2月前
|
存储 监控 API
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
app开发之安卓Android+苹果ios打包所有权限对应解释列表【长期更新】-以及默认打包自动添加权限列表和简化后的基本打包权限列表以uniapp为例-优雅草央千澈
106 11
|
3月前
|
Java 测试技术 持续交付
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
本文重点讲解如何搭建App自动化测试框架的思路,而非完整源码。主要内容包括实现目的、框架设计、环境依赖和框架的主要组成部分。适用于初学者,旨在帮助其快速掌握App自动化测试的基本技能。文中详细介绍了从需求分析到技术栈选择,再到具体模块的封装与实现,包括登录、截图、日志、测试报告和邮件服务等。同时提供了运行效果的展示,便于理解和实践。
208 4
【入门思路】基于Python+Unittest+Appium+Excel+BeautifulReport的App/移动端UI自动化测试框架搭建思路
|
3月前
|
传感器 iOS开发 UED
探索iOS生态系统:从App Store优化到用户体验提升
本文旨在深入探讨iOS生态系统的多个方面,特别是如何通过App Store优化(ASO)和改进用户体验来提升应用的市场表现。不同于常规摘要仅概述文章内容的方式,我们将直接进入主题,首先介绍ASO的重要性及其对开发者的意义;接着分析当前iOS平台上用户行为的变化趋势以及这些变化如何影响应用程序的设计思路;最后提出几点实用建议帮助开发者更好地适应市场环境,增强自身竞争力。
|
3月前
|
设计模式 Swift iOS开发
探索iOS开发:从基础到高级,打造你的第一款App
【10月更文挑战第40天】在这个数字时代,掌握移动应用开发已成为许多技术爱好者的梦想。本文将带你走进iOS开发的世界,从最基础的概念出发,逐步深入到高级功能实现,最终指导你完成自己的第一款App。无论你是编程新手还是有志于扩展技能的开发者,这篇文章都将为你提供一条清晰的学习路径。让我们一起开始这段旅程吧!

热门文章

最新文章

  • 1
    【01】噩梦终结flutter配安卓android鸿蒙harmonyOS 以及next调试环境配鸿蒙和ios真机调试环境-flutter项目安卓环境配置-gradle-agp-ndkVersion模拟器运行真机测试环境-本地环境搭建-如何快速搭建android本地运行环境-优雅草卓伊凡-很多人在这步就被难倒了
  • 2
    Cellebrite UFED 4PC 7.71 (Windows) - Android 和 iOS 移动设备取证软件
  • 3
    iOS各个证书生成细节
  • 4
    MNN-LLM App:在手机上离线运行大模型,阿里巴巴开源基于 MNN-LLM 框架开发的手机 AI 助手应用
  • 5
    原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
  • 6
    【11】flutter进行了聊天页面的开发-增加了即时通讯聊天的整体页面和组件-切换-朋友-陌生人-vip开通详细页面-即时通讯sdk准备-直播sdk准备-即时通讯有无UI集成的区别介绍-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 7
    【08】flutter完成屏幕适配-重建Android,增加GetX路由,屏幕适配,基础导航栏-多版本SDK以及gradle造成的关于fvm的使用(flutter version manage)-卓伊凡换人优雅草Alex-开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草Alex
  • 8
    【Azure App Service】基于Linux创建的App Service是否可以主动升级内置的Nginx版本呢?
  • 9
    【Azure Function】Function App出现System.IO.FileNotFoundException异常
  • 10
    1688APP 原数据 API 接口的开发、应用与收益
  • 1
    iOS|记一名 iOS 开发新手的前两次 App 审核经历
    9
  • 2
    flutter3-wetrip跨平台自研仿携程app预约酒店系统模板
    24
  • 3
    通过外部链接启动 Flutter App(详细介绍及示例)
    21
  • 4
    【03】仿站技术之python技术,看完学会再也不用去购买收费工具了-修改整体页面做好安卓下载发给客户-并且开始提交网站公安备案-作为APP下载落地页文娱产品一定要备案-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    55
  • 5
    【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
    46
  • 6
    【01】仿站技术之python技术,看完学会再也不用去购买收费工具了-用python扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-客户的麻将软件需要下载落地页并且要做搜索引擎推广-本文用python语言快速开发爬取落地页下载-优雅草卓伊凡
    40
  • 7
    【Azure Function】Function App门户上的Test/Run返回错误:Failed to fetch
    36
  • 8
    小游戏源码开发之可跨app软件对接是如何设计和开发的
    42
  • 9
    原生鸿蒙版小艺APP接入DeepSeek-R1,为HarmonyOS应用开发注入新活力
    174
  • 10
    PiliPala:开源项目真香,B站用户狂喜!这个开源APP竟能自定义主题+去广告?PiliPala隐藏功能大揭秘
    77