1# @ohos.advertising.AutoAdComponent (轮播广告展示组件)
2
3
4本模块提供展示轮播广告的能力。
5
6
7> **说明:**
8>
9> 本模块首批接口从API Version 11开始支持。后续版本的新增接口,采用上角标单独标记接口的起始版本。
10
11
12## 导入模块
13
14```ts
15import { AutoAdComponent } from '@kit.AdsKit';
16```
17
18
19## AutoAdComponent
20
21AutoAdComponent(adParam: advertising.AdRequestParams, adOptions: advertising.AdOptions, displayOptions: advertising.AdDisplayOptions, interactionListener: advertising.AdInteractionListener): void
22
23自动播放广告组件。
24
25**原子化服务API:** 从API version 12开始,该接口支持在原子化服务中使用。
26
27**系统能力:** SystemCapability.Advertising.Ads
28
29
30**参数:**
31
32
33| **参数名** | **类型** | 必填 | 说明 |
34| -------- | -------- | -------- | -------- |
35| adParam | advertising.[AdRequestParams](js-apis-advertising.md#adrequestparams) | 是 | 广告请求参数。 |
36| adOptions | advertising.[AdOptions](js-apis-advertising.md#adoptions) | 是 | 广告配置。 |
37| displayOptions | advertising.[AdDisplayOptions](js-apis-advertising.md#addisplayoptions) | 是 | 广告展示参数。 |
38| interactionListener | advertising.[AdInteractionListener](js-apis-advertising.md#adinteractionlistener) | 是 | 广告状态变化回调。 |
39
40
41**示例:**
42```ts
43import { AutoAdComponent, advertising } from '@kit.AdsKit';
44import { hilog } from '@kit.PerformanceAnalysisKit';
45
46@Entry
47@Component
48export struct ShowCarouselAd {
49  private adRequestParam: advertising.AdRequestParams = {
50    // 广告类型
51    adType: 8,
52    // 测试广告位ID
53    adId: "test1"
54  };
55  private adOptions: advertising.AdOptions = {
56    // 设置广告内容分级上限
57    adContentClassification: 'A'
58  };
59  // 广告展示参数
60  private adDisplayOptions: advertising.AdDisplayOptions = {
61    // 是否静音,默认不静音
62    mute: false,
63    // 广告轮播的时间间隔,单位ms,取值范围[30000, 120000]
64    refreshTime: 30000
65  }
66
67  build() {
68    Column() {
69      // AutoAdComponent组件用于展示轮播非全屏广告
70      AutoAdComponent({
71        adParam: this.adRequestParam,
72        adOptions: this.adOptions,
73        displayOptions: this.adDisplayOptions,
74        interactionListener: {
75          // 广告状态变化回调
76          onStatusChanged: (status: string, ad: advertising.Advertisement, data: string) => {
77            switch (status) {
78              case 'onAdOpen':
79                hilog.info(0x0000, 'testTag', '%{public}s', 'onAdOpen');
80                break;
81              case 'onAdClick':
82                hilog.info(0x0000, 'testTag', '%{public}s', 'onAdClick');
83                break;
84              case 'onAdClose':
85                hilog.info(0x0000, 'testTag', '%{public}s', 'onAdClose');
86                break;
87            }
88          }
89        }
90      })
91        .width('100%')
92        .height('100%')
93    }.width('100%').height('100%')
94  }
95}
96```
97