目录

这段时间使用了uni-app开发一个车控的App, 主要负责搭建框架,调研打包和推送相关的内容。把相关的技术整理一下 ,和大家分享,本次主要分享打包相关内容。

1. 包名

2证书

3 渠道包

4 正式包与自定义调试基座

4.1 自定义基座的定义

4.2 为什么引入自定义基座

4.3 定义并使用基座的过程

4.4 相关问题

5 传统打包和安心打包


uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_.net_02

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_03

1. 包名

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_.net_04

1.地图key的注册

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_.net_05

2.推送应用信息的配置

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端_06

 

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端_073.推送时厂商渠道对接

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_javascript_08

2证书

按照文档生成证书:

C:\Users\d**p>keytool -genkey -alias levdeoalias -keyalg RSA -keysize 2048 -validity 36500 -keystore levdeo.keystore
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
  [Unknown]:  ***
您的组织单位名称是什么?
  [Unknown]:  **科技
您的组织名称是什么?
  [Unknown]:  第二事业部开发组
您所在的城市或区域名称是什么?
  [Unknown]:  沈阳市
您所在的省/市/自治区名称是什么?
  [Unknown]:  辽宁省
该单位的双字母国家/地区代码是什么?
  [Unknown]:  86
CN=dupeng, OU=美行科技, O=第二事业部开发组, L=沈阳市, ST=辽宁省, C=86是否正确?
  [否]:  y

输入 <levdeoalias> 的密钥口令
        (如果和密钥库口令相同, 按回车):
再次输入新口令:

Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore levdeo.keystore -destkeystore levdeo.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

C:\Users\dup>keytool -list -v -keystore levdeo.keystore
输入密钥库口令:
密钥库类型: jks
密钥库提供方: SUN

您的密钥库包含 1 个条目

别名: levdeoalias
创建日期: 2021-11-15
条目类型: PrivateKeyEntry
证书链长度: 1
证书[1]:
所有者: CN=**eng, OU=美行科技, O=第二事业部开发组, L=沈阳市, ST=辽宁省, C=86
发布者: CN=**eng, OU=美行科技, O=第二事业部开发组, L=沈阳市, ST=辽宁省, C=86
序列号: 7bb02064
有效期为 Mon Nov 15 15:26:45 CST 2021 至 Wed Oct 22 15:26:45 CST 2121
证书指纹:
         MD5:  49:30:85:1A*****************2F:C1:7A:FA
         SHA1: 30:DE:D9:94***************53:08:66:FB:07:DB
         SHA256: 3C:DB:6B:D6:97*************5C:9F:56:C9:B0
签名算法名称: SHA256withRSA
主体公共密钥算法: 2048 位 RSA 密钥
版本: 3

扩展:

#1: ObjectId: 2.5.29.14 Criticality=false
SubjectKeyIdentifier [
KeyIdentifier [
0000: 67 A1 98 90 28 40 20 93   A7 7B 71 9B 00 9A FF 45  g...(@ ...q....E
0010: D8 4F 5E CE                                        .O^.
]
]



*******************************************
*******************************************



Warning:
JKS 密钥库使用专用格式。建议使用 "keytool -importkeystore -srckeystore levdeo.keystore -destkeystore levdeo.keystore -deststoretype pkcs12" 迁移到行业标准格式 PKCS12。

C:\Users\d**p>

需要特别注意的是:申请高德地图的key时需要填写SHA1发布安全码 需要和证书指纹中的SHA安全码完全一致;否则打正式包或者自定义调试基座的时候,地图不会显示

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_uni-app_09

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端_10

3 渠道包

https://ask.dcloud.net.cn/article/35974

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_uni-app_11

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_uni-app_12

增加渠道包的方法:

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_13

manifest.json 跟节点增加内容:

"channel_list": [
  {
   "id": "chuizi",
   "name": "锤子应用市场"
  },
  {
   "id": "meizu",
   "name": "魅族应用市场"
  }
 ],

渠道包:为了方便统计使用的

4 正式包与自定义调试基座

4.1 自定义基座的定义

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_14

image.png

4.2 为什么引入自定义基座

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_javascript_15为了解决调试便利性,引入自定义基座。

4.3 定义并使用基座的过程

定义一个基座:uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端_16

运行时使用定义的基座:

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_17

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_18

4.4 相关问题

运行到自定义基座后打电话功能不好使,权限配置

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_uni-app_19

 勾选权限,重新打包定义基座

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_uni-app_20

5 传统打包和安心打包

传统打包会上传代码,最终的apk安装包是放在云端的,打包后给一个下载链接:uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_前端_21

类型: Android自有证书
下载地址: https://ide.dcloud.net.cn/build/download/2e453560-45e6-11ec-9e88-fdfbd1bf54d8 
(注意该地址为临时下载地址,只能下载5次)    [一键上传到uniCloud(免费cdn、长期稳定)]

安心打包,最终会在本地生成打包文件:

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_自定义_22

自定义基座包:

uniapp ios运行 安装HBuilder调试基座失败 uniapp自定义基座_javascript_23

安心打包使用指南文章:https://ask.dcloud.net.cn/article/37979