You need to enable JavaScript to run this app.
导航
SDK 配置下发
最近更新时间:2025.02.25 14:49:16首次发布时间:2021.02.23 10:42:27
我的收藏
有用
有用
无用
无用

本节主要通过控制台参数的配置,对客户端 SDK 的配置参数进行下发。SDK 云控配置支持加载 SDK 配置、上传 SDK 配置、增值配置,具体说明如下所示:

  • 加载 SDK 配置:所有用户均可见,接入图片加载 SDK 即可使用。
  • 上传 SDK 配置:所有用户均可见,接入图片上传 SDK 即可使用。
  • 增值配置:仅适用于开通对应客户端相关附加组件服务的用户可见。

前提条件

  • 已接入 veImageX 图片服务提供的 SDK。
  • 已创建图片应用,如未创建请点击新建应用

注意事项

  • 对于 Android 与 iOS 双端,在您修改控制台云控配置后,满足以下两种条件才会拉取最新云控配置并生效:
    1. 运行机冷启动(调用云控初始化接口)
    2. 较上次拉取超出 1h 的时间间隔
  • veImageX 支持您在 SDK 代码、veImageX 控制台等多方式更新云控参数配置,并根据接入平台不同,配置生效优先级也有区别,具体如下所示。
    • 加载 SDK
      • Android:若您对同一个配置项在 SDK 和控制台云控同时更新不同参数,则实际按照优先级从高到低的顺序生效。优先级顺序为 SDK 代码配置 > 控制台 SDK 云控配置 > SDK 默认值。
      • iOS:若您对同一个配置项在 SDK 和控制台云控同时更新不同参数,实际以您最后一个更新参数为准并生效,并以 SDK 默认值作为兜底。例如,在 iOS 端配置参数 A(SDK 默认值为 0)。您在 SDK 代码配置参数 A 取值为 1 后,在云控配置参数 A 取值为 2,则实际以云控值 2 为准。
    • 上传 SDK:若您对同一个配置项在 SDK 和控制台云控同时更新不同参数,则实际按照优先级从高到低的顺序生效。优先级顺序为 SDK 代码配置 > 控制台 SDK 云控配置 > SDK 默认值。
  • 如您的实际业务需要灵活配置参数,建议优先使用 veImageX 控制台的 SDK 配置下发功能更改配置

背景信息

每一个字段定义为一个配置项,单一配置项均对应图片加载 SDK 中某一个字段的取值,用户可以通过云端操作修改取值,无需 App 重新发版即可实现对 SDK 的远程云控。具体配置项类型及说明如下所示:

  • 父节点类型:该配置项类型的节点,下属可设有多个配置。
  • 采样率类型:只控制对应配置的采样率,配置项取值为 [0-100] 间实数,支持 % 和 ‰。
  • 常规配置项类型:初始预置整数类型、浮点数类型、字符串类型、字符串数字类型、布尔值类型,代表该配置取值的数据类型。

说明

每个配置项生效的筛选条件定义为一条规则,可支持用户自定义创建和修改。

操作步骤

加载 SDK 配置下发

  1. 登录 veImageX 控制台

  2. 单击 SDK 配置下发,默认进入加载 SDK 配置页面。
    Image

  3. 在应用名称下拉列表中选择要进行 SDK 配置下发的图片应用,并选择配置模块。

    说明

    • Android BDFresco 加载 SDK 和 iOS 加载 SDK 已支持读取以下全部云控配置,Android BDGlide 加载 SDK 也支持读取部分采样率配置。
    • 应用列表中已给出应用名称和 AppID,您可以直接获取相关信息。
    • 在实际的使用过程中可以根据您的实际业务场景需要动态下发可选配置,实现策略最优的目的。
    配置名称
    节点类型
    说明
    allow_log_type
    自定义日志上报采样率
    日志上报采样率,具体子节点配置及说明如下所示。
    httpdns_settings
    HTTP-DNS 解析相关配置
    HTTP-DNS 解析相关配置,具体子节点配置及说明如下所示。
    image_adaptive_format
    图片加载策略相关配置
    图片加载策略相关配置,加载 SDK 支持在代码内进行配置,具体子节点配置及说明如下所示。
    ttnet_settings
    网络库能力优化相关配置
    网络库能力优化相关配置,具体子节点配置如下所示。
    cache_settings
    缓存配置
    缓存配置,加载 SDK 支持在代码内进行配置,具体子节点配置及说明如下所示。
    load_strategy
    加载策略
    加载策略,加载 SDK 支持在代码内进行配置,具体子节点配置及说明如下所示。
    decode_strategy
    解码策略
    解码策略,加载 SDK 支持在代码内进行配置,具体子节点配置及说明如下所示。
  4. 单击加号 + 展开子节点配置,单击操作列详情,进入规则列表界面。

  5. 在规则列表界面,单击新建规则

    说明

    • 配置项的默认值不支持修改。
    • 若您未配置自定义规则,则系统将以默认值为准;若您配置了自定义规则,则系统将以配置的自定义规则为准。
  6. 请参考下表完成规则的创建。

    配置项

    说明

    规则名称

    仅支持字母、数字、下划线,最多输入 32 个字符。

    匹配条件

    请参考配置规则完成设置。

    配置内容

    当前支持设置百分比和千分比。

    Image

  7. 单击确定,完成规则创建。

上传 SDK 配置下发

  1. 登录 veImageX 控制台

  2. 单击 SDK 配置下发,切换至上传 SDK 配置标签页。
    Image

  3. 在应用名称下拉列表中选择要进行 SDK 配置下发的图片应用,并选择配置模块。

    配置名称
    节点类型
    说明
    upload_allow_log_type
    自定义日志上报采样率
    日志上报采样率,具体子节点配置及说明如下所示。
    upload_control_settings
    上传控制设置
    上传分片、重试相关配置,具体子节点配置及说明如下所示。
    upload_network_settings
    网络设置
    图片上传网络相关配置,具体子节点配置及说明如下所示。
    upload_httpdns_settings
    HttpDns
    HttpDns 相关配置,开启 HttpDns 可以避免因遭遇 LOCAL DNS 劫持导致的文件上传失败。具体子节点配置如下所示。
  4. 单击加号 + 展开子节点配置,单击操作列详情,进入规则列表界面。

  5. 在规则列表界面,单击新建规则

    说明

    • 配置项的默认值不支持修改。
    • 若您未配置自定义规则,则系统将以默认值为准;若您配置了自定义规则,则系统将以配置的自定义规则为准。
  6. 请参考下表完成规则的创建。

    配置项

    说明

    规则名称

    仅支持字母、数字、下划线,最多输入 32 个字符。

    匹配条件

    请参考配置规则完成设置。

    配置内容

    当前支持设置百分比和千分比。

    Image

  7. 单击确定,完成规则创建。

后续操作

  1. 登录 veImageX 控制台
  2. 单击 SDK 配置下发,默认进入加载 SDK 配置页面。
  3. 在下拉框中选择要进行 SDK 配置下发的图片应用。
  4. 单击加号 + 展开子节点配置,单击操作列详情,进入规则列表界面。
    Image
    • 修改历史:单击修改历史按钮,可以查看当前节点规则的修改人、规则名称、规则内容。
    • 删除:单击删除按钮,在弹出的确认框中点击确定,删除当前规则。
    • 修改:单击修改按钮,进入修改规则页面,可以修改规则名称、匹配条件和配置内容。

配置规则

规则配置条件

规则配置条件字段说明请见下表。

说明

以下字段填写时,务必保证和实际使用的保持一致,规则创建后才能生效。

字段

说明

AppVer

App 版本

OS

操作系统,包括 iOS、Android 和 WEB

SdkVer

SDK 版本号

os_version

系统版本号

app_name

App 名称

user_id

用户 ID

device_id

设备 ID

channel

渠道

device_platform

设备类型,如 Android、iPhone、iPad

device_brand

设备厂商,如 huawei、xiaomi

device_type

设备型号,如 iPhone 8.2、vivo V3

resolution_width

屏幕分辨率宽

resolution_height

屏幕分辨率高

update_version_code

客户端小版本号

settings_time

服务端时间的 Unix 时间戳

extra

扩展字段,支持自定义变量

符号说明

符号

说明

==

表示是,例如:OS==iOS代表该配置项取值在操作系统为 iOS 时生效。

!=

表示不等于或不是,例如:SdkVer !=1.0.0代表该配置项取值在 SDK 版本号不是 1.0.0 时生效。

>

表示规则条件取值范围在满足对应不等号条件下生效。

>=

表示规则条件取值范围在满足对应不等号条件下生效。

<

表示规则条件取值范围在满足对应不等号条件下生效。

<=

表示规则条件取值范围在满足对应不等号条件下生效。

in

表示包含其中,例如:SdkVer in ['1.0.0','1.0.2']代表该配置项取值在 SDK 版本号为 1.0.0 或 1.0.2 时均生效。