之前对iOS的证书弄的很不清楚,Xcode里面也有各种证书,作为一只有强迫症的巨蟹座,这是不能忍的

趁着准备发布自己的第一个app,梳理一下这块内容

主要参考了这几篇文章:

iOS开发:创建真机调试证书

http://jingyan.baidu.com/article/ff411625b8141312e48237a7.html

如何清除xcode里面的mobileprovision文件
http://www.shuizhongyueming.com/2014/04/how-to-clear-mobileprovision-file-in-xcode/

iOS App上架流程
http://www.cnblogs.com/496668219long/p/4603791.html

-------------- 创建真机调试证书 --------------

一、Certificates
授权一台Mac允许真机调试
type:
“iOS Distribution”发布授权证书
“iOS Development”调试授权证书

1. 从Mac上获取一个 CertificateSigningRequest.certSigningRequest文件,上传
2. 生成一个 ios_development.cer,下载,双击安装
这样就完成了对Mac真机调试的授权

二、Identifiers 下的 App IDs
为我们的工程创建一个标示,俗称签名,只有满足标示的工程才能真机调试

两种签名方式:
1. Explicit App ID:准确的(固定标示),如 com.xuyang.HouseLoanCal
2. Wildcard App ID:通用的(广义标示),如 com.xuyang.*

三、Devices
添加允许真机调试的设备,如iPhone、iPad等
需要设备的 UDID

四、Provisioning Profiles
添加证书
1. 选择我们创建的标示(或签名)
2. 选择我们授权的电脑
3. 选择我们需要真机调试的设备
4. 为证书取个名字
5. 生成证书,下载下来,是个名为 HouseLoanCal.mobileprovision 的文件,双击安装

我们总共下载了两个文件
1. ios_development.cer
2. HouseLoanCal.mobileprovision

Xcode 配置中
Code Signing Identity 选择的是 Certificates
Provisioning Profile 选择的是 Provisioning Profiles

-------------- 发布 App Store --------------

直接上图说话

1. 这四块就是上面提及的,注意到,Certificates 和 Provisioning Profiles 是有type的

2. 前面提到的真机调试,创建的是 iOS Development,即开发证书;现在我们需要再创建一个 iOS Distribution,即发布证书;

3. 中间两项 App IDs 和 Devices 是可以复用的

4. Certificates 对应的是两个 ios_development.cer 文件,安装后可以在 钥匙串访问 - 证书 看到

5. Provisioning Profiles 对应的是两个 .mobileprovision 文件,安装后可以在两个地方看到

方法一:

cd ~/Library/MobileDevice/Provisioning\ Profiles

这里能看到所有.mobileprovision 文件,如果有想要删除的多余证书,可以在这里删除,但是缺点是看文件名看不出对应哪个(这里应该是做了加密)

方法二:

Xcode - Preferences - Accounts - 选中你的Apple IDs - View Details

假如在第一种方法中删除了所有  .mobileprovision 文件,我们还是可以在这里把自己账户下的 .mobileprovision 重新添加

对于需要调试其他人的app,建议采用 Wildcard App ID

1. 创建一个新的 Indetifier App IDs

2. 创建一个对应的 Provisioning Profiles

3. 将新的 .mobileprovision 下载,双击安装或在Xcode中安装

iOS 证书、真机调试、发布 App Store的更多相关文章

  1. 【新发现】不用苹果开发账号就能申请ios证书真机调试

    虽然xcode现在可以免证书进行测试了,但众多跨平台开发者,如果还没注册苹果开发者账号. 想安装到自己非越狱手机测试是无能为力了. 不过新技术来了,只需要普通免费的苹果账号无需付费成为开发者就可以申请 ...

  2. XE8 & IOS开发之免费证书真机调试:开发证书、AppID、开发授权profile的申请,附Debug真机调试演示(XCode7 Beta版或以上版本适用,有图有真相)

    网上能找到的关于Delphi XE系列的移动开发的相关文章甚少,本文尽量以详细的图文内容.傻瓜式的表达来告诉你想要的答案. 原创作品,请尊重作者劳动成果,转载请注明出处!!! 注意,苹果发布Xcode ...

  3. 免费开发者证书真机调试App ID失效问题:"Unable to add App ID because the '10' App ID limit in '7' days has been exceeded."解决方案(5月5号)

    免费开发者证书真机调试App ID失效问题:"Unable to add App ID because the '10' App ID limit in '7' days has been ...

  4. XE6 /XE8 & IOS开发之免证书真机调试三步走,生成iPA文件并安装到其它苹果设备上

    XE6 & IOS开发之免证书真机调试(1):颁发属于自己的App签名证书(有图有真相) XE6 & IOS开发之免证书真机调试(2):连接真机并运行App(有图有真相) XE6 &a ...

  5. iOS工具——Xcode9无证书真机调试

    入坑iOS开发这么久,一直都是在模拟器上运行,公司的项目也都有公司的开发者账号进行真机调试.但是很多时候在网上download一些demo想在真机上运行看一下效果的时候都没法成行,今天抽空好好研究和学 ...

  6. Xcode5.1.1+ios 7.1.2 免证书真机调试

    Xcode假设不破解.无法真机调试, 也无法编译真机Release文件.仅仅有付费开通Apple开发人员账号,才干申请真机调试.而Xcode进行破解后,结合越狱的iPhone或iPad, 就可以免官方 ...

  7. Xcode 6 免证书真机调试

    前景:在 iOS 开发中,如果想进行真机调试,普遍情况是掏钱,掏钱的情况有两种: 第一种就是:直接在 Apple 官网注册为 Developer,每年99美元:当然这种作为个人开发者的话,是很有必要的 ...

  8. 【原】xcode5&IOS7及以下版本免证书真机调试记录

    搞了有一段IOS开发了,之前一直在企业做,近阶段主要在公司做C++服务端开发,打算在空闲实现搞搞个人开发,为自己赚钱,IDP还没申请下来,所以先用此方法在越狱设备上先做一下app的免证书真机调试,先记 ...

  9. Xcode7--免证书真机调试

    Xcode7之前,想要真机调试,必须花99刀购买开发者账号,而且步骤繁琐,需要下载证书.随着Xcode7的推出,大幅度的简化了真机调试的步骤,对ios开发工作者和正在学习ios开发的众多码农们,可以说 ...

  10. 【ionic】Mac IOS下真机调试

    模拟调试不能保证真机一定没问题,所以真机调试是非常必要的一步 IOS设备 启用设备调试 在IOS设备中(Iphone,Ipad)中开始web检测器 设备->safari->高级->w ...

随机推荐

  1. 修正linux系统时间

    date 安装ntpdate工具# yum -y install ntp ntpdate 设置系统时间与网络时间同步# ntpdate cn.pool.ntp.org 将系统时间写入硬件时间# hwc ...

  2. 聊聊ES6中的generator

    generatorgenerator(生成器)是ES6标准引入的新的数据类型.一个generator看上去像一个函数,但函数执行中间可以停止. ES6定义generator标准的哥们借鉴了Python ...

  3. C - Distinct Substrings (模板)

    https://vjudge.net/problem/SPOJ-DISUBSTR 有两种方式来求去除重读的子串 #include <bits/stdc++.h> using namespa ...

  4. BZOJ 1036 && Luogu P2590 [ZJOI2008]树的统计 树链剖分

    链剖裸题...你值得一做~ 用线段树多维护一个mx,少写一个tag #include<cstdio> #include<iostream> #define ll long lo ...

  5. Codeforces 190C(模拟)

    坑点 不记它难解我心头之恨-- WA1:不要读错题Orz,顺序是按它给定的.那就是个类似栈的东西,重点在于输出. 然而我输出很快就模拟对了-- WA2:数据:1 int.我日了不看数据我真的去de模拟 ...

  6. IO扩展芯片

    PCF8574:一个I2C接口+INT中断引脚口扩展出一个可输出输出的并口P0~P7,INT可以用于中断响应

  7. ES5数组遍历

    reduce() 方法接收一个函数作为累加器,数组中的每个值(从左到右)开始缩减,最终计算为一个值. array.reduce(function(total, currentValue, curren ...

  8. 一、Postgresql的基本操作

    ---------------------------------------------------------------------------------------------------- ...

  9. Git、Github和GitLab的区别及与SVN的比较

    个人理解: SVN适合领导啊,大家一起在加班,看你进度什么的,git则不必如此,忙完传上来完活. 一.含义: 百度上这样介绍的: Git(读音为/gɪt/.)是一个开源的分布式版本控制系统,可以有效. ...

  10. Redis sorted set(有序集合)

    Redis 有序集合是string类型元素的集合,元素不允许重复. 有序集合中的每个元素都会关联一个数值型的分数.redis正是通过分数来为集合中的成员进行从小到大的排序. 有序集合的成员是唯一的(不 ...