前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >app上架需要准备什么以及上架流程

app上架需要准备什么以及上架流程

作者头像
iOS程序应用
发布于 2023-04-17 05:16:17
发布于 2023-04-17 05:16:17
1.9K0
举报

​上架前需要准备的材料:

众所周知,应用市场主要分为两类,一类是App Store,另一类是安卓市场。​

而安卓市场又分为:第三方市场(如:应用宝、360手机助手、豌豆荚),和手机厂商市场(如:华为、OPPO、VIVO、小米等)。​

如果想在这些主流应用市场上架我们的APP,那么上架之前都必须要准备的一项就是:计算机软件著作权。​

计算机软件著作权,是指软件开发者或者其他权利人依据有关著作权法律的规定,对于软件作品所享有的各项专有权利。就权利的性质而言,它属于一种民事权利,具备民事权利的共同特征。​

著作权是知识产权中的例外,因为著作权的取得无须经过个别确认,这就是人们常说的“自动保护”原则。软件经过登记后,软件著作权人享有发表权、开发者身份权、使用权、使用许可权和获得报酬权。​

因为咱们APP要上线应用市场,需要证明这款APP是咱们自己,怎么证明是我们自己的呢?就需要我们对APP申请计算机软件著作权。​

有了软件著作权,除了在发生争议时可以更好的保障自己的权益,从商业角度而言也会让自己的软件更有价值。如果软件有了贸易版权,那么拥有软件著作权的软件价值还将翻倍。​

那么申请了软件著作权就可以上线应用市场了么?针对绝大多数APP产品,只要申请了软件著作权就可以上线,但是对于那些特殊应用的APP产品,还需要办理相应的许可资质才行,因为各大应用市场都自己的审核规范,想要上架APP就必须要满足其规范要求。比如新闻的需要新闻相关的,金融的需要金融相关的。而很多app都要求增值电信业务经营许可证、网络文化经营许可证、广播电视节目制作经营许可证等等。​

下面,请大家搬上小板凳坐好,给大家介绍一下常见的app上架一般需要哪些许可资质的?​

安卓上架流程

1.注册各个市场的开发者账号

准备APP的APK文件、名称、版本号,APP的简介200字左右,一句话简介20字以内,软件截图4-5张(240*320、480*800、320*800、460*960等等),适用平台,软件语言(英文、简体中文、繁体中文等等),软件授权(免费、收费、部分收费等),软件类型,软件官网,软件在其他渠道的下载链接,开发者信息(姓名、扣扣、电话、网址等),还要准备和各个市场友链。​

2.发布APP

注册好开发者账号后,登陆相应平台,找到应用发布按钮或页面,点击进入。 选择需要发布的APP应用类型,游戏则选择游戏,游戏外的app统一选择APP。​

3.上传资料

根据各个应用市场的规则不同一般分为三种提交方式: 1、后台直接提交软件 2、以邮件形式发给他们 3、与网站编辑沟通上传 各应用市场的规则不同,他们的要求也不一样比如:不友链、不收录,收费软件不收录,简单模板插入软件不收录,没有软件授权书不收录,市场存在类似软件不收录,提交不是最新版本不收录等,快速响应并满足对方要求,可以有效节省上传时间。​

4.审核关注

产品在上传之后要保持密切关注,因为有的市场上传成功发邮件,上传不成功却不发邮件;有的成功不发邮件,不成功发邮件;还有的不管成功还是不成功都不发邮件,这就需要我们的开发人员保持密切关注,及时发现问题及时处理,避免浪费时间。​

iOS上架流程

Apple Developer 配置​

developer.apple.com[1] 点击“Account”栏目​

如果该App需要多人协作开发,请进入People进入人员编辑。注意负责上架AppStore的人员需要有管理级别的权限​

然后点击​

1. Certificates:证书​

Certificates作用是为Mac电脑提供开发能力,具有Certificates的Mac电脑能够真机调试、打包、上架APP到app store。​

Certificates有两种环境:开发(Development)环境生产(Distribution)环境。Certificates还有两种类型:SoftwareServices。\​

简单理解:​

(1).开发环境(Development):直接用Xcode调试debug就属于开发环境,在模拟器上debug是不需要Certificates的。但是在真机上调试运行就需要Certificates开发证书,发布到APP Store 需要 Certificates 生产证书。​

(2).生产环境(Distribution):上架app store,打包生成ipa包等都属于生产环境。只要是通过Archive生成都都是属于生产环境。​

(3). Software: 使mac具有相应的开发和发布能力,一台Mac只需要建立一套即可。​

(4). Services: Apple提供的额外服务,最常见的就是消息推送服务,会针对不同的App建立不同的Services Certificates,毕竟每个app需要的Services不同。​

针对Software部分需要注意:

Certificates是对Mac电脑有效的,是根据Mac的CSR请求证书创建的,而不是对app,所以Certificates的开发(Development)证书和发布(Distribution)证书是有数量限制的。超过数量就不能再创建了,除非删除已有的证书。​

只要你这个Mac电脑拥有了Certificates证书,就能用申请Certificates的账号在这个Mac上开发多个app而不需要再重新申请Certificates。所以正确操作是,对一个Mac电脑,只需要申请一套Certificates就好了,在创建第二个第三app时不需要再去创建一套Certificates。​

Services的证书是需要另外创建的,而且没有数量限制,但是还是建议只用一台Mac创建就好,他人合作导出.p12文件给对方Mac安装即可。​

Software和Services都是和Mac绑定的:

Certificates是和Mac绑定的,不能直接copy给其他Mac使用,但是Certificates可以导出.p12给其他Mac电脑用的,导出的.p12同样具有测试打包和发布的能力。如果多人协同开发,第二个Mac也是不需要再去申请一套Certificates的。用他人Mac电脑上Certificates导出的.p12文件安装上即可。​

Certificates:证书

(1) 通过Mac钥匙串管理工具生成CSR请求文件,用于申请Certificates,与Certificates绑定​

这里需要注意,不要选中证书列表中的某个证书,否则菜单就不是这个。​

邮箱地址填一个,选择存储到磁盘,会正常一个.certSigningRequest文件,重命名一下,便于识别。​

(2) 申请开发Development证书 先创建software部分,再创建推送证书部分。​

选择iOS Development ,创建iOS Development 开发证书。Xcode11以上可以创建Apple Development 证书.​

continue 下一步​

选择刚刚的证书文件,​

下载下来,名称是​

然后双击按钮,打开钥匙串管理工具,在我的证书就能看到安装了,需要注意的是现实的名称不是文件名,是你开发者账号的个人team名称,里面的秘钥名称就是你刚刚填写的名称​

(3) 申请iOS Distribution (App Store and Ad Hoc)生产证书​

方法与上面一样,只是选择的时候选iOS Distribution (App Store and Ad Hoc)类型​

然后上传CSR文件,Register,Download, 该名称。​

(4) 推送证书申请​

推送证书的申请与第二部分是一样的,只是中间会让选择证书绑定的App id。(这里需要先创建Identifiers,查看步骤2.Identifiers:App 身份证) 同样,需要申请Development和Distribution两种环境。​

选择Mac钥匙串工具导出的.certSigningRequest文件,与这台Mac绑定。​

2.Identifiers:App id​

iOS每个APP都有自己唯一的身份证(Identifiers)。app的身份证就在这里申请,也就是app的唯一标识。​

填写app描述,和Bundle ID​

关于Bundle ID:十分重要的东西,可以理解为app的身份证号码。所有app都是唯一的。为了避免重复和辨识,一般都采用反域名的格式+app名称。​

如图所示。这里一经申请变无法更改,在每个项目建立时就应该事先定义好app的Bundle ID。Bundle ID除了这里申请app需要用到以外,在申请第三方服务:如微信登陆、友盟推送、google服务等等都需要使用到Bundle ID与你的app绑定。所以,Bundle ID非常重要。​

一般,我们会采用Explicit(明确的)Bundle ID标识,而不会采用Wildcard(通配符)来定义Bundle ID。如果采用了,会导致推送这部分是没用的。​

然后Register,回到 identifiers列表页可以看到刚刚创建的。​

3.Devices: 设备列表​

app的每个设备都有唯一的udid。将udid加入到Devices列表后,这些设备具有debug测试和ad hoc安装能力。​

反正,需要测试的iPhone,iPad都需要加入到这个列表里面。​

Devices设备列表是针对开发者账号,所以也只需要添加一次。​

如何查看设备的udid。有很多方法,​

1.Xcode查看(开发者查看自己的)​

2.用蒲公英 www.pgyer.com/tools/udid[2]​

添加设备列表​

4.Profiles: 描述文件​

描述文件Profiles将team、Identifiers、Certificates、Devices等信息联系起来。​

Profiles同样分为两种环境:开发(Development)环境发布(Distribution)环境,不同的环境需建立不同的描述文件Profiles。​

描述文件是这对app绑定的,所以每个APP都会建立相应的一套描述文件。但是描述文件可copy给其他Mac使用,但是对于的Mac需要安装相应的Certificates导出的.p12文件。​

创建描述文件​

将上面创建的所有信息联系起来,供xcode使用。同样分别创建Development和Distribution两种环境的描述文件​

选择App ID​

选择对应的 certificates证书,开发对应开发,生产对应生产,注意是当前项目的证书,不要选择其他项目的证书。​

开发环境和Ad Hoc需要选择需要测试的Devices设备,选中的Devices才具有测试和安装能力。全选即可。​

然后下载,重命名。描述文件不需要安装​

至此所有准备的证书和描述文件都创建完毕。​

5.Xcode配置​

(1)登录Xcode开发者账号,这一步容易忘记,特别是新的苹果账号,当然也可以到里面选择证书再配置​

(2) 配置证书及签名 首先需要取消Automatically manage signing。否则是XCode自动管理证书,会自动创建证书和bundle id等。这样会不利于证书管理。我这里就采坑了,导致自动安装了其他的证书,导致生产证书# Xcode Signing certificate is invalid when build on ext device[3] 只好到钥匙串中删除,刚刚自动按钮的证书,退出Xcode,重新打开就可以了。配置profile描述文件,需要为debug和release两种环境分别配置描述文件。选择3.6章节里创建的对应的描述文件,debug对应development, release对应Distribution。​

provisonint Profile 文件选择,开发对应着开发,生产对应着生产。​

此处可能会有个小坑,与钥匙串安装的cer 不对应,Buuld Settings 重新选择一下就可以了​

调试一个是模拟器调试一个真机调试(数据线连上苹果手机)​

6.App Connnect 注册APP​

套装ID 就是申请的indentifiers,选择​

填写App资料,需要注意几点:​

APP图标时,图标中不能包含alpha通道或者透明度;LanchImage的图片格式只能是png格式,jpg格式Xcode无法加载成功;填写联系人的时候,需要加区号,比如中国 需要+86;App预览与截屏图片,需要6.5英寸和5.5英寸就行,UI设计图的时候:5.5英寸 1242 × 2208 ;6.5英寸 1242 × 2688​

7.多人协作开发证书管理​

(1)多台Mac运行相同iOS项目。​

是与生成csr的mac电脑绑定的,其他的Mac 电脑无法安装,这样其他的Mac电脑就无法真机测试打包这个iOS项目了。但是,我们可以在钥匙串中导出.p12文件给其他的Mac安装,安装后这台Mac也具有同样打包测试发布能了。开发需要导入developer证书,发布需要导出Distribution证书。选择对应的证书,导出​

最好重新命名方便识别。.p12文件其实就加密的.cer证书。可以copy给其他Mac安装。\​

第二台Mac安装.p12后,进行第四章的XCode配置后即可具有开发、测试、发布iOS的能力​

(2)多人多台Mac开发相同ios项目 如果不方便把开发者账号和密码给其他人用,需要把对应开发人员加入到 开发者成员中。​

随后新用户会收到一封邀请邮件,同意后即会加入开发者计划中。新用户登陆苹果开发者中心,会看到自己加入的team​

新用户用刚刚导出p12文件在Xcode上配置就可以协同开发ios项目。​

8.APP打包上架​

(1)打包并上传IPA包 首先确保证书正确、profile描述文件正确。​

需要注意的是build构建号 每次都是唯一的,version为版本号,多个版本号可以属于同一个version,​

flutter项目也可以直接 改pubspec.yaml文件 version字段 如:1.0.0+1​

设备选择:​

flutter项目需要注意:需要执行 flutter build ios --release --no-codesign,需要注意的是是在flutter外层目录路径下执行,而不是ios目录路径,(我习惯在vscode中跑命令)​

Product -> Archive:​

直接Distribute App (如果不放心可以先Validate App)​

进入Select a method of distribution(打包方式选择)界面:​

App Store:App Store上架包用​

Ad hoc:发布测试包用,如蒲公英发布​

Enterprise:企业包用​

Development:开发包用​

根据自己的证书和描述文件选择,在这里选择App Store,点击Next​

Select a destination : 选择是直接上传还是导出,直接上传就可以​

Select certificate and iOS App Store profile: 之前创建的描述文件​

然后等待上传​

上传成功之后,需要进入​

看到刚刚提交的版本,然后点击App Store ,如果第一次发版,直接在 “构建版本” 选择对应的版本文件,如果是已经上架成功,需要更新版本​

填写完整的信息,提交审核。​

上架之后App Store还搜索不到APP如何下载体验

如果已经上架,但是App Store还搜索不到APP,刚刚通过的需要等24小时,可以去「七麦数据」查看​

证书我们这边可以借助辅助工具appuploader​

Appuploader可以辅助在Windows、linux或mac系统直接申请iOS证书p12,及上传ipa到App Store,最方便在Windows开发上架没有苹果Mac电脑的开发者!配合本教程使用,可以快速掌握如何真机测试及上架!​

点击苹果证书按钮​

​​

点击新增​

​​

输入证书密码,名称​

这个密码不是账号密码,而是一个保护证书的密码,是p12文件的密码,此密码设置后没有其他地方可以找到,忘记了只能删除证书重新制作,所以请务必记住密码。还有为了安全起见,密码不要太简单。 证书名称是你为了在证书列表里面便于区别的一个字符,自己好辨识就可以,尽量是是字母和数字之类​

选择证书类型​

带distribution的是发布类型,带development的是开发类型。​

apple类型=ios+mac,所以开发时选择ios app development和apple development 类型都是可以的​

选择bundle id​

只有部分类型的证书需要选择bundle id,例如推送证书。因为大部分证书是不和app关联的。而是通过描述文件profile文件关联app。​

使用appuploader同步服务​

如果期望制作好证书后在其他电脑上同样可以下载到这个证书,或者和你同事同步此证书,则需要勾选使用appuploader服务同步。否则您需要手动管理p12文件在不同电脑之间的传输,并且一但创建下载后,无法在其他电脑下载,只能手动复制文件过去。一般情况下,推荐使用appuploader服务同步。​

证书类型说明​

IOS开发选择apple development或者ios app development 类型 ios 发布选择 apple distribution或者 ios distribution (app store and ad hoc) 开发推送证书选择 apple push notification service ssl (sandbox) 发布推送证书选择 apple push notification service ssl (sandbox & production)​

其他证书不是很常用,可以自行百度各种证书说明​

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2023-02-20,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • ​上架前需要准备的材料:​
    • Apple Developer 配置​
  • 1. Certificates:证书​
  • 2.Identifiers:App id​
  • 3.Devices: 设备列表​
    • 添加设备列表​
  • 4.Profiles: 描述文件​
    • 创建描述文件​
  • 5.Xcode配置​
    • 调试一个是模拟器调试一个真机调试(数据线连上苹果手机)​
  • 6.App Connnect 注册APP​
  • 7.多人协作开发证书管理​
  • 8.APP打包上架​
    • 使用appuploader同步服务​
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档