Google 移动广告 React Native API

@google/mobile-ads 模块提供核心 TypeScript 接口、类和顶级函数,用于将 Google 移动广告集成到 React Native 应用中。

概览


类型别名
AdapterState
表示中介适配器的可能初始化状态。
AdChoicesPlacement
广告视图中“广告选项”图标的位置。
AdFormat
所请求广告的格式。
AdInspectorError
有关广告检查器失败原因的错误信息。
AdInspectorErrorCode
影响广告检查器打开或运行的错误。
AdOrientation
内嵌自适应横幅广告和大型锚定自适应横幅广告的屏幕方向选项。
AdSize
表示广告的尺寸。
AgeRestrictedTreatment
为广告请求定义了年龄限制处理选项。
ConsentStatus
同意情况值。
DebugGeography
用于测试地理位置的调试值。
FormErrorCode
表示 User Messaging Platform (UMP) 表单操作失败的错误代码。
FullScreenContentErrorCode
LoadAdErrorCode
表示广告加载操作失败的错误代码。
MaxAdContentRating
定义应用的广告内容分级上限,对可展示的广告类型进行分类。
NativeAdAssetNames
用于标识标准原生广告素材的名称。
NativeAdType
用于标识已加载的原生广告的格式。
NativeMediaAspectRatio
返回的原生广告媒体的宽高比偏好设置。
OnAdInspectorClosedListener
当广告检查器界面关闭时要调用的回调的接口定义。
PrecisionType
报告的广告价值的精确度。
PrivacyOptionsRequirementStatus
隐私设置选项要求状态。
PublisherPrivacyPersonalizationState
表示发布商隐私保护处理措施个性化状态。
ResizeMode
用于自定义 NativeAdMediaView 中图片内容缩放模式的选项。
ResolvedAdSize
表示广告加载后广告尺寸的最终解析状态。
SwipeGestureDirection
自定义点击滑动操作的说明。
变量
AdSize
预定义的广告尺寸和用于创建自适应尺寸和自定义尺寸的辅助方法。
函数
canRequestAds
检查当前意见征求状态是否允许您请求广告。
getConsentStatus
获取用户的当前同意情况。
getInitializationStatus
获取 SDK 初始化状态。
getPrivacyOptionsRequirementStatus
检查您的应用是否需要隐私选项入口点。
getRequestConfiguration
获取全局请求配置。
initialize
初始化 Google 移动广告 SDK。
isConsentFormAvailable
检查意见征求表单是否可用。
loadAndShowConsentFormIfRequired
加载意见征求表单,并在用户当前的同意情况需要时(例如,状态为 REQUIRED)向用户显示该表单。
openAdInspector
打开 Google 移动广告 SDK 广告检查器叠加层。
openDebugMenu
打开调试菜单。
parseLoadAdError
解析广告加载期间抛出的原生错误,并将其封装在 LoadAdError 中。
requestConsentInfoUpdate
请求更新意见征求信息。
reset
清除永久性存储中的所有同意情况。
setPublisherFirstPartyIdEnabled
控制是否启用发布商第一方 ID。
setRequestConfiguration
设置合规性和定位的全局请求配置。
setUserControlledAppVolume
设置用户控制的应用的音频音量。
setUserMutedApp
设置应用是否处于静音状态。
showPrivacyOptionsForm
显示隐私设置选项表单。

类型别名


AdapterState

AdapterState: typeof AdapterState[keyof typeof AdapterState]
表示中介适配器的可能初始化状态。
属性
NOT_READY
表示中介适配器尚未初始化或初始化失败。
READY
表示中介适配器已成功初始化并准备好投放广告。

AdChoicesPlacement

AdChoicesPlacement: typeof AdChoicesPlacement[keyof typeof AdChoicesPlacement]
广告视图中“广告选项”图标的位置。
属性
BOTTOM_LEFT
广告的左下角。
BOTTOM_RIGHT
广告的右下角。
TOP_LEFT
广告的左上角。
TOP_RIGHT
广告的右上角。

AdFormat

AdFormat: typeof AdFormat[keyof typeof AdFormat]
所请求广告的格式。
属性
APP_OPEN
开屏广告格式。
BANNER
横幅广告格式。
INTERSTITIAL
插页式广告格式。
NATIVE
原生广告格式。
REWARDED
激励广告格式。
REWARDED_INTERSTITIAL
插页式激励广告格式。

AdInspectorError

AdInspectorError: BaseError<AdInspectorErrorCode>
有关广告检查器失败原因的错误信息。

AdInspectorErrorCode

AdInspectorErrorCode: typeof AdInspectorErrorCode[keyof typeof AdInspectorErrorCode]
影响广告检查器打开或运行的错误。
属性
ALREADY_OPEN
广告检查器无法打开,因为它已处于打开状态。
FAILED_TO_LOAD
广告检查器未能加载。
INTERNAL_ERROR
广告检查器出现内部错误。
NOT_IN_TEST_MODE
无法打开广告检查器,因为设备未处于测试模式。

AdOrientation

AdOrientation: typeof AdOrientation[keyof typeof AdOrientation]
内嵌自适应横幅广告和大型锚定自适应横幅广告的屏幕方向选项。
属性
CURRENT
LANDSCAPE
PORTRAIT

AdSize

表示广告的尺寸。

可以是预定义的一组尺寸(例如 AdSize.LARGE_BANNER),也可以是自适应尺寸。

AgeRestrictedTreatment

AgeRestrictedTreatment: typeof AgeRestrictedTreatment[keyof typeof AgeRestrictedTreatment]
为广告请求定义了年龄限制处理选项。
属性
CHILD
表示广告请求应采用“面向儿童的内容”年龄分级保护标记。
TEEN
表示广告请求应采用“面向青少年的内容”年龄分级保护标记。
UNSPECIFIED
表示广告请求不适用任何特定的受年龄限制的处理信号。

ConsentStatus

ConsentStatus: typeof ConsentStatus[keyof typeof ConsentStatus]
同意情况值。
属性
NOT_REQUIRED
无需征得同意。
OBTAINED
已征得用户同意,个性化广告与非个性化广告 未定义。
REQUIRED
需要征得用户同意,但尚未征得。
UNKNOWN
同意情况未知。

DebugGeography

DebugGeography: typeof DebugGeography[keyof typeof DebugGeography]
用于测试地理位置的调试值。
属性
DISABLED
已为调试设备停用调试地理位置功能。
EEA
对于调试设备,地理位置会显示为欧洲经济区 (EEA)。
OTHER
对于调试设备,地理位置会显示为位于没有有效法规的地区。
REGULATED_US_STATE
对于调试设备,地理位置会显示为位于受监管的美国州级行政区。

FormErrorCode

FormErrorCode: typeof FormErrorCode[keyof typeof FormErrorCode]
表示 User Messaging Platform (UMP) 表单操作失败的错误代码。
属性
ALREADY_USED
相应同意书已被使用。
INTERNAL_ERROR
SDK 内部发生了某些情况。
INVALID_OPERATION
操作无效。
NETWORK_ERROR
由于网络连接问题,表单操作失败。
TIMEOUT
表单操作超时。
UNAVAILABLE
没有可用的意见征求表单。
UNKNOWN
错误代码无法映射到已知错误代码。

FullScreenContentErrorCode

FullScreenContentErrorCode: typeof FullScreenContentErrorCode[keyof typeof FullScreenContentErrorCode]
属性
AD_ALREADY_USED
广告已展示。
AD_NOT_READY
广告尚无法展示。
AD_TOO_LARGE
广告对于场景来说过大(仅限 iOS)。
APP_NOT_FOREGROUND
应用不在前台。
INTERNAL_ERROR
内部发生了一些情况;例如,在准备展示广告内容时发生了异常。
MEDIATION_ERROR
中介适配器未能展示广告。请参阅 FullScreenContentError.mediationAdError 了解根本原因。
UNKNOWN
错误代码无法映射到已知错误代码。

LoadAdErrorCode

LoadAdErrorCode: typeof LoadAdErrorCode[keyof typeof LoadAdErrorCode]
表示广告加载操作失败的错误代码。
属性
AD_ALREADY_USED
广告响应已用于加载广告。
APP_ID_MISSING
由于缺少应用 ID,因此未发出广告请求。
CANCELLED
广告请求已取消(仅限 Android)。
INTERNAL_ERROR
SDK 内部发生了某些情况。
INVALID_REQUEST
广告请求无效;例如,广告单元 ID 不正确。
INVALID_RESPONSE
服务器到服务器的广告响应无效。例如,广告响应中没有请求 ID。
MEDIATION_ERROR
找不到中介适配器,或无法执行广告请求。
NETWORK_ERROR
由于网络连接问题,广告请求未成功。
NO_FILL
广告请求成功,但由于缺少广告资源,未返回广告。
TIMEOUT
广告请求超时。
UNKNOWN
错误代码无法映射到已知错误代码。

MaxAdContentRating

MaxAdContentRating: typeof MaxAdContentRating[keyof typeof MaxAdContentRating]
定义应用的广告内容分级上限,对可展示的广告类型进行分类。
属性
G
适合一般受众(包括家庭和儿童)的内容。
MA
仅适合成人受众的内容。
PG
适合大多数受众(未成年人需在家长指导下观看)的内容。
T
适合青少年和年龄更大的受众群体的内容。
UNSPECIFIED
未指定内容分级。

NativeAdAssetNames

NativeAdAssetNames: typeof NativeAdAssetNames[keyof typeof NativeAdAssetNames]
用于标识标准原生广告素材的名称。
属性
ADCHOICES_CONTAINER_VIEW
用于放置“广告选项”叠加层的容器。
ADVERTISER
广告客户的名称。
BODY
广告的正文。
CALL_TO_ACTION
广告的号召性用语(例如“安装”或“了解详情”)。
HEADLINE
广告的标题。
ICON
广告的图标图片。
MEDIA_CONTENT
广告的主要媒体内容(图片或视频)。
PRICE
所宣传的应用或商品的价格。
STAR_RATING
所宣传应用或商品的星级评分。
STORE
商店名称。

NativeAdType

NativeAdType: typeof NativeAdType[keyof typeof NativeAdType]
用于标识已加载的原生广告的格式。
属性
BANNER
横幅广告。
CUSTOM_NATIVE
自定义原生格式广告。
NATIVE
原生广告。

NativeMediaAspectRatio

NativeMediaAspectRatio: typeof NativeMediaAspectRatio[keyof typeof NativeMediaAspectRatio]
返回的原生广告媒体的宽高比偏好设置。
属性
ANY
对返回的原生广告媒体的宽高比没有偏好设置。
LANDSCAPE
请求返回的原生广告媒体采用横向宽高比。
PORTRAIT
请求返回的原生广告媒体采用纵向宽高比。
SQUARE
请求返回的原生广告媒体采用正方形宽高比。
UNKNOWN
宽高比未知。

OnAdInspectorClosedListener

OnAdInspectorClosedListener: ((error?) => void)
当广告检查器界面关闭时要调用的回调的接口定义。

PrecisionType

PrecisionType: typeof PrecisionType[keyof typeof PrecisionType]
报告的广告价值的精确度。
属性
ESTIMATED
根据汇总数据估算的广告价值。
PRECISE
为相应广告支付的费用的精确值。
PUBLISHER_PROVIDED
广告价值是由发布商提供的,例如中介组中的人工每千次展示费用。
UNKNOWN
精确度未知的广告价值。

PrivacyOptionsRequirementStatus

PrivacyOptionsRequirementStatus: typeof PrivacyOptionsRequirementStatus[keyof typeof PrivacyOptionsRequirementStatus]
隐私权选项要求状态。
属性
NOT_REQUIRED
隐私设置选项入口点不是必需的。
REQUIRED
必须设置隐私设置选项入口点。
UNKNOWN
隐私权选项要求状态未知。

PublisherPrivacyPersonalizationState

PublisherPrivacyPersonalizationState: typeof PublisherPrivacyPersonalizationState[keyof typeof PublisherPrivacyPersonalizationState]
表示发布商隐私保护处理措施的个性化状态。
属性
DEFAULT
表示广告请求应接受默认的发布商隐私权处理方式。
DISABLED
表示广告请求应接受非个性化发布商隐私保护处理。
ENABLED
表示广告请求应接受个性化的发布商隐私处理方式。

ResizeMode

ResizeMode: typeof ResizeMode[keyof typeof ResizeMode]
用于自定义 NativeAdMediaView 中图片内容缩放模式的选项。
属性
CONTAIN
均匀缩放以适应视图。

图片高度和宽度会一起缩放,使每个维度都小于或等于视图的相应维度。图片会缩放以适应视图的大小,而不会扭曲其宽高比或被剪裁。
COVER
均匀缩放以覆盖视图。

图片的高度和宽度会一起缩放,以使每个尺寸都等于或大于视图的相应尺寸。系统会剪裁图片以适应视图,而不会扭曲其宽高比。
STRETCH
独立缩放宽度和高度以填充视图。

图片高度和宽度会分别缩放,以匹配视图的尺寸。图片会缩放以完全填满视图,但不会被裁剪,不过,图片的宽高比不会保持不变。

ResolvedAdSize

ResolvedAdSize: FixedAdSize | FluidAdSize
表示广告加载完毕后广告尺寸的最终解析状态。

对于大多数广告,此状态会解析为具有精确 width 和 height 维度的 FixedAdSize。 对于动态调整尺寸的横幅广告,此属性会解析为 FluidAdSize,其中的尺寸由视图层次结构管理。

SwipeGestureDirection

SwipeGestureDirection: typeof SwipeGestureDirection[keyof typeof SwipeGestureDirection]
自定义点击滑动操作的说明。
属性
DOWN
向下滑动。
LEFT
向左滑动。
RIGHT
向右滑动。
UP
向上滑动。

变量


AdSize

AdSize: {
  BANNER: FixedAdSize;
  custom: ((width, height) => FixedAdSize);
  FLUID: FluidAdSize;
  FULL_BANNER: FixedAdSize;
  getCurrentOrientationInlineAdaptiveBannerAdSize: ((width) => InlineAdaptiveAdSize);
  getInlineAdaptiveBannerAdSize: ((width, maxHeight) => InlineAdaptiveAdSize);
  getLandscapeInlineAdaptiveBannerAdSize: ((width) => InlineAdaptiveAdSize);
  getLargeAnchoredAdaptiveBannerAdSize: ((width) => Promise<LargeAnchoredAdaptiveAdSize>);
  getLargeLandscapeAnchoredAdaptiveBannerAdSize: ((width) => Promise<LargeAnchoredAdaptiveAdSize>);
  getLargePortraitAnchoredAdaptiveBannerAdSize: ((width) => Promise<LargeAnchoredAdaptiveAdSize>);
  getPortraitInlineAdaptiveBannerAdSize: ((width) => InlineAdaptiveAdSize);
  LARGE_BANNER: FixedAdSize;
  LEADERBOARD: FixedAdSize;
  MEDIUM_RECTANGLE: FixedAdSize;
}
预定义的广告尺寸和用于创建自适应尺寸和自定义尺寸的辅助方法。

函数


canRequestAds

canRequestAds(): boolean
检查当前意见征求状态是否允许您请求广告。
返回
boolean 如果您可以请求广告,则为 true;否则为 false。

getConsentStatus

getConsentStatus(): ConsentStatus
获取用户的当前同意情况。
返回
ConsentStatus 当前的意见征求状态。

getInitializationStatus

getInitializationStatus(): InitializationStatus
获取 SDK 初始化状态。

使用此方法可检查 SDK 是否已完成初始化,并检查各个中介适配器的状态。
返回
InitializationStatus 当前初始化状态。

getPrivacyOptionsRequirementStatus

getPrivacyOptionsRequirementStatus(): PrivacyOptionsRequirementStatus
检查您的应用是否需要隐私设置选项入口点。

如果需要,请向应用添加一个可见且可互动的界面元素,该元素会调用 showPrivacyOptionsForm 以显示隐私设置选项表单。如果不需要入口点,请将界面元素配置为不可见且不可互动。
返回
PrivacyOptionsRequirementStatus 隐私设置选项要求状态。

getRequestConfiguration

getRequestConfiguration(): RequestConfiguration
获取全局请求配置。

使用此方法可检索当前已全局应用的请求配置。
返回
RequestConfiguration 当前的全局请求配置。

initialize

initialize(config, onInitializationComplete?): void
初始化 Google 移动广告 SDK。

请在加载广告之前以及与 Google 移动广告 SDK 的其余部分互动之前调用此方法。
参数
config: InitializationConfig 用于控制 SDK 初始化的选项。
Optional onInitializationComplete: ((status) => void) SDK 完成初始化时要运行的回调函数。

isConsentFormAvailable

isConsentFormAvailable(): boolean
检查意见征求表单是否可用。
返回
boolean 如果同意声明表单可用,则为 true;否则为 false。

loadAndShowConsentFormIfRequired

loadAndShowConsentFormIfRequired(onDismissed?): void
加载意见征求表单,并在当前用户意见征求状态需要时(例如,状态为 REQUIRED)向用户显示该表单。
参数
Optional onDismissed: ((error?) => void) 在表单关闭时或不需要表单时调用的回调函数,如果展示失败,则会提供可选的 FormError。

openAdInspector

openAdInspector(_listener): void
打开 Google 移动广告 SDK 广告检查器叠加层。

使用此方法可调试中介设置和广告来源。
参数
_listener: OnAdInspectorClosedListener

openDebugMenu

openDebugMenu(adUnitId): void
打开调试菜单。

使用此方法可打开特定广告单元的调试菜单,以帮助测试和排查广告配置问题。
参数
adUnitId: string 要打开调试菜单的广告单元 ID。

parseLoadAdError

parseLoadAdError(error): LoadAdError
解析广告加载期间抛出的原生错误,并将其封装在 LoadAdError 中。
参数
error: unknown 原生模块抛出的错误对象。
返回
LoadAdError 已解析的 LoadAdError 对象。

requestConsentInfoUpdate

requestConsentInfoUpdate(params?, onComplete?): void
请求更新意见征求信息。

此 API 必须在每次应用会话中调用 getConsentStatus 之前调用。

调用此 API 后,getConsentStatus 返回值会同步更新,以保存上一次应用会话中的同意情况(如果存在)。

在调用 onComplete 回调后,getConsentStatus 可以再次更新为最新状态。
参数
Optional params: ConsentRequestParameters 用于调试和定位的可选配置。
Optional onComplete: ((error?) => void) 在用户意见信息更新完成时调用的回调函数,如果请求失败,则会提供可选的 FormError。

重置

reset(): void
从永久性存储中清除所有同意情况。

仅用于调试目的。

setPublisherFirstPartyIdEnabled

setPublisherFirstPartyIdEnabled(enabled): void
控制是否启用发布商第一方 ID。

启用或停用 Google 移动广告 SDK 发布商第一方 ID(以前称为“同应用标识键”)。
另请参阅
参数
enabled: boolean 设置为 true 可启用发布商第一方 ID;设置为 false 可停用。默认值为 true。

setRequestConfiguration

setRequestConfiguration(_config): void
设置合规性和定位方面的全局请求配置。

使用此方法可指定定位详细信息,例如广告内容分级上限、合规性设置(例如年龄分级保护标记)和测试设备 ID。
参数
_config: RequestConfiguration

setUserControlledAppVolume

setUserControlledAppVolume(volume): void
设置用户控制的应用的音频音量。

使用此方法可相对于设备上的其他音频输出调整所有广告的音频音量。
参数
volume: number 音量级别,介于 0.0(静音)和 1.0(最大音量)之间。 此范围内的任何浮点值均有效(例如,0.001 或 0.33333)。该值不限于特定的步长增量,例如 0.1。

setUserMutedApp

setUserMutedApp(muted): void
设置应用是否处于静音状态。

使用此方法可控制后续广告的初始音频静音状态。
参数
muted: boolean 应用音频是否应静音。默认值为 false。

showPrivacyOptionsForm

showPrivacyOptionsForm(onDismissed?): void
显示隐私设置选项表单。

如果 getPrivacyOptionsRequirementStatus 为 REQUIRED,则显示隐私设置选项表单。

只有在响应用户输入以请求显示隐私设置选项表单时,才应调用此方法。

当表单可用时,SDK 会自动预加载隐私设置选项表单。如果未预加载任何表单,SDK 将尝试异步加载一个表单。

在用户看到表单、选择选项并关闭表单后,系统会调用 onDismissed 回调。如果出现以下情况,该方法还可以返回 FormError:
  • 此表单不可用。
  • 表单无法显示。
  • 表单仍在预加载中。
参数
Optional onDismissed: ((error?) => void) 在表单关闭时调用的回调函数,如果展示失败,则会提供可选的 FormError。