更新记录
2.4.0(2026-06-02) 下载此版本
- 补充 README 接入文档
- 增加模块说明、启动流程、依赖说明、自定义基座要求与常见问题
- 补充
start(options)参数说明与页面调用示例 - 补充与业务启动器配套的接入示例
平台兼容性
uni-app(5.06)
| Vue2 | Vue3 | Chrome | Safari | app-vue | app-nvue | Android | iOS | 鸿蒙 |
|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | √ | - | - |
| 微信小程序 | 支付宝小程序 | 抖音小程序 | 百度小程序 | 快手小程序 | 京东小程序 | 鸿蒙元服务 | QQ小程序 | 飞书小程序 | 小红书小程序 | 快应用-华为 | 快应用-联盟 |
|---|---|---|---|---|---|---|---|---|---|---|---|
| - | - | - | - | - | - | - | - | - | - | - | - |
uni-app x(5.06)
| Chrome | Safari | Android | iOS | 鸿蒙 | 微信小程序 |
|---|---|---|---|---|---|
| × | × | √ | × | × | × |
其他
| 多语言 | 暗黑模式 | 宽屏模式 |
|---|---|---|
| × | × | √ |
ad-youliang-sdk
亘元有量 Android SDK 的 uni-app x UTS 封装模块。
当前版本基于 gysdk-v0.1.aar 封装,提供统一的 start(options) 启动入口,用于从 uni-app x 页面内拉起亘元有量业务页。
适用范围
- uni-app x
- Android
- 需要自定义基座或自定义打包环境
目录说明
utssdk/interface.uts:模块对外类型定义utssdk/app-android/index.uts:Android 平台启动实现utssdk/app-android/config.json:原生依赖配置utssdk/app-android/AndroidManifest.xml:原生清单补充utssdk/app-android/libs/:本地 AAR 文件
对外接口
模块对外暴露一个 start(options) 方法。
GYStartOptions
type GYStartOptions = {
appKey : string
targetId : string
oaid : string
imei : string
wxAppId : string
themeColor : string
title : string
showAppBar : boolean
}
start(options)
- 入参:
GYStartOptions - 返回值:
boolean - 返回
true:已完成 SDK 反射调用并发起页面启动 - 返回
false:通常表示Activity缺失、依赖未生效、AAR 未打入或当前不是自定义基座
实现说明
当前封装通过反射方式调用:
com.gyyl.gysdk.entity.GYOptioncom.gyyl.gysdk.GYSdk
启动流程如下:
- 读取
options.oaid - 如果
oaid为空,则回退到Android ID - 读取
options.imei - 如果
imei为空,则同样回退到Android ID - 获取当前
Activity - 检查关键依赖是否存在
- 创建
GYOption - 通过 setter 注入业务参数
- 调用
GYSdk.start(activity, option)
当前实现会在启动前检查以下关键依赖:
androidx.swiperefreshlayout.widget.SwipeRefreshLayoutokhttp3.logging.HttpLoggingInterceptor
如果依赖缺失,会直接输出错误并返回 false。
依赖说明
utssdk/app-android/config.json 已声明以下依赖:
androidx.appcompat:appcompat:1.7.0androidx.swiperefreshlayout:swiperefreshlayout:1.1.0com.google.android.material:material:1.12.0com.squareup.okhttp3:okhttp:4.12.0com.squareup.okhttp3:logging-interceptor:4.12.0com.alibaba:fastjson:1.2.83com.squareup.retrofit2:retrofit:2.9.0com.squareup.retrofit2:adapter-rxjava3:2.9.0com.squareup.retrofit2:converter-scalars:2.9.0com.squareup.retrofit2:converter-gson:2.9.0io.reactivex.rxjava3:rxjava:3.0.2io.reactivex.rxjava3:rxandroid:3.0.2com.github.bumptech.glide:glide:4.9.0jp.wasabeef:glide-transformations:4.3.0com.tencent.mm.opensdk:wechat-sdk-android:6.8.24
使用前准备
1. 使用自定义基座
本模块包含本地 AAR 和多项 Android 原生依赖,标准基座下无法保证原生能力生效。
如果控制台中看到:
uni_module [ad-youliang-sdk] (Android) 存在三方依赖或资源引用
这属于正常提示,说明你需要:
- 配置自定义基座运行环境
- 或使用云端自定义基座 / 自定义包
2. 提前准备设备标识
推荐优先传入:
- OAID
- Android ID
如果业务侧拿不到 OAID,当前实现会自动降级到 Android ID。
3. 准备渠道参数
你需要从亘元有量平台获取:
appKeytargetId
一般建议:
targetId传业务用户 ID- 如果用户未登录,可按业务规则传设备维度标识
4. 微信能力按需配置
如果 SDK 业务链路依赖微信相关能力,可通过 wxAppId 传入微信应用 ID;如果当前场景不需要,可以传空字符串。
基本用法
直接调用模块
// #ifdef APP-ANDROID
import { start } from '@/uni_modules/ad-youliang-sdk'
import type { GYStartOptions } from '@/uni_modules/ad-youliang-sdk/utssdk/interface.uts'
// #endif
function openYouliang() : boolean {
// #ifdef APP-ANDROID
const options : GYStartOptions = {
appKey: '你的appKey',
targetId: '你的用户ID',
oaid: '优先传oaid',
imei: '',
wxAppId: '',
themeColor: '#FE2C55',
title: '应用试玩',
showAppBar: true
}
return start(options)
// #endif
return false
}
推荐封装一层业务启动器
建议在 common 目录封装启动器,把渠道参数、标题、主题色和异常处理集中管理。
// #ifdef APP-ANDROID
import { start as startGYSdk } from '@/uni_modules/ad-youliang-sdk'
import type { GYStartOptions } from '@/uni_modules/ad-youliang-sdk/utssdk/interface.uts'
// #endif
const GYSDK_APP_KEY = '你的appKey'
export function openGYSdkTask(targetId : string, title : string, oaid : string) : boolean {
// #ifdef APP-ANDROID
const options : GYStartOptions = {
appKey: GYSDK_APP_KEY,
targetId: targetId,
oaid: oaid,
imei: '',
wxAppId: '',
themeColor: '#FE2C55',
title: title,
showAppBar: true
}
return startGYSdk(options)
// #endif
return false
}
页面调用示例
下面是一个与当前项目首页接法一致的示例:
function openGYSdk(entryName : string) : void {
const device = collectDeviceInfo()
const launchDeviceId = device.oaid.length > 0 ? device.oaid : device.android_id
const opened = openGYSdkTask(getUid(), entryName, launchDeviceId)
if (!opened) {
uni.showToast({ title: '请重新安装最新自定义基座', icon: 'none' })
}
}
参数建议
appKey:渠道后台分配targetId:建议传业务用户 IDoaid:优先传 OAID,拿不到时传 Android IDimei:如无明确需求可传空字符串,当前实现会自动回退到 Android IDwxAppId:仅在微信相关能力需要时传值themeColor:用于页面主题色title:用于页面标题显示showAppBar:控制是否显示顶部栏
常见问题
1. 提示缺少 SwipeRefreshLayout
例如:
[gysdk] 缺少 SwipeRefreshLayout,请重新制作并安装自定义基座
说明当前运行环境没有把依赖正确打入。请确认:
- 正在使用自定义基座
- 自定义基座已经重新制作并重新安装
config.json中的 Android 依赖已经生效
2. 提示缺少 HttpLoggingInterceptor
例如:
[gysdk] 缺少 HttpLoggingInterceptor,请重新制作并安装自定义基座
这通常也是基座未更新或原生依赖未生效导致。
3. 启动时报 AAR 未生效
例如:
[gysdk] 启动失败,请确认自定义基座已包含 AAR
请检查:
utssdk/app-android/libs/gysdk-v0.1.aar是否存在- 当前运行的是否是最新自定义基座
- 项目运行配置是否指向正确工程
4. 没有 OAID 是否还能启动
可以。
当前实现会在 oaid 为空时回退到 Android ID。如果你已经在业务侧拿到了更稳定的设备标识,也可以优先自行传入。
调试建议
- 启动前打印
targetId、oaid、android_id - 若使用微信相关能力,确认
wxAppId已配置 - 修改依赖或 AAR 后,重新制作并安装自定义基座
- 出现失败时,优先看 Android 控制台 Java 异常和
[gysdk]前缀日志
更新记录
2.4.0
- 提供亘元有量 Android SDK 的 uni-app x UTS 封装
- 支持通过
start(options)拉起业务页 - 支持主题色、标题和顶部栏配置

收藏人数:
下载插件并导入HBuilderX
赞赏(0)
下载 2
赞赏 0
下载 12131791
赞赏 1918
赞赏
京公网安备:11010802035340号