【转】iOS开发者账号和证书
原文网址:http://www.jianshu.com/p/8e967c1d95c2
从Xcode7之后,苹果支持了免证书调试,但是若是需要调试推送功能,或者需要发布App,则需要使用付费的开发者账户。
证书的配置过程,网上的教程很多、也很详细,对照步骤一步一步来,一般都可以配置成功。
本文主要探索这些步骤背后的机理,以及每一步骤所达到的目的。
本文主要内容有:
- 证书配置一般步骤
- 每一步骤背后的机理
证书配置一般步骤
1. 钥匙串访问 -> 生成CSR文件
2. 开发者中心 -> Certificates -> add -> iOS App Development -> 上传CSR文件,生成cer证书文件
3. 下载并安装证书文件
3.1. 若上一步中的证书不能识别授权方(此证书是由未知颁发机构签名的),可以下载并安装AppleWWDRCA.cer证书来解决
4. 添加App IDS
5. 添加设备UUID
6. Provisioning Profiles -> add -> 依次选择App ID、certificate、devices,生成描述文件
7. 安装描述文件
8. 真机调试程序,会弹出"codesign"想要使用您的钥匙串中的密钥"xxxx"进行签名,点击允许,可以进行真机调试
每一步骤背后的机理
1. 钥匙串访问 -> 生成CSR文件
# Mac钥匙串中生成一对密钥,包含公钥和私钥,可选中登录&密钥查看。
# CSR文件中包含用户的公钥和邮箱信息
2. 开发者中心 -> Certificates -> add -> iOS App Development -> 上传CSR文件,生成cer证书文件
# WWDR使用CA的密钥对CSR文件进行签名认证,确认这个公钥是属于此开发者账号的
3. 下载并安装证书文件
# 此时的证书是CA加密后的用户公钥和用户信息
3.1. 若上一步中的证书不能识别授权方,可以下载并安装AppleWWDRCA.cer证书来解决
# 不能识别的原因是因为本机没有CA的公钥,不能对签名后的证书进行验证
[https://developer.apple.com/certificationauthority/AppleWWDRCA.cer]
# 证书遵循非对称加密中的“私钥签名 - 公钥验证”
# 所以需要下载CA的公钥进行验证
4. 添加App IDS
# 标识App的bundle ID
5. 添加设备UUID
# 标识那一台iPhone或者iPad
6. Provisioning Profiles -> add -> 依次选择App ID、certificate、devices,生成描述文件
# 真机调试时,Xcode会将描述文件打包入App,描述文件中包含信息的作用
7. 安装描述文件
# 描述文件被添加到~/Library/MobileDevice/Provisioning Profiles路径下
# XCode在编译的时候会自动搜索此目录
8. 真机调试程序,会弹出"codesign"想要使用您的钥匙串中的密钥"xxxx"进行签名,点击允许,可以进行真机调试
# 打包app的时候,Xcode会使用用户的私钥进行签名
原文链接:http://www.jianshu.com/p/8e967c1d95c2
著作权归作者所有,转载请联系作者获得授权,并标注“简书作者”。
【转】iOS开发者账号和证书的更多相关文章
- ios开发者账号、证书相关内容
背景:因为在实际测试中会涉及到不同的证书,而自己又对证书不了解,所以去查资料了解了一下不同证书的区别,如果有不对的地方,欢迎指正补充. In House:所有手机都可以安装,但是不能上传到app ...
- iOS——关于创建真机调试证书(发布证书,测试(调试)证书,推送调试证书)、iOS开发者账号申请 请用开发者账号去iTunes connect 查看状态
- Xamarin iOS教程之申请付费开发者账号下载证书
Xamarin iOS教程之申请付费开发者账号下载证书 Xamarin iOS使用真机测试应用程序 在讲解iOS Simulator时,已经提到了虽然iOS Simulator可以模仿真实的设备,但是 ...
- 苹果IOS开发者账号的区别,企业账号,个人账号,公司团队账号,教育账号
苹果IOS开发者账号总结 详细地址:https://developer.apple.com/programs/which-program/ 个人账号(Individual): 费用99美金一年, 该账 ...
- (转)苹果iOS开发者账号过期临时解决方法
苹果iOS开发者账号过期临时解决办法 苹果iOS开发者账号一年的费用是99美金,作者最近由于各种原因,导致renew没能在账号过期之前支付好,所以在账号过期等待renew的期间,试了试一些非正常手段, ...
- 没有 iOS 开发者账号的情况下部署到真机的方法
原文发表于我的技术博客 本文分享了官方推荐的没有 iOS 开发者账号的情况下部署到真机的方法,供参考. 原文发表于我的技术博客 1. 官方推荐的方法 原文在此,也就是 Ionic 官方团队在博客中分享 ...
- iOS开发者账号证书配置及相关工作
申请到开发者账号,肯定要先配置一下才可以使用,这主要是iOS证书及配置文件: 以下这篇文章写得比较全面,故不再累赘,需要的同学可以看一下: iOS开发证书与配置文件的使用
- 苹果IOS开发者账号总结--发布应用APP时team name是否可以随意写?
个人账号(Individual): 费用99美金一年, 该账号在App Store销售者只能显示个人的ID,比如zhitian zhang,单人使用.个人账号只能有一个开发者.100个苹果的iOS设备 ...
- iOS开发者账号配置进行设备调试
PS:我特么写了这么久,居然图片消失了,服了. 问题一:苹果开发者账号类型: 分为三种:个人的(99美金一年).组织的(99美金一年)和企业账号(299美金一年),申请时需要信用卡,可以找淘宝的代理申 ...
随机推荐
- 直播类送礼动画<豪华礼物+小礼物>
直播类送礼动画<豪华礼物+小礼物>:代码会持续更新,现直播的app里内有太多的动画,由于时间关系不能一次共享所有动画聘为,这次先共享几个比较火爆的动画. 支持真机和模拟器上运行,最低支持i ...
- OC - 1.面向过程和面向对象的思想对比
一.面向过程 1> 思想 面向过程是一种以过程为中心的最基础编程思想,不支持面向对象的特性. 面向过程是一种模块化程序设计方法 2> 开发方法 面向过程的开发方法是以过程(也可以说是模块) ...
- JAVA中实现百分比
import java.text.NumberFormat; public class TeachYou { public static void main(String[] args) { //这里 ...
- 九度OJ 1131 合唱队形 -- 动态规划(最长递增子序列)
题目地址:http://ac.jobdu.com/problem.php?pid=1131 题目描述: N位同学站成一排,音乐老师要请其中的(N-K)位同学出列,使得剩下的K位同学不交换位置就能排成合 ...
- php checkbox复选框值的获取与checkbox默认值输出方法
php获取 checkbox复选框值的方法,checkbox在php读取值时要用数组形式哦,我们读取这些值用php post获取是以一个array形式哦. php获取 checkbox复选框值的方法 ...
- lnmp安装--php与nginx结合
软件环境: linux:centos5. nginx:.tar.gz php:.tar.gz lnmp与lamp的区别? lnmp(linux+nginx+mysql+php)的提法相对于lamp(l ...
- jsp查询页面和结果页面在同一页面显示和交互
用frameset实现查询页面和结果页面在同一页面 用target实现交互显示在同一页面上 请参照以下方法解决: main.jsp: <html> <head> <met ...
- 将FAT32格式转换成NTFS格式命令
convert f: /fs:ntfs /x 可以不用格式化里面的数据
- Docker系列
Docker学习系列(五):Dockerfile文件 什么是Dockerfile? 它是一个名称为Dockerfile的文件 它是一个脚本文件,由一系列命令和参数构成 Dockerfile是自动构建d ...
- Razor模板引擎
Razor模板引擎 阅读目录 一.简介 二.非Mvc中使用Razor 三.总结 回到目录 一.简介 在MVC以外的场景中,我们往往需要完成一些模板引擎生成代码或页面的工作:在以前我们一般常用的有Raz ...