步骤一:预处理 Android APK 母包
本文将介绍如何通过对象存储 COS 和云函数 SCF,实现对 Android APK 母包的预处理。
准备工作
2. 根据 站点接入 指引添加站点,购买 EdgeOne 套餐。
3. 已在 EdgeOne 控制台 添加加速域名
www.example.com
,且源站配置为腾讯云 COS。步骤1:上传 Android APK 母包
在对象存储 COS 中,上传 Android APK 母包。
1. 登录 对象存储 COS 控制台,在左侧菜单栏中,单击存储桶列表。
2. 在存储桶列表页面,单击用于存储 APK 母包的存储桶名称。
3. 在文件列表,单击创建文件夹用于上传 APK 母包的目录,输入文件夹名称,例如:
v2-vasdolly/
,单击确定。注意:
请勿直接将根目录作为 APK 母包的上传目录。
步骤2:新建模板函数
在云函数 SCF 通过 EdgeOne APK 动态打包的模板新建函数。
1. 登录 云函数服务控制台,在左侧菜单栏中,单击函数服务。
2. 在函数服务页面,单击新建,选择使用模板创建,在模糊搜索中输入 EdgeOne APK 动态打包并选中,单击下一步。
3. 在“函数配置”页面,分别配置如下参数:
基础配置
函数名称:创建函数时将自动生成一个函数名称,您可以选择自定义修改为一个易识别的函数名称。
地域:请选择 步骤1 中所使用的对象存储桶 COS 的所在地域,例如:广州。
描述:说明此函数的用途。
运行角色:默认勾选启用,配置并使用SCF模板运行角色。如使用已有角色,请确保已有角色已包含
QcloudCOSFullAccess
的预设策略。
函数代码:模板已内置默认函数代码实现 Android APK 处理母包的能力,无需改动。
环境配置:
单击高级配置,选择环境配置,您需要在环境变量中添加以下 key 和对应的 value 值,其余配置保持默认即可:
outputPath(必填):自定义云函数 SCF 处理 APK 母包后输出到 COS 存储桶的目录,如:
/v2-vasdolly_output
。packVersion(必填): 不同的 APK 版本所使用的签名版本信息,不同签名版本填写的值如下:
APK 签名版本 | packVersion 值 |
v1 | v1 |
v2 | 请填写 v2-VasDolly、v2-Walle 或 v2-Custom: v2-VasDolly:将渠道信息保存在 ID 为 0x881155ff (VasDolly 默认)的 ID-Value 对。v2-Walle:将渠道信息保存在 ID 为 0x71777777 (Walle 默认)的 ID-Value 对。v2-Custom:将渠道信息保存在 ID 为 blockId (由 blockId 环境变量指定)的 ID-Value 对。 |
blockId(选填): 如果使用 v2-Custom 方式进行预处理,需要指定 blockId。
填写示例:
(可选)文件系统:如果上传到 COS 的 APK 母包大于 200M,需前往 文件存储控制台 开通 CFS 服务,并启用文件系统,用于扩展云函数的本地存储空间:
注意:
由于 SCF 侧的限制,每个云函数在执行过程中,拥有一块 500MB 的临时磁盘空间,处理 APK 文件时,磁盘中同时存在原始 APK 文件和处理后的 APK 文件,因此处理过大的 APK 文件,需要挂在额外的文件存储系统,详情请参见 挂载 CFS 文件系统。
触发器管理
在触发器配置中,选择 COS Bucket 为与此云函数 SCF 同地域的存储桶,可输入存储桶名称进行模糊查询,例如:
apk-test-1251557890.cos.ap-guangzhou.myqcloud.com。
其余配置项保持为默认配置即可。触发方式:选择 COS 触发。
COS Bucket:请选择该可用区下母包所在的 COS 存储桶。
事件类型:选择全部创建。
前缀过滤:请输入母包上传的目录,如您的母包在
v2-vasdolly
目录下,即填写 v2-vasdolly/
。后缀过滤:请输入
.apk
。上述信息填写完成后,即只针对指定指定 COS 存储桶的
v2-vasdolly/
目录下且文件后缀为 .apk
的文件上传时才会触发云函数 SCF 执行。
4. 单击完成,即可完成 EdgeOne APK 动态打包函数的创建。
说明: