鸿蒙NEXT元服务:论如何免费快速上架作品

118 阅读4分钟

【引言】天下武功,唯快不破。

本文讨论如何免费且以最快速度上架自己的作品。

作者以自己从零开始到提交发布审核一共俩小时的操作流程分享给大家作参考。

【1】立项选择

结论:元服务,单机,工具类(非游戏)

原因:单机类元服务不需要软著和备案,工具类软件恰好满足这个条件。

注意:要快速上架就不能做游戏类的,游戏版号难拿。

APP(游戏)APP(非游戏)元服务-联网(游戏)元服务-联网(非游戏)元服务-单机(游戏)元服务-单机(非游戏)
备案需要需要需要需要不需要不需要
软著需要需要不需要不需要不需要不需要
游戏类版号需要不需要需要不需要需要不需要

【2】代码实现

结论:计数器

原因:我之前分享了几十个案例,找到一个不涉及网络的功能,不涉及游戏的,然后新建元服务项目后,把代码粘上去就能用了。

注意:感觉有游戏性质的,可以包装一下,比如舒尔特方格(注意力训练)巧算24点(儿童心算锻炼)

分享可能过审的案例源码地址
温度转换blog.csdn.net/zhongcongxu…
文字转拼音blog.csdn.net/zhongcongxu…
亲戚关系计算器blog.csdn.net/zhongcongxu…
二维码的生成与识别blog.csdn.net/zhongcongxu…
字数统计blog.csdn.net/zhongcongxu…
数字转中文大小写blog.csdn.net/zhongcongxu…
血型遗传计算blog.csdn.net/zhongcongxu…
简体繁体转换器blog.csdn.net/zhongcongxu…
随机数生成blog.csdn.net/zhongcongxu…
随机密码生成blog.csdn.net/zhongcongxu…
计数器blog.csdn.net/zhongcongxu…
年龄计算blog.csdn.net/zhongcongxu…
光强仪blog.csdn.net/zhongcongxu…
指尖轮盘blog.csdn.net/zhongcongxu…
抛硬币blog.csdn.net/zhongcongxu…
转盘blog.csdn.net/zhongcongxu…
水平仪blog.csdn.net/zhongcongxu…
七巧板blog.csdn.net/zhongcongxu…
指南针blog.csdn.net/zhongcongxu…
直尺blog.csdn.net/zhongcongxu…
分贝仪blog.csdn.net/zhongcongxu…
舒尔特方格blog.csdn.net/zhongcongxu…
电子木鱼blog.csdn.net/zhongcongxu…
垃圾分类blog.csdn.net/zhongcongxu…
巧算24点blog.csdn.net/zhongcongxu…

【3】确定应用名称

结论:去工信部查没备案的名称,我这边查找到“计数器”有5个备案,最终查到“日常计数器”没有被备案。

原因:已备案的名称,当你提审时,36小时后才会收到被拒通知【您的元服务与“计数器”的名称相同,但并未提供相关授权文件,不符合华为应用市场《元服务审核指南》】

注意:查询的时候记得勾选“APP”类型

查询地址:beian.miit.gov.cn/#/Integrate…

3.png

【4】制作Logo

结论:准备1024*1024像素正方形图片,纯色或渐变,再写俩儿字。最后使用官方提供的Image Asset工具生成元服务logo

原因:咱是为了快速上架,一切从简哈。

注意:必须使用Image Asset生成logo,自己做个大差不差的会被检测出来,提审36小时后会被拒

4.png

【5】打包配置:多目标产物

结论:分别配置调试和发布的product,在build-profile.json5配置applyToProducts,通过切换运行product来切换签名的证书配置

原因:调试证书与发布证书,平时开发的时候自动使用调试证书,打包的时候要使用发布证书,每次切换操作都需要再次调整很不方便。

参考官方配置:developer.huawei.com/consumer/cn…

具体做法:

(1)defalut当做平时的自动调试证书,新建release配置发布证书信息

5.1.png

(2)配置完成后,在build-profile.json5下,进行如下配置。重点是"applyToProducts": [ "default","release" ]

{
  "app": {
    "signingConfigs": [
      {
        "name": "default",
        "type": "HarmonyOS",
        "material": {
          ...
        }
      },
      {
        "name": "release",
        "type": "HarmonyOS",
        "material": {
          ...
        }
      }
    ],
    "products": [
      {
        "name": "default",
        "signingConfig": "default",
        "compatibleSdkVersion": "5.0.0(12)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": true
          }
        }
      },
      {
        "name": "release",
        "signingConfig": "release",
        "compatibleSdkVersion": "5.0.0(12)",
        "runtimeOS": "HarmonyOS",
        "buildOption": {
          "strictMode": {
            "caseSensitiveCheck": true,
            "useNormalizedOHMUrl": true
          }
        }
      }
    ],
    "buildModeSet": [
      {
        "name": "debug",
      },
      {
        "name": "release"
      }
    ]
  },
  "modules": [
    {
      "name": "entry",
      "srcPath": "./entry",
      "targets": [
        { 
          "name": "default",
          "applyToProducts": [
            "default","release"
          ]
        },
      ]
    }
  ]
}

(3)平时测试时切换default,再运行或打包。上传应用商店时再切换为release后再打包就行了。

5.3.png

【6】隐私声明

结论:使用系统模板

原因:不需要自己想隐私声明如何编写,只需要在AppGallery Connect(应用市场)上传包的的时候,选择“协议服务”-->"新建协议"。

然后在版本信息下拦框中,选择这个协议即可。

6.png

【7】用户协议

结论:使用gitee,新建仓库,利用md文件编写用户协议

原因:省去购买域名搭建服务器存放用户协议的钱,而且gitee用手机端打开效果更好一些。

参考我的协议当做模板:gitee.com/zhong-congx…

7.1.png

7.2.png

【8】其它信息

接下来就简单了

(1)勾选:“免责函”

8.1.png

(2)选择单机APP

8.2.png

(3)如果手里没平板(pad)没做适配,建议去掉勾选平板(默认是添加的),因为很可能因为平板适配问题又耽误三天。

其它信息按提示填就好了

【9】最后上传app包(记得用要切换配置的release版本)

注意事项1:上传应用市场的包需要是.app格式,也就是开发工具的(build-->build APP)

生成的文件在项目根目录的build里,不是entry下的build里

9.1.png

注意事项2:要勾选“测试和正式上架”,如果勾选了“仅测试”那么在版本信息中上传包的时候会发现找不到。

9.2.png

【10】默默祈祷、逢审必过,提交审核、点完收工!