简介

支撑开发者在华为设备上进行广告流量变现,提供广告标识符能力方便开发者进行个性化广告投放。

广告标识符(OAID)是一种非永久性设备标识符。使用OAID可在保护用户个人数据隐私安全的前提下,向用户提供个性化广告。

开发者可通过华为开放的API,获取广告标识符以及"限制个性化广告"开关状态。

如果"限制个性化广告"开关状态为false,开发者可基于广告标识符进行广告跟踪和个性化广告推荐以提升广告精准性。

如果用户设置"限制个性化广告"开关为true,开发者应用和广告商不能使用OAID来向用户推送个性化广告,但仍可以推送非个性化的广告。

用户可在系统"设置>隐私>广告与隐私"或"设置>安全与隐私>更多安全设置>匿名设备标识"界面中,重置"广告标识符"和启用"限制个性化广告",以保护用户个人数据的隐私安全。

用户重置"广告标识符"后,会生成一个新的OAID,开发者将只能获取到这个新的OAID。

OAID开放能力

开发者可基于OAID,向用户提供个性化的营销活动或商业广告,提升转化效果,过程如下:
1.开发者APP可调用华为广告服务(Huawei Ads)的接口,获得OAID和"限制个性化广告"开关状态。
2.开发者APP请求广告时,如果用户未启用"限制个性化广告",可根据OAID构建的细分人群,进行个性化的营销活动和商业广告推荐。
3.开发者APP向用户展示广告,当广告被用户点击后,开发者APP可从应用市场下载、安装被推广的APP。
4.开发者APP在曝光、点击、下载等事件中,携带OAID,用于平台对营销活动或商业广告的效果进行跟踪和分析。

您将建立什么

在这个Codelab中,您将学习APP接入HUAWEI Ads生态系统。

您将会学到什么

硬件要求

华为Android终端设备(手机、平板)。

软件要求

华为Android终端设备中HMS Core版本在2.6.2及以上。
查看方法:设备上 设置-> 应用 –>应用管理 搜索HMS Core

下载并解压CodeLab_AdsOAID_Initial_Demo.zip

源码下载

使用Android Studio打开CodeLab_AdsOAID_Initial_Demo工程。

1、集成SDK
步骤1 配置HUAWEI Ads SDK的maven仓地址。
打开Android Studio项目级build.gradle文件,在allprojects ->repositories里面配置SDK的maven仓地址。

/CodeLab_AdsOAID_Initial_Demo/build.gradle

allprojects { repositories { google() jcenter() maven { url 'https://developer.huawei.com/repo/' } } }

步骤2 配置依赖
打开子工程app下的build.gradle文件,在dependencies新增SDK的依赖。

/CodeLab_AdsOAID_Initial_Demo/app/build.gradle

dependencies { implementation 'com.huawei.hms:ads-identifier:{version}' }

步骤3 同步修改的文件

步骤4 配置混淆脚本(必选)
/CodeLab_AdsOAID_Initial_Demo/app/proguard-rules.pro

-keep class com.huawei.hms.ads.** { *; } -keep interface com.huawei.hms.ads.** { *; }

2、调用getAdvertisingIdInfo静态方法获取OAID信息
创建子线程,并调用静态的AdvertisingIdClient.getAdvertisingIdInfo(mContext)方法获取OAID信息,不要在主线程中调用该方法,代码示例如下:
/CodeLab_AdsOAID_Initial_Demo/app/src/main/java/com/huawei/pps/hms/test/oaid/OaidSdkUtil.java

public static void getOaid(Context context, OaidCallback callback) { if (null == context || null == callback) { Log.e(TAG, "invalid input param"); return; } try { AdvertisingIdClient.Info info = AdvertisingIdClient.getAdvertisingIdInfo(context); if (null != info) { callback.onSuccuss(info.getId(), info.isLimitAdTrackingEnabled()); } else { callback.onFail("oaid is null"); } } catch (IOException e) { Log.e(TAG, "getAdvertisingIdInfo IOException"); callback.onFail("getAdvertisingIdInfo IOException"); } }

CodeLab_AdsOAID_Initial_Demo工程编译生成apk文件,并将apk文件安装到设备。APP运行后用户界面显示如下。点击 OAID Sample,即可在右图查看结果。

祝贺您,你已经成功完成了Codelab并学到了:

您可以阅读下面链接,了解更多相关的信息。

相关文档

您可以在Github上下载源码:github.com/Huawei/Consumer/tree/master/Codelabs/Ads-OAID

也可以点击下方按钮下载源码。

源码下载

已复制代码