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


Warning: Invalid argument supplied for foreach() in /data/cxweb/www/gupowang.com/public/article/view.html on line 71
1个月前

上架前需要准备的材料:

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

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

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

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

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

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

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

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

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

1、短视频APP

近年来,短视频发展迅速,短视频APP的下载量在各大应用商店也名列前茅,尤其以抖音、快手为代表,火爆的同时也面临着国家监管的严格,从分类上来看,短视频属于互联网文化产品之一,因此短视频APP上架前需要有:

《ICP许可证》:向广大用户综合提供互联网信息业务和增值业务的电信运营商,是由各地通信管理部门核发的。国家对提供互联网信息服务的经营性ICP实行许可证制度 (经营性ICP主要是指利用网上广告、代制作网页、出租服务器内存空间、主机托管、有偿提供特定信息内容、电子商务及其它网上应用服务等方式获得收入)

注:短视频有打赏收费业务,需要办理ICP许可证。

《网络文化经营许可证》:按照规定,经营性互联网文化活动是指以营利为目的,通过向上网用户收费或者以电子商务、广告、赞助等方式获取利益,提供互联网文化产品及其服务的活动。需要办理《网络文化经营许可证》。

信息网络传播视听节目许可证:是指可以制作、编辑、集成并通过互联网向公众提供视音频节目,以及为他人提供上载传播视听节目服务的活动。

注:此证比较难办,需要国有企业控股才行,一般企业几乎没有办理,所以刚开始不需要考虑它。

《广播电视节目制作经营许可证》:是指从事微电影、专题、专栏、综艺、动画片、广播剧、电视剧等广播电视节目的制作和节目版权的交易、代理交易等活动的行为,也是拍摄电视剧必备资质。

2、游戏APP

游戏类APP也是目前市场下载量和热度较高的APP类型之一,作为消遣娱乐的主要方式,游戏APP的数量和种类也是出现暴涨的局面。游戏APP的上架需要的资质证书有:

《网络文化经营许可证》:游戏类APP同样属于互联网文化产品,因此也需要办理《网络文化经营许可证》。

注:国家文旅部于2019年对网络游戏类网络文化经营许可证暂停审批了。

《ICP许可证》:参考上面。

《游戏运营备案》:是指文化部要求在游戏上线运营后的30日内到文化部做游戏运营备案。对于不同游戏类型备案要求和备案材料也都不同,需要企业根据具体的要求进行备案。

《游戏版号》:国家新闻出版广播电影电视总局批准相关游戏出版运营的批文号的简称,是由国家新闻出版广播电影电视总局审核发布的。目前游戏版号不是很容易办理。

3、电商APP

电商APP是随着人们消费习惯和消费方式的转变迎来的新一波的高潮,传统企业和商家纷纷布局线上商城,随着线上支付方式和现代物流体系的日臻完善和成熟,电商APP仍具有较大的市场发展前景。电商APP上架需要的资质主要有:

《EDI许可证》:根据国家规定,电子商务和在线交易数据处理网站必须办理EDI证,否则就属于非法经营。

增值电信业务经营许可证:是指利用公共网络基础设施提供的电信与信息服务的业务的许可证。国家对电信业务经营实行许可制度。所有经营性网站平台都需要办理。

如果第三方电商平台中的产品涉及到食品、药品、医疗器械、出版、游戏、视频等等,还需要办理相应的《食品经营许可证》、《互联网药品信息服务许可证》或《互联网药品交易服务许可证》、《广播电视节目制作经营许可证》、《网络出版服务许可证》、《出版物经营许可证》、《网络文化经营许可证》中的虚拟货币交易、《信息网络传播视听节目许可证》等等。

4、医疗APP

医疗APP的分类也比较多,有互联网医疗、线上就诊、医疗器械和医疗药品买卖等不同的分类,要求的资质也是不一样的,简单为大家梳理一下:

  • 就医服务:市级卫生和计划委员会批文医疗

  • 保健信息服务:《增值电信业务经营许可证》或《电信与信息服务业务经营许可证》

  • 公立医疗机构:《医疗机构执业许可证

  • 私立医疗机构:《增值电信业务经营许可证》及《医疗机构执业许可证》

  • 医疗器械信息展示:《互联网药品信息服务资格证》

  • 医疗器械生产企业:《医疗器械生产许可证

  • 医疗器械经营、销售:《医疗器械经营许可证》

5、理财APP

随着人们收入的增加,对于理财的需求也相应的增加,这就促使理财类APP不断涌现,由于涉及到财产安全,所以理财类APP上架审核更为严格,最主要的资质是:

金融许可证:金融许可证是指中国银行业监督管理委员会(以下简称银监会)依法颁发的特许金融机构经营金融业务的法律文件。金融许可证的颁发、更换、扣押、吊销等由银监会依法行使,其他任何单位和个人不得行使上述职权。金融许可证适用于银监会监管的、经批准经营金融业务的金融机构。

《资金托管协议》:第三方支付平台或者是与银行签署的资金托管协议。如果有借贷资质的要提供第三方借贷单位的资质(需提供三家以上)。

营业执照经营范围:一般要含有“互联网金融、资产管理、投资管理、投资管理咨询、实业/项目投资,投资咨询”等。

6、其他APP

打车、租车:《网络预约出租汽车经营许可证》、《汽车租赁经营许可证》;

音乐:《网络文化经营许可证》或《信息网络传播视听节目许可证》;

小说:《互联网出版许可证》;

招聘:《人力资源服务许可证》;

时政新闻信息:《互联网新闻信息服务许可证》;

FM/电台:《信息网络传播视听节目许可证》或《广播电视节目制作经营许可证》;

有声读物:《网络文化经营许可证》和《信息网络传播视听节目许可证》;

动漫:《互联网出版许可证》和《网络文化经营许可证》;

电商:《增值电信业务经营许可证》或《电信与信息服务业务经营许可证》;

食品百货:《食品经营许可证》和《酒类零售许可证》《食盐零售许可证》;

社交聊天:《增值电信业务经营许可证》或《电信与信息服务业务经营许可证》;

直播业务:《信息网络传播视听节目许可证》或《网络文化经营许可证》等;

婚恋:《增值电信业务经营许可证》或《电信与信息服务业务经营许可证》;

问答:《增值电信业务经营许可证》或《电信与信息服务业务经营许可证》;

App上架各大应用市场需要哪些资质?

这里以安卓市场为例,苹果市场比较单一,大家自行去苹果官方开发者查看官方文档即可。目前国内安卓市场分为第三方市场和手机厂商市场,第三方市场主要就是应用宝,360手机助手,百度,应用宝等等,手机厂商市场就是华为,小米,VIVO,OPPO,三星等。

1、应用宝(腾讯自家产品)

2017年9月18日以后应用上架要提交软件著作权证明(原件扫描)或者该应用PC官网ICP备案截图+官网地址+2个以上的应用宝以外市场上线后台状态截图代替,软著后续补上。

需要注意的是开发者QQ号码一旦注册不能变更,因此建议使用法人的QQ号码,以免遇到员工离职等情况造成不必要的麻烦。参考地址:open.qq.com

2、360手机助手

企业操作人要进行实名认证,要提供法人身份证号,银行卡号及预留的手机验证码验证。不同行业有不同的资质要求,但是以下这三个文件是所有应用都必须具备的:软件著作权文件》、《ICP证》、《ICP备案证明

应用上架必须要提交360的保证函。同样,开发者帐号,建议使用法人的邮箱或手机,以免遇到员工离职等情况造成不必要的麻烦。参考地址:dev.360.cn

3、百度手机助手/安卓市场/91助手开发者平台地址:app.baidu.com

4、手机商家应用市场

以下市场是上架时需要提供软件著作权证书的:vivo 应用商店、OPPO 软件商店、华为应用市场、小米应用商店。这些市场有的是上架前就说明需要提供软著证书,有的是提交审核后不通过要求提交证书的。如果你的 App 涉及新闻、金融等领域,还需要提供其他的证明文件。

参考地址:vivo开放平台:https://dev.vivo.com.cn

oppo开放平台:https://open.oppomobile.com/

华为:http://developer.huawei.com/consumer/cn

小米:https://dev.mi.com

魅族应用开放平台网站:open.flyme.cn

三星应用开发者平台地址:support-cn.samsung.com/

阿里应用商店/豌豆荚/PP助手开发者平台地址:open.uc.cn

国内应用市场繁多,无法一一覆盖到位,就部分应用市场举例说明,作为开发者,应当着重维护一部分渠道。

安卓上架流程

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”栏目

9d66fe9c7a75eee18ee29f96ad02b901.png

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

然后点击 Certificates, Identifiers & Profiles 图标

9861514d87f47e7ce2bfe800735f4978.png

1. Certificates:证书

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

573c4a306d9d4e2c7c9e6c854cb1d295.png

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

简单理解:

(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绑定

162b0728d8e1e99e68b19a07175c7e7d.png

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

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

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

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

7cfad689251a3b37ffe3a18762deeeb7.png

continue 下一步

58e7df8653af2a09d25e52db03d4c8b9.png

选择刚刚的证书文件,

55526b58ec82b1f4a2b7e7bd6f84caa0.png

下载下来,名称是 development.cer, 如果是选择了iOS App Development 证书则名称是 ios_development.cer,最好改一下名称,方便识别。

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

9978c80da1bc7d915e7f8c087db6332f.png 7c497ad0ee14a4e5a97bc35ddbe033f7.png

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

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

b68531f02a36d91929e8752a7d9512eb.png

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

(4) 推送证书申请

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

2cb775389d3855d695a6d8286854be6a.png 1db2138eb93f74122797a4d9a4af7db5.png

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

6f705888decede45787f83d8af62fe9f.png

2.Identifiers:App id

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

b3eb84447f0f641fe5a502bc143b0988.png c8a0e1526d085d48ce8ffb147ce08dfc.png 9218e572aa1a01a5a5e11d7eeefce68a.png 2c5bf98fd833db4422c13d5fcdc9cda6.png b78397989578f396c2beb57570367fa8.png

填写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查看(开发者查看自己的)

49ba9439327b09d27687e45e77c162c7.png 110f0d697edaced1dbdda18fc0384195.png

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

添加设备列表

08b851f109669fca124294b2352e36c0.png 7cccfbda580fe4e4b0af4c98ef743af9.png

4.Profiles: 描述文件

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

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

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

创建描述文件

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

3a7225ec00d3815828d546d4efeada7c.png

选择App ID

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

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

e7fb91647d323af7d234e39cca9b01e6.png

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

66ecfb7ec2560091d2ee593929a922b9.png

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

5.Xcode配置

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

d07bec9750e5b0c59850fb57a1d99bd7.png 0d0ec9214babcff28fcdbafd3e488ad1.png

(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。

e47915d47967ca1434a06cb4a8e089d5.png

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

1be68847d0051afa26ba7117d5367b74.png

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

a5dffd2a05737a3c0930efd823f89be1.png

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

aabb8d53418437f8f2ff706d1f05c247.png

6.App Connnect 注册APP

09964c606ac4049e64e8193e7b227db3.png 209950f0178306fd7919cfce8d2892a9.png

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

1d51c34a1781cfa542a046d533c40269.png

填写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证书。选择对应的证书,导出

56d88444c4e12c8c160501a36e543bf1.png

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

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

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

139eb83502afb31ee3f40b11ac213767.png 152ec59f9f7e3aa878cc1ccf87884ac2.png 2952a22a85ed077bcdee949bf284ed05.png

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

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

8.APP打包上架

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

5a3e2862691ddb739fa77c95e2fa1428.png

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

b9ef8c7d2f4b7af4ff006e6bde778a02.png

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

设备选择:

f24dc8722e74a0d02f28397db09ace9a.png

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

Product -> Archive:

db7f4fb7b9697a81c57e6478ceb096b0.png

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

e050c8fe01e4971367bf80a5f28dc4ce.png

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

App Store:App Store上架包用

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

Enterprise:企业包用

Development:开发包用

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

b4b65fb78649096f0dbb950920ab3a37.png

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

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

然后等待上传

上传成功之后,需要进入 App Store Connect, 看到

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

6040a18b73e3aba60271079d2cbe0800.png

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

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

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

fb4bc5a456137efb4d2aca073d770b62.png 86799dee1f6e53abd03104f2e25e3081.png

参考文献:

flutter中文网-发布的IOS版APP

iOS开发,从证书配置到上架发布

iOS AppStore上架流程图文详解

futter打包ios应用流程详解

配置 Associated Domains

收藏

{{favCount}}

个人收藏

投稿请戳这里!投稿
0

次分享

文章评论(0)

{{ user.nickname }}
发表评论
登录 进行评论
加载更多 正在加载中... 没有更多了