**XUID 这里指的就是 Android(及海外手机)设备的「唯一用户/设备标识」(Unique Device Identifier / OAID / AAID 等),用于用户追踪、反作弊、防刷、广告归因等场景。**
目前(2026 年 3 月)国内开发者最主流、最推荐的**完整开源替代方案**就是:
### 首推:**Android_CN_OAID**(GitHub 最活跃项目)
- **仓库**:https://github.com/gzu-liyujiang/Android_CN_OAID (Gitee 镜像同名)
- **许可证**:Mulan PSL v2(完全开源、可商用、可修改)
- **核心定位**:专门替代**移动安全联盟(MSA)统一 SDK**(那个 miit_mdid_xxx.aar 是闭源的,企业才能用)。个人开发者、独立 APP 直接用这个就行。
- **支持内容**(一套完整解决方案):
- **OAID**(国内厂商开放匿名设备标识)—— 主流方案
- **AAID**(Google Advertising ID,海外手机)
- 其他常见 ID:IMEI/MEID、AndroidID、PseudoID、GUID(全局唯一随机 ID)
- 已弃用 WidevineID(避免闪退)
**支持的国内厂商**(覆盖 95%+ 市场):
- 华为 / 荣耀(HMS / MagicOS)
- 小米 / Redmi / 黑鲨(MIUI)
- vivo / iQOO(OriginOS / Funtouch OS)
- OPPO / Realme(ColorOS)
- 三星、联想、魅族、一加、努比亚、酷派、酷赛、卓易 等
- 其他海外机型走 AAID(GMS)
**最新状态**(2026 年 3 月):
- 最新版本 ≈ 4.2.16(2025 年 11 月更新)
- 持续维护中(最近 4 个月还有 release),支持 Android 5.0+ 到最新版本
- Stars 很高,Issues 响应快
**集成超级简单**(Gradle):
```gradle
// 1. 添加仓库
repositories {
maven { url 'https://jitpack.io' }
maven { url 'https://developer.huawei.com/repo' }
maven { url 'https://developer.hihonor.com/repo' }
}
// 2. 添加依赖
implementation 'com.github.gzu-liyujiang:Android_CN_OAID:4.2.16' // 最新版
runtimeOnly "com.huawei.hms:ads-identifier:3.4.62.300"
runtimeOnly "com.hihonor.mcs:ads-identifier:1.0.2.301"
```
**使用示例**(Application.onCreate 中初始化):
```kotlin
// 初始化(必须在用户同意隐私政策后)
DeviceIdentifier.register(this)
// 同步获取 OAID(最常用)
val oaid = DeviceIdentifier.getOAID(this)
// 异步获取(推荐,防止主线程卡顿)
DeviceID.getOAID(this, object : IGetter {
override fun onOAIDGetComplete(result: String) { ... }
override fun onOAIDGetError(error: Exception) { ... }
})
```
**其他标识获取**:
```kotlin
DeviceIdentifier.getAndroidID(this)
DeviceIdentifier.getGUID(this) // 纯随机全局唯一
DeviceIdentifier.getIMEI(this) // 需要 READ_PHONE_STATE 权限(可移除)
```
**隐私合规提醒**(必须遵守):
- 初始化前**必须**让用户同意隐私政策
- 不需要 IMEI/GUID 时,可在 AndroidManifest.xml 移除权限:
```xml
<uses-permission android:name="android.permission.READ_PHONE_STATE" tools:node="remove" />
```
- 完全符合 Google / 国内隐私法规(最小必要原则)
### 其他补充开源方案(按场景推荐)
如果你不需要厂商 OAID,只想最简单持久化 ID:
| 方案 | 复杂度 | 优点 | 缺点 | 推荐场景 |
|------|--------|------|------|----------|
| **自定义 GUID + SharedPreferences/Keystore** | 极简 | 应用卸载后仍可恢复(配合外部存储) | 非硬件级,刷机/清数据会变 | 普通用户追踪 |
| **Firebase Installations ID (FID)** | 官方 | Google 推荐,合规 | 需要 Firebase SDK | Google Play 上架 |
| **Advertising ID (AAID)** | 中等 | 官方广告 ID,可重置 | 需要 Google Play 服务 | 海外广告归因 |
### 总结推荐
- **国内手机 + 个人开发者** → **直接上 Android_CN_OAID**(就是你想要的「一套开源解决方案」)
- **纯海外 / Google Play** → 用 Google Advertising ID 或 Firebase FID
- **跨 Android + iOS** → Android 用上面库,iOS 用 IDFA(需 ATT 授权)+ 自己服务端生成统一 XUID
登录后可参与表态
讨论回复
1 条回复
✨步子哥 (steper)
#1
03-17 05:50
登录后可参与表态