AppID(应用 ID)

AppID 是识别不同应用程序的唯一标志符,每个 app 都需要一个 App ID 或者 app 标识。目前有两种类型的 App 标识:一个是精确的 App ID(explicit App),一个是通配符 App ID(wildcard App ID)。使用通配符的 App ID 可以用来构建和安装多个程序。尽管通配符App ID 非常方便,但是一个精确的 App ID 也是需要的,尤其当 App 使用 iCloud 或者其他的 iOS 功能的时候,比如 Game Center、Push Notications 或者 IAP。

Development Certificate(开发证书)

用于开发的证书

Distribution Certificate(发布证书)

iOS 应用都有一个安全证书用于验证开发者的身份和签名。为了可以向 App Store 提交 app,你需要创建一个 iOS provisioning profile。首先你需要创建一个 distribution certificate(发布证书),过程类似于创建一个 development certificate(开发证书)。如果你已经在实体设备上测试你的 App,那么你对创建 development certificate 就已经很熟悉了。

AdHoc

iOS 证书分为 2 种,1 种是开发证书,用来给开发人员做真机测试的;1 种是发布证书,发布证书由分发到 App Store 和发布测试的 Ad Hoc 证书。

Provisioning profile(配置文件)

一旦你创建了 App ID 和 distribution certificate,你可以创建一个 iOS provisioning profile 以方便在 App Store 中销售你的 App。不过,你不能使用和 ad hoc distribution 相同的 provisioning profile。你需要为 App Store 分销创建一个单独的 provisioning profile,如果你使用通配符 App ID,那么你的多个 app 就可以使用相同的 provisioning profile。

Build Settings(生成设置)

配置 App ID、distribution certificate 和 provisioning profile 已经完成,是时候配置 Xcode 中的 build settings 了。在 Xcode Project Navigator 的 targets 列表中选择一个 target,打开顶部的 Build Settings 选项,然后更新以下 Code Signing 来跟之前创建的 distribution provisioning profile 相匹配。最近添加的 provisioning profiles 有时候不会立马就出现在 build setting 的 Code Signing 中看到,重启以下 Xcode 就可以解决这个问题。

Deployment Target(部署目标)

Xcode 中的每个 target 都有一个 development target,它可以指出 app 可以运行的最小版本。不过。一旦应用在App Store 生效,再去修改 development target,你要考虑一定后果。如果你在更新 app 的时候提高了 development target,但是已经购买应用的用户并没有遇到新的 development target,那么应用就不能在用户的移动设备上运行。如果用户通过 iTunes(不是设备)下载了一个更新过的 app,然后替换了设备上原先的版本,最后却发现新版本不能在设备上运行,这个是问题。

(1)当你决定提高现有 app 的 development target 时,要在新版本注释中进行说明。如果你提前告知用户,那么至少有一点,你已经尽力阻止问题发生了。

(2)对于一款新 app,我经常会把 development target 设置为最近发布的系统版本。因为 iOS 版本发布后,渗透率的增长速度是令人难以置信的。很多人认为提高 development target 会失去大部分市场,这个说法并不准确,比如 iOS,iOS 发布后一月,超过 60% 的设备已经进行了更新。但是对 Android 而言,就是另外一回事了,Android 用户并不会像 iOS 用户那样热衷与更新操作系统版本。

AppKey

申请应用的唯一标识

AppSecret

申请应用的密钥,主要对于请求参数签名,和对回调参数验证。

Bundle Identifier

Bundle ID / Bundle Identifier 也叫 App ID 或者应用 ID,一个开发者账号下每一个 ios 应用的唯一标识,就像一个的身份证号码;

Bundle ID 主要分两类:

Explicit App ID,明确的 App ID,一般格式是:com.company.appName;这种 id 只能用在一个 app 上,每一个新应用都要创建并只有一个。

Wildcard App ID,通配符 App ID,一般格式是:com.domainname.*;这种 id 可以用在多个应用上,虽然方便,但是使用这种 id 的应用不能使用通知功能,所以不常用。

Capabilities

待补充

Code Signing Identity / Code Signing Style

待补充

Archive / Archives 打包

待补充

project

project 是基本工程,包含了所有的代码文件和资源文件、以及基本的编译相关设置。project 可以单独存在,也可以被包含在 workspace。

workspace

workspace 是 project 的管理文件,一个 workspace 可以包含多个 project,同个 workspace 内的 project 可以引用。

target

target 是编译目标,target 会继承 project 的基本设置,并重新设置 target 相关的编译信息(主要是 Build Setting 和 Build Phases)。

一个 target 对应一个 product,一个工程里可以有多个 target。target 之间可以存在依赖,如果 targetA 依赖 targetB,那么编译 targetA 的时候会先编译 targetB。多个 target 只能有一个处于 active 状态,由 Xcode 的 scheme 决定。

scheme

scheme 就是编译任务,配置了 Build、Run、Test、Profile、Analyze、Archive 相关信息,同时可以指定多个运行的目标。我们可以定义多个 scheme,但是只能使用一个。

.app .xcarchive 和 .ipa 的区别

这三个文件都是 Xcode 直接产出的运行相关文件,通过指令同样可以生成这三个文件。

.xcarchive 是通过 Xcode 打包或者 xcodebuild archive 打包出来的文件,里面包括了 .app 文件、dSYM 符号文件等;用于生成 .ipa 文件;可通过 Xcode 上传 AppStore;

.ipa 是一个 zip 压缩包,主要有 Payload 文件夹,里面有 .app 文件,Symboles 是符号文件;最终从本地 upload 到 iTunes Connect 的文件;可通过 Application Loader 上传到 AppStore;

.app 程序运行包,其中包括二进制的可执行文件以及运行所需要的资源以及 plist,还有就是签名文件、 privisioning file、图片、语言文件、动态库和 Unix 可执行文件;安装到 iOS 设备的文件格式;可通过 Xcode 上传到 AppStore。

设备 UDID

udid 是设备的唯一设备识别符,移动广告商和游戏网络运营商往往需要通过 UDID 用来识别玩家用户,并对用户活动进行跟踪。

下发布可执行文件_IOS APP 发布过程中涉及相关概念相关推荐

  1. 制作好的app需要服务器吗,在直播app制作过程中,服务器是如何配置的?

    不论是一对多直播还是一对一直播app制作,关于服务器的配置和成本是大多数运营商比较关心和头疼的问题.一般来说,在直播app运营的每个阶段,所安排的服务器台数和负责的功能都是不一样的.那么如何在有限的成 ...

  2. MPLS转发过程中涉及的相关概念—Vecloud微云

    MPLS术语 • 标签(Label):是一个短而定长的.只具有本地意义的标识符,用于唯一标识一个分组所属的FEC.在某些情况下,例如要进行负载分担,对应一个FEC可能会有多个入标签,但是一台设备上,一 ...

  3. java中的逸出是什么意思,发布和逸出-构造过程中使this引用逸出

    1.什么是this对象 this就是该对象实例本身 2.何为发布和逸出 发布,就是把对象暴露给他人,这就是为什么会需要用到封装,不能预料到其他第三方会如何使用对象,一不小心可能就被玩坏了 逸出,把不应 ...

  4. linux 环境下安装oracle11g方法及安装过程中遇上的问题解决方法

     Oralce安装教程 1.先安装需要的依赖包 找到哪个没有安装,直接yum install XX,直到所有的都安装完成.注意,可能一个包安装了,再次执行检查,还是提示没有安装,那么就不需要管他们了, ...

  5. 使用ionic开发移动app的过程中经验总结

    最近在使用ionic开发几个移动端的模块,使用过程中积累一些经验,在此总结下,以供参考.后续开发过程中如果有其他问题,会随时补充. 这些问题经过归纳总结分为以下几大类: html angularJs ...

  6. win7下安装linux(CentOS)过程中遇到的问题总结

    1.由于学习的需要,按照网上的两篇教程自己动手在win7系统下安装了CentOS6.6版本. 2.无论多么详细的教程,都应该结合自己的软硬件环境小心处理,不然就会造成意想不到的问题. 3.安装linu ...

  7. Web浏览过程中涉及到的协议

    当你要访问一个网页时,首先要在浏览器中输入网址,假如我们在xx校园网内,访问http://www.cfca.com.cn/chanpin/chanpin.htm,它的各部分含义如下: http:// ...

  8. ChatGLM-6B 的部署与微调以及过程中涉及知识总结(7.26更新)

    最近因为工作关系,接触到ChatGLM-6B,自己部署做了一些测试. 参考了网上很多优秀的资料,在此基础上,补充一些自己实践中发现的细节. 部署内容部分绝大部分来自:https://zhuanlan. ...

  9. 解密所有APP运行过程中的内部逻辑

    1. 前言 这年头,apk全都是加密啊,加壳啊,反调试啊,小伙伴们表示已经不能愉快的玩耍了.静态分析越来越不靠谱了,apktool.ApkIDE.jd GUI.dex2jar等等等等已经无法满足大家的 ...

最新文章

  1. Alpha 冲刺 (5/10)
  2. linux学习一天一个命令(5)[rm命令]
  3. windows下使用lighttpd+php(fastcgi)+mysql
  4. python项目-推荐 10 个有趣的 Python 练手项目
  5. 《树莓派学习指南(基于Linux)》——1.4 将Raspbian烧录到SD卡
  6. 计算器的改良(洛谷-P1022)
  7. 如何修改帝国cms文章点击量默认值和成倍增加
  8. oracle导入dmp文件数据,dmp文件导入Oracle数据库
  9. 记一次微信H5全屏播放视频的总结
  10. 13.2 处理静态资源【从零开始学Spring Boot】
  11. java api大全网站
  12. uploader.php,使用uploader上传拍摄的图片php后端代码出错~求助~
  13. win10系统上的appdata是什么文件夹可以删除吗
  14. 游戏策划试题(1)——摘自牛客网
  15. Google Analytics SEO 实时 网站 访问量 统计
  16. 给水管网漏损控制策略国内外差异与思考
  17. NUST 2009-8
  18. mac外接显示器 竖屏 黑苹果_调教Mac外接显示器(开启HiDPI)
  19. [git报错] fatal: reference is not a tree: xxx 以及 Unable to checkout ‘xxx‘ in submodule path xxx
  20. oracle EBS 基于Host并发程序的开发(转)

热门文章

  1. 使用Selenium定位鼠标悬浮出现的下拉菜单
  2. linux时间调整为dst,禁用Linux中的夏令时(DST)更改
  3. [USACO13FEB]Perimeter【DFS / 深搜】
  4. python︱用asyncio、aiohttp实现异步及相关案例
  5. [深度学习] loss不下降的解决方法
  6. Ext2 常见界面界面(grid分页、窗口布局、下拉框级联)
  7. 七、【应用的主要框架】
  8. 2015 年总结 - 十年
  9. MySQL启动过程详解
  10. 七、MySQL中的字符集 - 系统的撸一遍MySQL