Skip to content

Latest commit

 

History

History
193 lines (150 loc) · 8.53 KB

File metadata and controls

193 lines (150 loc) · 8.53 KB

QuickBox 兼容性矩阵

本文档提供 QuickBox 框架在所有厂商上的详细兼容性矩阵,方便开发者快速查阅。

📊 API兼容性矩阵

基础API

API OPPO vivo 小米 华为 荣耀 说明
request 网络请求
setStorage 存储数据
getStorage 获取数据
removeStorage 删除数据
navigateTo 页面跳转
navigateBack 返回上一页
redirectTo 重定向
navigateToHome 返回首页(华为/荣耀使用clearStack)
getSystemInfo 获取系统信息
canIUse 能力检测

支付API

支付方式 OPPO vivo 小米 华为 荣耀 说明
pay 统一支付接口
vendorPay 厂商支付平台
wxpay ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ 微信支付(需后端支持)
alipay ⚠️ ⚠️ ⚠️ ⚠️ ⚠️ 支付宝(需后端支持)
oppoPay OPPO支付
vivoPay vivo支付
xiaomiPay 小米支付
huaweiPay 华为支付
honorPay 荣耀支付

特殊说明

  • ⚠️ 微信/支付宝:vivo和OPPO自2024年12月31日起,不再默认支持,需要通过各自的支付平台接入
  • ✅ 小米支付:需要先登录(框架自动处理)
  • ✅ 华为/荣耀支付:支付失败自动补单,支付成功自动消耗订单

账号登录API

登录方式 OPPO vivo 小米 华为 荣耀 说明
unionLogin ✅* ✅* 统一登录接口
login ✅* ✅* 便捷登录方法
huaweiAuthorize 华为/荣耀授权

特殊说明

  • ✅* 华为/荣耀使用 account.authorize 而不是 unionLogin(框架自动处理)
  • ✅ 华为/荣耀先检查登录状态,再决定是否授权

广告API

广告类型 OPPO vivo 小米 华为 荣耀 最低版本 说明
createBannerAd OPPO 1044+, vivo 1052+, 小米 1062+, 华为 1075+ Banner广告
createInterstitialAd OPPO 1044+, vivo 1052+, 小米 1062+, 华为 1075+ 插屏广告
createRewardedVideoAd OPPO 1060+, vivo 1061+, 小米 1062+, 华为 1075+ 激励视频
createNativeAd ✅* ✅* OPPO 1060+, 华为 1075+ 原生广告

特殊说明

  • ✅* vivo/小米虽然官方文档说不支持,但实际可以使用 preloadAd
  • ✅ 华为/荣耀需要预加载(框架自动处理)
  • ✅ Banner宽度:华为/荣耀 360,其他 750(框架自动适配)

工具类兼容性

工具类 OPPO vivo 小米 华为 荣耀 说明
ShortcutUtils.install ⚠️ ⚠️ 加桌(API方式)
ShortcutUtils.checkInstalled 检查加桌状态
ConfigManager.getHuaweiConfig 获取华为配置
ConfigManager.getXiaomiConfig 获取小米配置
ConfigManager.getOppoConfig 获取OPPO配置
ConfigManager.getVivoConfig 获取vivo配置
TokenManager.getHuaweiToken 获取华为Token
TokenManager.getXiaomiToken 获取小米Token
ReaderUtils.splitContentIntoPages 内容分页
ReaderUtils.insertAdPages 插入广告页

特殊说明

  • ⚠️ vivo/小米加桌:使用 shortcut-button 组件方式,不是API方式
  • ✅ 所有工具类都支持所有厂商(厂商特定的方法除外)

🔍 版本要求矩阵

基础版本要求

厂商 最低版本 推荐版本 状态
OPPO 1100 1100+
vivo 1100 1100+
小米 1100 1100+
华为 1100 1100+
荣耀 1100 1100+

广告版本要求

广告类型 OPPO vivo 小米 华为 荣耀
Banner 1044+ 1052+ 1062+ 1075+ 1075+
插屏 1044+ 1052+ 1062+ 1075+ 1075+
激励视频 1060+ 1061+ 1062+ 1075+ 1075+
原生广告 1060+ 1052+* 1062+* 1075+ 1075+

*注:vivo和小米虽然官方文档说不支持原生广告,但实际可以使用 preloadAd

🎯 特殊处理矩阵

路由特殊处理

功能 OPPO vivo 小米 华为 荣耀
navigateToHome clear() clear() clear() clearStack() clearStack()
降级方案 replace() replace() replace() clear()replace() clear()back()

支付特殊处理

功能 OPPO vivo 小米 华为 荣耀
API方法 requestPayment requestCashierPayment purchaseInApp createPurchaseIntent createPurchaseIntent
前置条件 需要登录
补单机制
消耗订单
成功码 code: '0' code: 0 success success success
取消码 code: '200' code: 100 code: -1 code: -1 code: -1

账号登录特殊处理

功能 OPPO vivo 小米 华为 荣耀
API方法 unionLogin unionLogin unionLogin authorize authorize
登录检查
必传参数 memberId memberId memberId appid appid
返回字段 openId, token openId, token openId accessToken accessToken

广告特殊处理

功能 OPPO vivo 小米 华为 荣耀
Banner宽度 750 750 750 360 360
激励视频预加载 可选 可选 可选 必须 必须
原生广告方法 preloadAd preloadAd preloadAd createNativeAd createNativeAd
原生广告预加载
原生广告特殊参数 adCount(必传) adCount adCount - allowRecommend(必传)

📱 品牌检测矩阵

厂商 检测的品牌名称 检测优先级
小米 xiaomi, redmi, mi 3
OPPO oppo, oneplus, realme 3
vivo vivo, iqoo 3
华为 huawei, hi, hisense 4(荣耀优先)
荣耀 honor, honor magic, honor view 1(最高优先级)

检测逻辑

  1. 优先检测荣耀(因为可能manufacturer是huawei但brand是honor)
  2. 然后检测其他厂商
  3. 同时检查 brandmanufacturer 字段

✅ 兼容性保证

QuickBox 框架通过以下方式确保完美兼容:

  1. 适配器模式:每个厂商独立适配器
  2. 自动检测:运行时自动检测运行环境
  3. 统一API:提供统一的开发接口
  4. 降级处理:多级降级方案
  5. 错误处理:完善的错误处理和提示
  6. 版本检测:自动检测版本并适配
  7. 参数验证:自动验证必传参数

🚨 已知限制

  1. 微信/支付宝支付

    • vivo和OPPO自2024年12月31日起,不再默认支持
    • 需要通过各自的支付平台接入
  2. 原生广告

    • vivo和小米官方文档说不支持,但实际可以使用 preloadAd
    • 如果确实不支持,createNativeAd() 会返回 null
  3. 加桌功能

    • 华为/OPPO/荣耀使用API方式
    • 其他厂商使用组件方式

📚 参考