文档管理中心
我的

您当前正在浏览HarmonyOS最新文档,覆盖已发布的所有API版本,可在API参考中筛选您使用的API版本。详细的版本配套关系请参考版本说明。

指南与API参考API参考应用服务Ads Kit(广告服务)ArkTS组件@ohos.advertising.AdComponent (广告展示组件)

@ohos.advertising.AdComponent (广告展示组件)

Phone12+PC/2in113+Tablet12+

本模块提供展示广告的能力,覆盖了原生、贴片、开屏等广告样式。

说明

本模块首批接口从API version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。

导入模块

收起
自动换行
深色代码主题
复制
  1. import { AdComponent } from '@kit.AdsKit';

AdComponent

Phone12+PC/2in113+Tablet12+
收起
自动换行
深色代码主题
复制
  1. AdComponent({
  2. ads: advertising.Advertisement[],
  3. displayOptions: advertising.AdDisplayOptions,
  4. interactionListener: advertising.AdInteractionListener,
  5. @BuilderParam adRenderer?: () => void,
  6. @Prop rollPlayState?: number
  7. })

广告展示组件,提供展示原生、贴片、开屏等广告的能力。

装饰器类型:@Component

系统能力: SystemCapability.Advertising.Ads

参数:

展开
名称 类型 必填 装饰器类型 说明
ads advertising.Advertisement[] 是 -

广告对象数组。

说明:非贴片广告类型,组件只展示数组第一个数据。

元服务API:从API version 12开始,该接口支持在元服务中使用。

displayOptions advertising.AdDisplayOptions 是 -

广告展示参数。

元服务API:从API version 12开始,该接口支持在元服务中使用。

interactionListener advertising.AdInteractionListener 是 -

广告状态变化回调。

元服务API:从API version 12开始,该接口支持在元服务中使用。

adRenderer12+ () => void 否 @BuilderParam

应用自渲染广告样式。应用自渲染广告样式为受限使用能力,具体请前往流量变现官网客服支持进行咨询。

元服务API:从API version 20开始,该接口支持在元服务中使用。

rollPlayState15+ number 否 @Prop

用于对外提供贴片广告播放状态,设置1为播放,2为暂停,默认值为2,其他值为非法值,不改变之前的播放状态。在贴片广告所在页面需要通过@State关联属性,使用方法参考示例代码。

元服务API:从API version 20开始,该接口支持在元服务中使用。

说明

为了保证广告能正确展示,该接口必须和请求广告接口配套使用。效果和使用方法可参考原生广告、贴片广告、开屏广告接入和展示。

build

Phone12+PC/2in113+Tablet12+

build(): void

用于创建AdComponent对象的构造函数。

元服务API: 从API version 12开始,该接口支持在元服务中使用。

系统能力: SystemCapability.Advertising.Ads

示例

收起
自动换行
深色代码主题
复制
  1. import { AdComponent, advertising } from '@kit.AdsKit';
  2. import { hilog } from '@kit.PerformanceAnalysisKit';
  3. @Entry
  4. @Component
  5. struct Index {
  6. // 请求到的广告内容
  7. private ads: advertising.Advertisement[] = [];
  8. // 广告展示参数
  9. private adDisplayOptions: advertising.AdDisplayOptions = {};
  10. build() {
  11. Column() {
  12. AdComponent({
  13. ads: this.ads,
  14. displayOptions: this.adDisplayOptions,
  15. interactionListener: {
  16. onStatusChanged: (status: string, ad: advertising.Advertisement, data: string) => {
  17. switch (status) {
  18. case 'onAdOpen':
  19. hilog.info(0x0000, 'testTag', 'onAdOpen');
  20. break;
  21. case 'onAdClick':
  22. hilog.info(0x0000, 'testTag', 'onAdClick');
  23. break;
  24. case 'onAdClose':
  25. hilog.info(0x0000, 'testTag', 'onAdClose');
  26. break;
  27. }
  28. }
  29. }
  30. })
  31. .width('100%')
  32. .height('100%')
  33. }
  34. .width('100%')
  35. .height('100%')
  36. }
  37. }