2023苹果商务管理模式分发app完全指南

news2024/12/30 1:25:52

随着苹果对企业级开发证书的管控越来越严格,越来越多的企业级证书到期后,苹果不再予以续约,但是很多app都有企业内部分发需求,不希望自己的应用被公开上架。这时候,我们可以参考苹果官方的建议,使用商务管理模式来分发我们的内部应用。

一、效果

先说最终效果,使用商务管理模式分发app成功以后,我们会得到一个excel,里面包含兑换码和兑换链接,如下所示:

用户使用苹果手机打开App Store,点击设置,打开找到兑换礼品卡或代码一栏,输入兑换吗,兑换下载即可。或者在浏览器输入兑换链接,会自动打开App Store并兑换下载,下载后即可正常使用。

下面是截止目前为止最新(2023年5月)的操作方法。

二、步骤简述

1,注册苹果商务账号

2,设置苹果商务管理组织

3,设置开发者账号

4,App Store Connect 新建应用与设置

5,Xcode打包应用并上传到App Store Connect

6,App Store Connect选择构建版本,填写应用相关信息,提交审核

7,通过苹果的应用上架审核

8,在商务账号下找到上传的应用,下载兑换分发excel文件

9,用户在App Store兑换下载

这是设置商务分发的完整步骤,正在进行的小伙伴可以按照步骤找到自己正处于哪一步。

三、详细说明

接下来对每一步进行详细描述,避免大家踩坑:

1,注册苹果商务账号

首先申请者身份必须是组织,不接受个人身份申请。我们需要先准备好以下资料:

  • 邓白氏编码

    (如果有企业账号的话,就不需要重新再申请了,可以和企业账号公用一个邓白氏编码)申请邓白氏链接 https://developer.apple.com/enroll/duns-lookup/#!/search

  • appleId

  • 公司相关的网站域名

  • 域名邮箱,就是你公司的企业邮箱,要和开发者账号的邮箱区分开,最好用一个新邮箱

  • 公司的座机电话

  • 你的个人信息、验证联系人的个人信息(不能和你的个人信息相同)

审核时间一般 2-3 天,最长不超过 7 天。苹果会在验证邓白氏编码、公司信息等通过后,致电您公司的座机(可能是申请邓白氏编码的座机,也可能是申请苹果商务时填写的座机),和验证联系人通话。

苹果和验证人通话时,可能会询问下列问题:

  • 验证人姓名、职务(职务应该为 CEO、COO、IT 经理等管理者,普通员工不具备做验证人的权限)

  • 正在申请苹果商务管理账号的员工,是否可以代表公司同意苹果的协议(如果回答不能,苹果会拒绝通过审核)

  • 申请苹果商务管理账号的目的(可以回答:您公司的员工需要使用定制应用、其他公司为您的公司开发了定制应用等。如果回答作为开发者为其他公司开发并分发定制应用,苹果可能拒绝通过申请,并提示苹果商务账号应当由你的客户自己去申请。

2,设置苹果商务管理组织

如果电话验证通过,苹果会向验证人、申请人的邮箱发送确认邮件。点击邮件的【开始使用】按钮(要及时点击,超过一周即过期),跳转到管理式Apple ID的创建表单,填写该苹果商务管理账号的管理员信息,姓名、工作邮箱、密码、手机号码等信息。

tips:因为这里需要新创建一个“管理式 AppleID”,所以此处的邮箱不能填写提交申请时的 AppleID 或者其他已经存在的 AppleID,需要一个新的以公司网址为后缀的工作邮箱地址。

填好信息后点击继续。随后页面会跳转至输入短信和邮箱验证码的页面,根据提示填入验证码,并点击继续按钮。然后会出现下图所示的提示信息:

最后,页面会显示条款与条件,必须同意苹果的使用条款才能使用苹果商务管理账号。 勾选所有协议,点击右下方同意按钮。

我们使用注册好的管理式Apple ID登陆商务管理网站,在【设置】>【注册信息】页,可以看到我们的组织信息:

我们把组织ID和组织名保存好,在4.2步会用到。

3,设置开发者账号

如果我们的组织之前就有开发者账号,那就直接使用即可;如果没有就要注册一个新的开发者账号了。

账号的注册过程我们不在本文讲述,只贴一个不同类型的开发者账号对比:

账号类型费用发布AppStore申请条件证书类型协作人数
个人账号Individual99美元/年可以无限制Ad-hoc,App Store1(开发者自己)
公司账号Company99美元/年可以邓白氏编码Ad-hoc,App Store多人,可设置团队
企业账号Enterprise299美元/年不可以邓白氏编码Ad-hoc,In House多人,可设置团队
教育账号0可以只能教育机构或者学院内部使用,必须是苹果iOS开发者计划授权机构,不能对外正式发布iOS应用程序Ad-hoc,App Store未知(查不到相关资料)

假设我们为客户开发应用,由客户提供开发者资质,那我们需要让客户把我们拉入开发者团队。

4,App Store Connect 新建应用与设置

打开https://appstoreconnect.apple.com/,登陆自己的开发者账号。这里要使用具有管理权限的账号登陆,如果是仅有开发权限的账号,那么登陆成功了你也打不开我的App模块(点击以后会自动跳回首页)。

4.1新建app

在我的App模块,点击+号,选择新建app

我们选择ios平台;

起一个不会重复的app名称(常见的名称很容易重复);

语言选取简体中文;

套装id要使用和Xcode项目一致的bundleId,因为是第一次使用App Store Connect,所以我们要点击这里的【证书、标识符和描述文件】来注册一个bundleId。这里的bundleId要注册一个不同于之前企业证书分发的新bundleId,因为会重复。Capabilities一般选择Access WiFi Information、Push Notifications即可,其他的按自己应用需求来选。注册好这个套装id以后,记得把证书文件(.p12文件)、密码和.mobileprovision文件保存下来,下一步会用。注册好以后返回到新建页面,选择你刚注册好的套装id;

SKU输入一个你的应用的专属的id;

用户访问权限设为完全访问权限。

点击创建即可创建出一个新的app。

4.2设置价格与销售范围

点击这个app进入该app的信息管理页面,点击【价格与销售范围】进行设置。

app定价与销售范围都选择适合自己应用的内容,一般都是中国大陆;

最重要的是App分发方式,要勾选【私人—在Apple商务管理…】,填写我们在商务账号上注册的组织名称与组织id。

点击【存储】保存即可。

4.3设置app管理员

如果我们自己本身就是这个管理权限的开发者账号拥有者,自己填写app详细信息的话,那不必看这里。如果我们app详细信息不由自己来填写(因为信息较为繁琐),而是由团队其他人来写的话,需要在【用户和访问】那里,找到团队成员X,编辑用户访问权限,将X设为我们新建app的管理员,这样X就可以在第六步进行应用详细信息的填写了。

5,Xcode打包应用并上传到App Store Connect

5.1更新macOS与Xcode到最新版本

这一步看似没必要,但其实是最重要的!!!因为如果你不更新,到了最后一步上传,苹果会提示你,应用必须支持最新的ios SDK才能上传,要想支持最新的ios SDK那你就必须使用最新的Xcode,如果要使用最新的Xcode,那你就要有最新的Mac OS。为了不浪费时间,请第一时间保证你的系统和Xcode是最新版本!我现在(2023年5月)最新的ios SDK是ios 16.4,Xcode版本是14.3,macOS Ventura 13.3,这一版本支持了iphone14的全系列产品。

5.2证书导入与选择

将上一步我们得到的证书文件导入钥匙串,成功后打开Xcode,在【TARGETS】>【Signing & Capabilities】下,填写Bundle Identifier,值与上一步设置的套装id保持一致;Provisioning Profile选择我们上一步得到的mobileprovision文件,会自动带出下方的Team与Signing Certificate信息。

5.3Info.list设置必要的权限提示信息与加密信息

这里本来是不需要这一步的,但是我在上传后遇到了一些问题与权限提示和加密信息有关,所以最好在这一步就处理好这方面的问题,避免反复操作。

这是Info.list需要注意的两项内容:

这里如果权限申请描述信息没写,是不能通过AppStoreConnect的审核的,原本我的权限申请了位置信息权限,NSLocationAlwaysUsageDescription和NSLocationWhenInUseUsageDescription都是有的,但是审核时发邮件提示NSLocationWhenInUseUsageDescription也必须要有。

指定ITSAppUsesNonExemptEncryption的原因时是上传成功以后,选择构建版本时,还需要手动指定出口合规证明信息才行,比较麻烦,所以我们直接在info.list就做好制定。

5.4应用打包与上传

应用开发完成后,Xcode点击【Product】> 【Archive】进行打包操作,打包完成后,选择分发方式为【App Store Connect】,一路向下next,期间需要选择一次开发者证书和描述文件,到了最后一步选择【Upload】上传到App Store Connect即可,成功如下图。

5.5准备应用截屏与隐私政策

这是下一步需要的资料,放在这一步是因为在这里做好准备比较方便。

应用截屏:

首先需要iPhone5.5英寸与6.5英寸的显示屏截屏,每个尺寸准备4、5张应用截图。

截图我们直接使用对应屏幕大小的ios模拟器点击截图即可:

  • 5.5英寸对应机型:6plus、6s plus、7plus、8plus
  • 6.5英寸对应机型:iphone Xs Max、iphone 11Pro Max

隐私政策:

现在主流的app应用合规隐私政策都需要做成网页对外提供一个url来访问了,苹果也不例外。所以我们需要一份基于自己app的隐私政策文档,然后把它转为html网页放到一个对外的服务器上,直接访问这个url链接可以看到该应用的隐私政策。

6,App Store Connect选择构建版本,填写应用相关信息,提交审核

6.1选择构建版本

这时我们登陆App Store Connect点进去对应的app界面,发现状态还是准备提交?我们的上传的app包去哪了呢?往下滑动,找到【构建版本】,这里应该有你刚刚上传好的app文件,需要勾选构建版本才行;如果在这里也没看到app文件,那说明你上传的文件可能有点小问题。点击【TestFlight】,来这里查看你的ios构建版本。

可以看到有一个缺少出口合规证明的警告,这里就是我们在5.3那一步做的操作意义所在,如果你做过了那就不会有这个警告,如果没做也没事,手动选择你的app使用了哪种类型的加密算法就可以了,选择后回到App Store下的构建版本,这时就出现了可供你构建的应用版本。

6.2填写应用相关信息

这里我们需要填写的东西还是很多的,我们只说必填项:

  • ios预览与截屏

    还记得5.5步骤我们保存好的应用截图吗,两个尺寸分别上传好

  • 描述

    对你 App 的描述,用以详细说明特性和功能。

  • 关键词

    添加一个或多个关键词以描述你的 App。关键词将使 App Store 搜索结果更加准确。关键词之间用英文逗号或中文逗号(或两者混合使用)分隔。

  • 技术支持网址 (URL)

    你的 App 技术支持信息网址 (URL)。该网址 (URL) 会在 App Store 中显示。

  • 版本

    你要添加的 App 的版本号。编号应遵循软件版本规范。

  • 版权

    拥有你的 App 专有权的人员或实体的名称,前面是获得权利的年份(例如“2008 Acme Inc.”)。请勿提供网址 (URL)。

  • App 审核信息

    如果需要你的app使用需要登录的话,那就要提供一个测试账号与登录密码,联系信息也要填好

  • 备注

    备注这一项不是必填的,但是如果你的应用有某些特殊之处,需要在这里说明。这里写对审核过程会有所帮助的 App 额外信息例如,App 特有的设置,它仅对审核人员可见,最终不会在app store下载界面被人看到。

  • 隐私政策

    链接至你的隐私政策的网址 (URL)。所有 App 都必须提供隐私政策。还记得5.5我们准备的隐私政策url吗,填上它。

  • 收集数据类型

    根据你的app的实际使用数据,如实填写从app收集的数据类型以及数据是否与用户身份关联、用途、是否用于追踪目的等信息。

填写完以后点击提交审核即可。

7,通过苹果的应用上架审核

我们已经提交了应用上架审核,这时候就静静等待审核结果吧,一般是在一个工作日以内就会有反馈。我们在【App 审核】界面可以看到审核的结果,一般来说很难一次通过,根据苹果的要求来进行修改提交就好,如果有你不认同的驳回理由,也要据理力争。总之,来回沟通以后,如果审核成功了,会看到一个已批准的标识。

8,在商务账号下找到上传的应用,下载兑换分发excel文件

审核成功后,登陆我们的商务管理账号,在【自定App】下就可以看到我们的app了,这期间也可能会有数小时的延迟。

在【购买许可下】,选择许可类型为兑换码,设置兑换码的数量,单次兑换码购买量需要在1-25000之间。注意,同一件免费项目的订购数量每周不能超过25000份。如果想突破25000的限制,可以给苹果商务账号多增加一些子账号,每个子账号每周都可以买25000个兑换码。

点击【获取】按钮,会在下方显示出刚刚购买的兑换码,点击右侧下载按钮,就可以下载到包含兑换码和链接的excel文件了。(获取成功后,可能下载按钮不会立刻显示,可能需要等待几分钟)。

9,用户在App Store兑换下载

兑换的步骤我们在开头的【效果】中已经讲过,不再赘述。

这里再说一点,App升级后,之前购买的兑换码仍然有效,用户使用之前的兑换码下载到的app是升级后的最新版本
已经下载的用户可以通过App Store自动或手动升级(取决于用户的设置),具体方式和App Store下载的应用更新方式相同。

四、结尾

以上就是Apple商务管理模式分发app的全部步骤了,里面包含了目前最新(2023年5月)的详细步骤说明与踩坑经验,希望对大家有所帮助。感觉不错的话,给我点个赞吧~

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/514205.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

繁华三千如梦散,红尘俗世要释怀

岁月的折痕在眼角盛开,一深,一浅,交错着旧时光的梦。 梦里是累积的回忆,厚厚的凌乱一地。 那些,都是悄悄溜走的充满烟火气的日子。 生活像是流水账一般,就这样过了,一天又一天,一年…

ConcurrentHashMap进阶面试题

ConcurrentHashMap 1.8的优化 存储的时候的优化写数据的时候加锁的优化扩容时的优化,有一个协助扩容的概念计数器的优化,在记录元素个数时,使用的类似与longAdder的形式,不会过度消耗CPU资源 为什么多线程情况下longAdder会比ato…

人体工学椅真的很舒服

前言 人体工学椅是现代办公室中必不可少的家具之一。作为一款专门设计为舒适、健康和高效的椅子,它为人们提供了更好的工作和学习体验。 人体工学椅的设计理念是以人体工程学为基础,根据人体骨骼生理学、生物力学和心理学等多个角度进行科学的设计。它…

公路工程公路bim数据与GIS数据融合应用

摘要: BIM技术因其自身的协同性、可模拟性以及可视化优势,能够补足传统项目管理存在的短板,成为新一代项目管理模式。本文将运用BIM技术打造一体化管理平台,达到项目管理的智能化管理水平,实现更易维、更安全、更节能…

谈一谈数据库设计原则

到开发的时候才发现,原来后端不是最难的,最难得是数据库的设计,往往有时候开发新模块的时候才发现,之前数据库设计的一些问题,今天就来简单谈谈数据库设计方面的一些原则。 数据库范式 ​ 通过将数据结构分解成小的部…

第五十四章 Unity 移动平台输入(下)

本章节我们介绍一个模拟器插件。这种插件比较多,比如EasyTouch,Lean Touch,Joystick Pack等等。EasyTouch是一个使用非常广泛的插件,支持点击,拖拽,遥感等很多常用功能。不过遗憾的是,该插件已经…

[JAVA]直接插入排序

插入排序就像玩扑克牌一样,把元素按照大小插入到一个已经排好序的序列中,直到全部元素排好。 假设我们拿到了一个数组,请问我们该从哪一个元素开始着手于直接插入排序呢? 答案是:第二个元素 我们可以假设,第…

微服务测试如何测试?

本文将讨论微服务测试的重要性、挑战和最佳实践。 微服务架构是一种越来越流行的构建复杂分布式系统的方法。在此体系结构中,大型应用程序被分成较小的、独立的服务,这些服务通过网络相互通信。微服务测试是确保这些服务无缝协同工作的关键步骤。本文将…

《微服务实战》 第五章 Spring Cloud Netflix 之 Ribbon

前言 Spring Cloud Ribbon 是一套基于 Netflix Ribbon 实现的客户端负载均衡和服务调用工具,其主要功能是提供客户端的负载均衡算法和服务调用。 1、负载均衡 负载均衡(Load Balance) ,简单点说就是将用户的请求平摊分配到多个…

【论文阅读19】GloVe: Global Vectors for Word Representation

论文十问十答: Q1论文试图解决什么问题? Q2这是否是一个新的问题? Q3这篇文章要验证一个什么科学假设? Q4有哪些相关研究?如何归类?谁是这一课题在领域内值得关注的研究员? Q5论文中提到的解决方…

Packet Tracer - 使用 CLI 配置并验证站点间 IPsec VPN

Packet Tracer - 使用 CLI 配置并验证站点间 IPsec VPN 地址分配表 设备 接口 IP 地址 子网掩码 默认网关 交换机端口 R1 G0/0 192.168.1.1 255.255.255.0 不适用 S1 F0/1 S0/0/0 (DCE) 10.1.1.2 255.255.255.252 不适用 不适用 R2 G0/0 192.168.2.1 255.…

Oracle数据库安装教程,并实现公网远程连接

文章目录 前言1. 数据库搭建2. 内网穿透2.1 安装cpolar内网穿透2.2 创建隧道映射 3. 公网远程访问4. 配置固定TCP端口地址4.1 保留一个固定的公网TCP端口地址4.2 配置固定公网TCP端口地址4.3 测试使用固定TCP端口地址远程Oracle 前言 Oracle,是甲骨文公司的一款关系…

黑客的真实生活是怎样的?他们真的能挣很多钱么?

作者:l浪费的时间 黑客这一群体,在普通人眼中就是神一般的存在。 黑客差钱吗?他们不差钱。当然是靠装逼活着,很多黑客只想钻研技术攻破个大公司玩玩,搞得轰轰烈烈,就能吹一辈子牛了。 一、黑客靠什么赚钱…

Nginx静态资源防盗链

1.什么是资源盗链 简单地说,就是将别人的资源用到自己的页面展示给用户。 2.效果演示 1)准备图片 这两张图片直接在浏览器中访问都是可以打开的。 github图片地址:https://github.githubassets.com/images/modules/site/home-campaign/her…

linux命令sort, uniq ,tr, cut,split,paste,eval

sort 以行为单位对文件内容进行排序,也可以根据不同的数据类型来排序。比较原则是从首字符向后,依次按ASCII码值进行比较,最后将他们按升序输出。 语法格式: 格式1 sort [选项] 参数 格式2 cat file | sort 选顶选项含义-n按照数字进行排序…

MySQL8.0安装教程(很详细)

1.进入mysql官网 2.点击DOWNLOADS去下载页面,页面往下滚动,点击MySQL Community (GPL) Downloads 下载社区版 3.点击MySQL Installer for Windows–>选择window安装版 4.选择下面这一项,点击Download 5.点击No thanks, just start my down…

kali 装pwngdb报错版本不兼容

小白垃圾笔记而已,不建议阅读。 报错是这个: 安装pwndbg的时候报的错。 这个具体不知道啥原因,但是还好有师傅,其实这样装好后是可以用的,只是不兼容,可能有些功能会受限制。 师傅这样说: pwn…

权威报告:2030年企业将全面上云,隐私计算可保障数据上云安全可信

近日,国际权威机构Forrester发布了《亚太地区隐私保护技术(PPTs)现状》报告(简称“报告”)。报告显示,隐私保护技术在亚太地区发展强劲,76% 的决策者正在采用隐私计算来保护隐私和数据安全。For…

CMake的安装和使用

Windows平台 1. 下载CMake和MinGW,并安装。 (1)CMake下载和安装: 下载地址:Download | CMake 可以直接下载如下安装程序进行安装: 安装时注意,选择将cmake命令加入系统环境变量,…

python并发编程: Python速度慢的罪魁祸首,全局解释器锁GIL

python速度慢的两大原因 动态类型语言,边解释边执行 由于GIL,无法利用多核CPU并发执行 GIL是什么? 全局解释锁(Global Interpreter Lock,GIL)是计算机程序设计语言解释器用于同部线程的一种机制&#xff0c…