跨平台应用开发进阶(四十一)使用Xcode打包 iOS 应用 archive 时四种证书的区别详解_xcode编译时 archive

一、archive 四种模式

在应用XCode进行苹果打包的时候有以下四个选项可供选择,在此累述一下四种模式的含义:
跨平台应用开发进阶(四十一)使用Xcode打包 iOS 应用 archive 时四种证书的区别详解_xcode编译时 archive_第1张图片

  • App Store : 用来发布到App Store, 使用发布证书编译。(production)
  • Ad Hoc : 在开发者账号中添加过UDID的设备可以使用,使用发布证书编译。(production)
  • Enterprise : 企业发布,使用企业证书编译。
  • Development: 在开发者账号中添加过UDID的设备设备可以使用,使用开发证书编译。(Development)

二、相同点

对于选项1和选项3,比较容易理解,而选项2和4虽然二者在安装测试的时候都可以用,但是二者区别总结如下:

相同点:

  1. 在创建证书的时候,都需要在apple帐号中添加具体设备,只有被选中的设备,才能安装该证书打出来的ipa包;
  2. 二者都可以安装到真机上进行测试;

三、安装方式区别

  • archiveipa包,通过蒲公英/iTunes tool 等第三方平台,进行安装,此种情况下两种证书都可以使用;
  • 真机连接到 Xcode 直接运行安装,此种方式一般为开发人员在开发过程中比较快捷的安装测试方式,但是,该方式只可以使用development描述文件及code signDeveloper证书,如果使用production描述文件及code signDistribution证书,不能运行调试,报:process launch failed: failed to get the task for process 10487 错误提示!
  • 苹果文档指出:Ad Hoc模式的包,和将来发布到 App Store 的包在各种功能测试上是一样的,只要Ad Hoc模式下测试(推送,内购等)没有问题,发布到App Store也是没有问题的。

综上所述:前期开发测试的时候,Ad HocDevelopment包都可以使用,介于Development多一个可以直接连接真机安装的功能,建议首选Development模式创建证书,后期将要发布到AppStore上的时候,再创建Ad Hoc 证书,安装测试,确保最终上架到AppStore的应用无Bug。

四、iOS开发者账号(企业版)申请攻略

4.1 苹果开发者账号类型

Apple开发者账号分为以下三类:个人开发者账号公司开发者账号企业账号

  1. 个人开发者账号$99美元,可以App Store上架,最大udid支持数为100,需要创建 Apple ID,协作人数仅开发者自己,不需要填写公司的邓白氏编码( D-U-N-S Number)。
  2. 公司开发者账号$99美元,可以App Store上架,最大udid支持数为100,需要创建 Apple ID,允许多个开发者进行协作开发,需要填写公司的邓白氏编码( D-U-N-S Number)。
  3. 企业开发者账号$299美元,不可以App Store上架,不限制udid支持数量,需要创建 Apple ID,允许多个开发者进行协作开发,需要填写公司的邓白氏编码( D-U-N-S Number)。

真题解析、进阶学习笔记、最新讲解视频、实战项目源码、学习路线大纲
详情关注公中号【编程进阶路】

4.2 企业版开发者账号的优势是什么?

可以不通过苹果审核,分发APP,补齐部分APP因审核过于严苛,而无法进行分发的短板。

4.3 企业版开发者账号的申请步骤
  1. 选定一个人作为账号持有人,最好选定一个熟知公司信息,并能随时联系到公司法人,并且可以获得公司营业执照等信息的人,如公司高管或者法人本人。
  2. 准备一个企业邮箱,用163之类的容易被拒。
  3. 使用这个企业邮箱去注册一个AppleID,注册地址:https://appleid.apple.com/account,注意填写的个人信息要是上面选定的持有人的真实信息,主要是姓名和电话,注册完成记得开启两步验证。
  4. 进入注册企业账号官网:https://developer.apple.com/cn/programs/enterprise/,登录上面注册好的AppleID,然后拉到网页最下面的“开始申请”,选择仅在我的公司内部使用,开始填写申请表格

HTTP

  • HTTP 报文结构是怎样的?

  • HTTP有哪些请求方法?

  • GET 和 POST 有什么区别?

  • 如何理解 URI?

  • 如何理解 HTTP 状态码?

  • 简要概括一下 HTTP 的特点?HTTP 有哪些缺点?

  • 对 Accept 系列字段了解多少?

  • 对于定长和不定长的数据,HTTP 是怎么传输的?

  • HTTP 如何处理大文件的传输?

  • HTTP 中如何处理表单数据的提交?

  • HTTP1.1 如何解决 HTTP 的队头阻塞问题?

  • 对 Cookie 了解多少?

  • 如何理解 HTTP 代理?

  • 如何理解 HTTP 缓存及缓存代理?

  • 为什么产生代理缓存?

  • 源服务器的缓存控制

  • 客户端的缓存控制

  • 什么是跨域?浏览器如何拦截响应?如何解决?

跨平台应用开发进阶(四十一)使用Xcode打包 iOS 应用 archive 时四种证书的区别详解_xcode编译时 archive_第2张图片

你可能感兴趣的:(程序员,xcode,ios,macos)