真机测试---iOS证书(.p12)和描述文件(.mobileprovision)
iOS证书和描述文件:
| 证书类型 | 使用场景 |
|---|---|
| 开发(Development)证书和描述文件 | 用于开发测试,在starain中打包后可在真机环境通过Safari调试 |
| 发布(Distribution)证书和描述文件 | 用于提交Appstore,在starain中打包后可使用Application Loader提交到Appstore审核发布 |
准备环境
必需要有苹果开发者账号,并且加入了“iOS Developer Program”
Mac OS 10.10以上系统(如果已经申请p12证书则不需要)
登录iOS Dev Center
打开网站iOS Dev Center (或复制https://developer.apple.com/)
使用苹果开发者账号登录iOS Dev Center:
找到“Certificates, Identifiers & Profiles”,在“Certificates, Identifiers & Profiles”页面的“iOS Apps”栏中任选一项,如“Certificates”:

打开“iOS Certificates”页面,可以看到所有已经申请的证书及描述文件:
申请苹果App ID
(如果已经申请,可跳过此节)
在“iOS Certificates”页面“Identifiers"下选择“App IDs",可查看到已申请的所有App ID,点击右上角的加号可创建新“App ID”:
打开“Register iOS App ID”页面,在“App ID Description”栏下的“Name”项中输入名称(如“HBuilderApp”):
在“Explicit App ID”栏下的“Bundle ID”项中输入App ID(使用反向域名格式字符串,如“io.dcloud.HBuilderApp”):
注意:HBuilder中App云端打包界面的AppID栏需要输入此值
在“App Services”栏下选择应用要使用到的服务(如需要使用到消息推送功能,则选择“VPN Configuration & Control”):
设置完成后选择“Continue”,弹出确认页面:
确认后选择“Submit”提交,再次确认就可以在“App IDs"页面看到刚创建的App ID:
生成证书请求文件
不管是申请开发(Development)证书还是发布(Distribution)证书,都需要使用证书请求(.certSigningRequest)文件,证书请求文件需在Mac OS上使用“Keychain Access”工具生成。
在“Spltlight Search”中搜索“Keychain”并打开“Keychain Access”工具:
打开菜单“Keychain Access”->“Certificate Assistant”,选择“Request a Certificate From a Certificate Authority...”:
打开创建请求证书页面,在页面中输入用户邮件地址(User Email Address)、证书名称(Common Name),请求类型(Request is)选择保存到磁盘(Saved to disk):
点击“Continue”后弹出保存路径:
点击“Save”后保存证书请求文件,成功提示:
保存文件名称为“CertificateSigningRequest.certSigningRequest”,后面申请开发(Development)证书和发布(Production)证书时用到。
申请开发(Development)证书和描述文件
开发(Development)证书用于测试环境下使用,可以直接安装到手机上(不用提交到Appstore),但一个描述文件最多只能绑定100台设备(因此通过这种证书正式发布应用是行不通的)。
申请开发(Development)证书
在“Certificates, Identifiers & Profiles”页面“Certificates"下选择“Development",可查看到已申请的所有开发(Development)证书,点击右上角的加号可创建新证书:
打开“Add iOS Certificate”页面,在“Development”栏下选中“iOS App Development”:
在页面底部选择“Continue”:
打开确认证书请求页面,点击“Continue”继续:
打开证书生成页面,点击“Choose File...”选择“生成证书请求文件”章节生成的“CertificateSigningRequest.certSigningRequest”文件,点击“Generate”生成cer证书成功:
生成证书成功后打开证书下载页面,选择“Download”下载保存证书(ios_development.cer):
双击保存到本地的ios_development.cer文件导入到“Keychain Access”:
导入成功后,可以在证书列表中显示:
选中导入的证书,右键选择“Export "Developer" ...”:
打开证书保存页面,输入文件名、选择路径后点击“Save”:
打开设置证书密码页面,输入密码及确认密码后点击“OK”:
打开访问“Keychain Access”密码页面,输入Mac OS管理员密码,点击“Allow”,保存开发(Development)证书(如“HBuilderCert.p12”)。
添加调试设备
开发描述文件必须绑定设备,所以在申请开发描述文件之前,先添加调试的设备。
(如果已经添加设备,可跳过此节)
在“Certificates, Identifiers & Profiles”页面“Devices”下选择“All",可查看到已添加的所有设备信息,点击右上角的加号可添加新设备:
打开“Registering a New Device or Multiple Devices”页面,输入设备名称和UDID:

将设备连接到电脑,启动iTunes,点击次区域可切换显示设备的UDID,右键选择复制
输入完成后,点击“Continue”继续,确认输入信息:
点击“Register”,完成添加。
申请开发(Development)描述文件
在“Certificates, Identifiers & Profiles”页面“Provisioning Profiles”下选择“Development",可查看到已申请的所有开发(Development)描述文件,点击右上角的加号可创建新描述文件:
打开“Add iOS Provisioning Profile”页面,在“Development”栏下选中“iOS App Development”:
点击“Continue”按钮,打开“App ID”选择页面,选择要使用的“App ID”(如之前创建的“io.dcloud.HBuildApp”),点击“Continue”:
打开“Select certificates”页面,选择前面创建的开发证书:
点击“Continue”,打开选择调试设备页面,选择用于调试安装的设备(最多100太设备):
点击“Continue”,输入描述文件的名称(如“HBuilderProfile”):
点击“Generage”,生成描述文件成功:
点击“Download”下载保存开发描述文件(如HBuilderProfile.mobileprovision)。
申请发布(Distribution)证书和描述文件
发布(Production)证书用于正式发布环境下使用,用于提交到Appstore审核发布。
申请发布(Production)证书
在“Certificates, Identifiers & Profiles”页面“Certificates"Production",可查看到已申请的所有发布(Production)证书,点击右上角的加号可创建新证书:
打开“Add iOS Certificate”页面,在“Production”栏下选中“App Store and Ad Hoc”:
在页面底部选择“Continue”:
打开确认证书请求页面,点击“Continue”继续:
打开证书生成页面,先点击“Choose File...”选择“生成证书请求文件”章节生成的“CertificateSigningRequest.certSigningRequest”文件,再点击“Generate”生成cer证书:
生成证书成功后打开证书下载页面,选择“Download”下载保存证书(ios_production.cer):
双击保存到本地的ios_production.cer文件导入到“Keychain Access”:
导入成功后,可以在证书列表中显示:
选中导入的证书,右键选择“Export "Developer" ...”:
打开证书保存页面,输入文件名、选择路径后点击“Save”:
打开设置证书密码页面,输入密码及确认密码后点击“OK”:
打开访问“Keychain Access”密码页面,输入Mac OS管理员密码,点击“Allow”,保存开发(Production)证书(如“HBuilderCert.p12”)。
申请发布(Distribution)描述文件
在“Certificates, Identifiers & Profiles”页面“Provisioning Profiles”下选择“Distribution",可查看到已申请的所有发布(Distribution)描述文件,点击右上角的加号可创建新描述文件:
打开“Add iOS Provisioning Profile”页面,在“Development”栏下选中“iOS App Development”:
点击“Continue”按钮,打开“App ID”选择页面,选择要使用的“App ID”(如之前创建的“io.dcloud.HBuildApp”),点击“Continue”:
打开“Select certificates”页面,选择前面创建的发布证书:
点击“Continue”,输入描述文件的名称(如“HBuilderProfileDistribution”):
点击“Generage”,生成描述文件成功:
点击“Download”下载保存开发描述文件(如HBuilderProfileDistribution.mobileprovision)。
此证书的签发者无效 解决方法
真机测试---iOS证书(.p12)和描述文件(.mobileprovision)的更多相关文章
- 【Abode Air程序开发】iOS证书(.p12)和描述文件(.mobileprovision)申请
iOS证书(.p12)和描述文件(.mobileprovision)申请 5+App开发 Apple证书 iOS证书 iOS有两种证书和描述文件: 证书类型 使用场景 开发(Development)证 ...
- iOS证书(.p12)和描述文件(.mobileprovision)生成制作教程 By h.l
iOS证书(.p12)和描述文件(.mobileprovision)制作 证书类型分为2种,开发证书和发布证书 1.开发证书(iOS Certificates (Development))(用于真机调 ...
- iOS 证书(.p12)和描述文件(.mobileprovision)的导出和使用方法
为什么要导出.p12文件 当我们用大于三个mac设备开发应用时,想要申请新的证书,如果在我们的证书里,包含了3个发布证书,2个开发证书,可以发现再也申请不了开发证书和发布证书了(一般在我们的证书界面中 ...
- iOS证书(.p12)和描述文件(.mobileprovision)申请
证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试,在HBuilder中打包后可在真机环境通过Safari调试 发布(Distribution)证书和描述文件 用于提交Ap ...
- [转]iOS证书(.p12)和描述文件(.mobileprovision)申请
转载于:http://ask.dcloud.net.cn/article/152 iOS有两种证书和描述文件: 证书类型 使用场景 开发(Development)证书和描述文件 用于开发测试,在HBu ...
- 【转】让Xcode支持iOS12.0 设备真机测试(不断更新真机支持包)Xcode 真机测试 iOS
最新支持12.0 (16A366)! 所有真机包都是同一大版本号向下兼容.例如12.0 Beta6的真机包,是可以兼容12.0 Beta2及Beta1的. 12.0 (16A366)正式版可用!所有低 ...
- 苹果证书p12和描述文件的创建方法
在2020年之前,我们在使用香蕉云编创建苹果证书的时候,只需要注册苹果开发者账号,但不需要缴费成为开发者. 在2020年之后,需要先缴费成为苹果开发者. 假如你还没有注册苹果开发者账号,可以先参考下下 ...
- vs2013update4 vs-mda-remote cordova真机测试ios
1.升级vs2013到update4 2.下载安装vs_langpack-enu英语语言包 3.下载安装vs2013mda目前版本0.3.1 如果开发andorid,需要android sdk,ant ...
- vs2013update4 vs-mda-remote cordova真机测试ios 解决里面一个坑
sudo npm install -g vs-mda-remote --user=你的用户名 此步骤为安装vs-mda-remote,如果安装成功 执行vs-mda-remote –secure fa ...
随机推荐
- 各大浏览器内核(Rendering Engine)
记得刚开始写网页的时候,听童鞋们说各大浏览器的内核,也是懵懵懂懂的,知一不知其二,今天特地查一下: 内核只是一个通俗的说法,其英文名称为“Layout engine”,翻译过来就是“排版引擎”,也被称 ...
- python模块学习 logging
1.简单的将日志打印到屏幕 import logging logging.debug('This is debug message') logging.info('This is info messa ...
- Activity启动模式图文详解
转载自:http://jcodecraeer.com/a/anzhuokaifa/androidkaifa/2015/0520/2897.html 英文原文:Understand Android A ...
- oracle sqlldr控制文件模板
Sqlldr userid=lgone/tiger control=a.ctl LOAD DATA INFILE 't.dat' // 要导入的文件 // INFILE 'tt.date' // 导入 ...
- adodb配置与使用
=========================================php100:80:ADODB PHP数据库万能引擎类 ADODB PHP数据库介绍与特点 ADODB 是一种兼容的各 ...
- Git关联远程GitHub仓库
一.本地安装GIT版本控制软件 二.配置Git,设置用户信息 git config --global user.name "jack" git config --global us ...
- PHP代码分离
所谓的代码分离 其实只是一种思路,既然是一种思路 那就意味着他是有需求的 没有需求就没有解决方案 没有方案就不存在思路. 在这之前,我们制作 PHP 程序页面的时候.都是 HTML 和 PHP 混合写 ...
- php截取字符串,无乱码
今天面试,有一道题,要求截取中文字符无乱码. 当时因为要赶去另一家去面试,没有仔细分析. 虽然现在供职的这家公司b2c项目正在用,因为当时赶项目,是网上拿来直接用的. 回来以后再重新整理了一下. 代码 ...
- maya 写UI 用到的工具
import os cmds.window() scrollLayout = cmds.scrollLayout(w=150) cmds.gridLayout( numberOfColumns=30, ...
- ruby特性
1. ruby类结构 每个类都是Class类的对象 所有类都继承自BasicObject类(Module类不能实例化) 2. 单例方法 单例方法可以不定义在类中,只为某个对象定义方法,所以称为单例方法 ...