支撑您在华为设备上进行广告流量变现,提供广告标识符能力方便您进行个性化广告投放。
您可基于OAID,向用户提供个性化的营销活动或商业广告,提升转化效果,过程如下:
在这个codelab中,您将学习App如何接入Ads Kit生态系统以及您的App获取广告标识符(OAID)和"限制个性化广告"开关状态。
如何集成Ads Kit的OAID开放能力。
支持EMUI 3.0及以上版本的华为手机、华为平板和智慧屏。
Android基础开发能力。
点击源码下载OAID-Initial工程。
使用Android Studio打开OAID-Initial工程。
Android Studio的代码库配置在Gradle 插件7.0以下版本、7.0版本和7.1及以上版本有所不同。请根据您当前的Gradle 插件版本,选择对应的配置过程。
7.0以下版本 | 7.0版本 | 7.1及以上版本 |
7.0以下版本
i. 打开Android Studio项目级"build.gradle"文件。
ii. 添加Maven代码库。
buildscript {
repositories {
google()
jcenter()
// 配置HUAWEI Ads SDK的Maven仓地址
maven {url 'https://developer.huawei.com/repo/'}
}
}
allprojects {
repositories {
google()
jcenter()
// 配置HUAWEI Ads SDK的Maven仓地址
maven {url 'https://developer.huawei.com/repo/'}
}
}
7.0版本
i. 打开Android Studio项目级"build.gradle"文件。
ii. 添加Maven代码库。
在"buildscript > repositories"中配置Maven仓地址。
buildscript {
repositories {
google()
jcenter()
// 配置HUAWEI Ads SDK的Maven仓地址
maven {url 'https://developer.huawei.com/repo/'}
}
}
iii. 打开项目级"settings.gradle"文件,配置Maven仓地址。
dependencyResolutionManagement {
...
repositories {
google()
jcenter()
// 配置HUAWEI Ads SDK的Maven仓地址
maven {url 'https://developer.huawei.com/repo/'}
}
}
7.1及以上版本
打开项目级"settings.gradle"文件,配置Maven仓地址。
pluginManagement {
repositories {
gradlePluginPortal()
google()
mavenCentral()
// 配置HUAWEI Ads SDK的Maven仓地址
maven { url 'https://developer.huawei.com/repo/' }
}
}
dependencyResolutionManagement {
...
repositories {
google()
mavenCentral()
// 配置HUAWEI Ads SDK的Maven仓地址
maven { url 'https://developer.huawei.com/repo/' }
}
}
dependencies {
implementation 'com.huawei.hms:ads-identifier:{version}'
}
-keep class com.huawei.hms.ads.** { *; }
-keep interface com.huawei.hms.ads.** { *; }
创建子线程,并调用静态的AdvertisingIdClient.getAdvertisingIdInfo(mContext)方法获取OAID信息,请勿在主线程中调用该方法,代码示例如下:
public static void getOaid(Context context, OaidCallback callback) {
if (null == context || null == callback) {
Log.e(TAG, "invalid input param");
return;
}
try {
// 获取OAID信息,请勿在主线程中调用该方法
AdvertisingIdClient.Info info = AdvertisingIdClient.getAdvertisingIdInfo(context);
if (null != info) {
callback.onSuccess(info.getId(), info.isLimitAdTrackingEnabled());
} else {
callback.onFail("oaid is null");
}
} catch (IOException e) {
Log.e(TAG, "getAdvertisingIdInfo IOException");
callback.onFail("getAdvertisingIdInfo IOException");
}
}
将OAID-Initial工程编译生成APK文件,并将APK文件安装到设备。App运行后用户界面显示如下。点击"OAID Sample",即可在右图查看结果。
祝贺您,您已经成功完成了codelab并学到了:
如何集成Ads Kit的OAID开放能力。