友盟SDK概述与集成准备
友盟+(Umeng)是业界领先的移动数据平台,其 SDK 为 Android 应用提供数据统计、用户分析、消息推送、社会化分享、智能认证等核心能力。本章从 SDK 功能全景出发,梳理集成前的环境要求、文档查阅方法以及注册应用获取 AppKey 的完整流程,为后续与 Compose 界面深度对接奠定基础。
| 核心功能模块 | 功能用途 | 关键技术点 |
|---|---|---|
| 数据分析 | 统计日活/月活、页面访问路径、事件埋点、用户留存 | session 管理、自定义事件、页面时长计算 |
| 消息推送 | 向目标用户发送通知、透传、定时推送 | 厂商通道(华为/小米/OPPO/vivo)、通知栏适配、别名与标签 |
| 社会化分享 | 分享文本/图片/链接到微信、QQ、微博等平台 | 平台注册、缩略图处理、回调管理 |
| 统一认证 | 一键登录、手机号验证、第三方授权登录 | 隐私协议弹窗、 管理、多平台策略 |
Android 项目环境要求
集成友盟 SDK 前,请确保项目满足以下最低环境条件:
- minSdkVersion ≥ 21(Android 5.0)
- compileSdkVersion ≥ 34(推荐使用最新稳定版)
- Gradle ≥ 8.0 且 AGP ≥ 8.0
- 项目使用 Kotlin 1.9+ 或 Java 17+
- 模块级 build.gradle.kts 已配置
mavenCentral()仓库
在模块级 build.gradle.kts 中添加核心依赖:
dependencies {
// 友盟基础组件(所有功能必须)
implementation("com.umeng.umsdk:common:9.6.9")
implementation("com.umeng.umsdk:asms:1.8.2")
// 可选功能按需添加
// 消息推送
implementation("com.umeng.umsdk:push:6.4.5")
// 社会化分享
implementation("com.umeng.umsdk:share:7.2.5")
// 统一认证
implementation("com.umeng.umsdk:oaid:1.2.5")
}
同步后,在 AndroidManifest.xml 中声明必要权限:
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.READ_PHONE_STATE"
android:maxSdkVersion="32" />
<!-- 推送增强权限 -->
<uses-permission android:name="android.permission.VIBRATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.POST_NOTIFICATIONS" />
官方文档查阅要点
友盟官方维护了完善的接入文档,集成前建议精读以下页面:
| 文档页面 | 访问路径 | 核心查阅内容 |
|---|---|---|
| 快速集成指南 | developer.umeng.com/docs/…/快速集成 |
Gradle 依赖写法、AndroidManifest 配置、Application 初始化模板 |
| Android SDK API 文档 | developer.umeng.com/sdk/android/api |
MobclickAgent、UPush、ShareAPI 等核心类方法签名 |
| 发布说明 | developer.umeng.com/docs/…/发布说明 |
版本兼容性变更、废弃 API、已知问题与 hotfix |
注册应用与获取 AppKey
- 登录 友盟+ 开发者后台,点击「进入工作台」。
- 在顶部导航栏选择「我的产品」→「创建新应用」。
- 填写应用名称、应用类型(Android)、包名(必须与
build.gradle中的applicationId一致)。 - 勾选需要集成的 SDK 功能(数据分析必选,其余按需勾选),确认创建。
- 在应用详情页的「应用信息」区域复制 AppKey(一般为 24 位字母数字组合)。
安全提示:AppKey 是公开凭证,可在客户端透传,但 AppSecret(服务端签名密钥)严禁出现在客户端代码或配置文件中。
常见错误:包名不一致、AndroidManifest 中未配置
META-DATA 或 Channel ID 拼写错误,均会导致 SDK 初始化失败。后台注册时务必使用 release 包名。
集成验证
完成上述配置后,在 Application.onCreate() 中写入初始化代码,并查看 Logcat 输出:
public class MyApp extends Application {
@Override
public void onCreate() {
super.onCreate();
// 基础初始化
UMConfigure.init(this, "YOUR_APP_KEY", "Umeng", UMConfigure.DEVICE_TYPE_PHONE, null);
// 开启日志(调试阶段)
UMConfigure.setLogEnabled(true);
}
}
启动应用后,过滤 UMENG 标签,看到 init success 日志即表示 AppKey 验证通过、SDK 集成就绪。