@ capgo/ 电容器- admob
在您的 Capacitor app 上显示 Google AdMob 在 iOS 和 Android 上的广告: 从一个 TypeScript API 中显示横幅,相通,奖励和奖励相通格式. 用Google官方的移动Ads SDKs 将你的应用软件化.
🤖 建筑与AI编码代理? 安装 Capgo 技能 所以克劳德代码,代码,光标,副驾驶,或双子座CLI知道如何安装和使用
@capgo/capacitor-admob在您的电容应用程序中:npx skills add Cap-go/capgo-skills。然后问你的经纪人: 添加@capgo/capor-admob到我的Capacitor应用上,并把它接上 代理设置指南 • 妇女 主机磁共振
主要特点
- 四种广告格式数字 :
BannerAd, (中文(简体) ),InterstitialAd, (中文(简体) ),RewardedAd财务报告和审定财务报表RewardedInterstitialAd有负载和显示的课目,加hide()打开BannerAd。 。 。 . - 生命周期数字 :
adCreate(), (中文(简体) ),adLoad(), (中文(简体) ),adIsLoaded(), (中文(简体) ),adShow()财务报告和审定财务报表adHide()让你完全控制每个广告案例. - SDK 设置数字 :
start()初始化了 AdMob , 开始,configure()设置全应用程序选项configRequest()设置请求选项. - App 跟踪透明度数字 :
trackingAuthorizationStatus()财务报告和审定财务报表requestTrackingAuthorization()操作 iOS 跟踪提示. - 当前 SDKs:Google Mobile Ads Next Gen SDK在Android上和Google Mobile Ads SDK在iOS上.
- 平台: iOS和Android. 互联网档案馆的存檔,存档日期2013-12-22. 网络执行是一个不开放的活字节.
Capacitor 应用程序的 AdMob SDK 桥
Android现在使用Google Mobile Ads Next Gen SDK,iOS与Google Mobile Ads SDK对齐 13.1.x,同时保留现有的Capacitor-facing API.
文档
这里有最完整的医生: https://capgo.app/docs/plugins/admob/ 页面存档备份,存于互联网档案馆
兼容性
| 插件版本 | 电容兼容性 | 维护 |
|---|---|---|
| 联合国 | 联合国 | ✅ |
| 页:1 | 页:1 | 应要求 |
| 页:1 | 页:1 | ❌ |
| 页:1 | 页:1 | ❌ |
说明: 此插件的主要版本沿用了Capacitor的主要版本. 使用匹配您的 Capacitor 安装的版本( 如 Capacitor 8 的插件 v8) 。 只有最新的主要版本得到积极维护.
安装
您可以使用我们的 AI 辅助设置安装插件 。 使用以下命令将 Capgo 技能添加到您的 AI 工具 :
npx skills add https://github.com/cap-go/capacitor-skills --skill capacitor-plugins
然后使用下列提示:
Use the `capacitor-plugins` skill from `cap-go/capacitor-skills` to install the `@capgo/capacitor-admob` plugin in my project.
如果您更喜欢手动设置,请通过运行以下命令来安装插件,并遵循下面的平台特定指令:
npm install @capgo/capacitor-admob
npx cap sync
同意(UMP)
对于EEA/UK中为用户服务的应用,在加载广告前,请与Google用户消息平台(UMP)取得同意. 首先在您的 AdMob 账户中配置 GDPR 信件 .
import { AdMob, AdmobConsentStatus } from '@capgo/capacitor-admob';
await AdMob.start();
let consentInfo = await AdMob.requestConsentInfo();
if (consentInfo.isConsentFormAvailable && consentInfo.status === AdmobConsentStatus.REQUIRED) {
consentInfo = await AdMob.showConsentForm();
}
if (consentInfo.canRequestAds) {
// Load ads only after consent allows ad requests.
}
稍后让用户管理隐私选择, 打电话 showPrivacyOptionsForm() 从设置屏幕中 privacyOptionsRequirementStatus 实值 REQUIRED。 。 。 .
在真实设备上进行本地测试时, 请通过 debugGeography 财务报告和审定财务报表 testDeviceIdentifiers 改为 requestConsentInfo()。 。 。 .
API 密码
start()configure(...)configRequest(...)requestConsentInfo(...)showConsentForm()showPrivacyOptionsForm()adCreate(...)adIsLoaded(...)adLoad(...)adShow(...)adHide(...)feedAdCreate(...)feedAdDestroy(...)feedAdLoad(...)feedAdIsLoaded(...)feedAdUpdateBounds(...)feedAdSetAutoRefresh(...)trackingAuthorizationStatus()requestTrackingAuthorization()addListener(E, ...)getPluginVersion()- 接口
- 类型异名
- 数字
在 Capacitor apps 中显示 Google AdMob 广告的 AdMob Plus 插件接口.
开始( c)
start() => Promise<void>
初始化并启动 AdMob SDK.
自: 1.0.0 (单位:千美元)
配置(...)
configure(config: AdMobConfig) => Promise<void>
配置 AdMob 设置 .
| 参数 | 类型 | 说明 |
|---|---|---|
config | AdMobConfig | - AdMob 配置选项 |
自: 1.0.0 (单位:千美元)
配置请求(...)
configRequest(requestConfig: RequestConfig) => Promise<void>
配置广告请求设置 .
| 参数 | 类型 | 说明 |
|---|---|---|
requestConfig | RequestConfig | - 请求配置选项 |
自: 1.0.0 (单位:千美元)
请求同意信息(...)
requestConsentInfo(options?: AdmobConsentRequestOptions | undefined) => Promise<AdmobConsentInfo>
请求谷歌用户消息平台(UMP)的用户同意信息.
以后再打这个 start() 在EEA/UK为用户装入广告之前.
| 参数 | 类型 | 说明 |
|---|---|---|
options | AdmobConsentRequestOptions | - 调试和标记的可选同意请求选项 |
回返情况: Promise<AdmobConsentInfo>
自: 8.2.0 (中文(简体) )
显示同意格式 ()
showConsentForm() => Promise<AdmobConsentInfo>
显示您 GDPR 信件配置中提供的 Google 用户同意表 .
回返情况: Promise<AdmobConsentInfo>
自: 8.2.0 (中文(简体) )
显示空闲选项格式( )
showPrivacyOptionsForm() => Promise<void>
显示您的 GDPR 消息配置中提供的 Google 隐私选项表 .
当您的隐私信息需要用户管理选择时使用此选项 .
自: 8.2.0 (中文(简体) )
adCreate (...) (中文(简体) )
adCreate<O extends MobileAdOptions>(opts: O) => Promise<void>
创建新的广告实例 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | O | - 创建广告的选项,包括广告单位ID |
自: 1.0.0 (单位:千美元)
adIsLoaded (...) (英语)
adIsLoaded(opts: { id: number; }) => Promise<boolean>
检查广告是否装入并准备显示 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有广告标识的对象 |
回返情况: Promise<boolean>
自: 1.0.0 (单位:千美元)
adLoad( ) (...)
adLoad(opts: { id: number; }) => Promise<void>
装上广告.
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有广告标识的对象 |
自: 1.0.0 (单位:千美元)
广告放映(...)
adShow(opts: { id: number; }) => Promise<void>
显示装入的广告 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有广告标识的对象 |
自: 1.0.0 (单位:千美元)
adHide( ...) (中文(简体) )
adHide(opts: { id: number; }) => Promise<void>
隐藏当前显示的广告 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有广告标识的对象 |
自: 1.0.0 (单位:千美元)
feedAdCreate (...) (英语)
feedAdCreate(opts: FeedAdCreateOptions) => Promise<{ id: number; }>
创建入食广告槽( native overlay 或 inline brang overlay).
| 参数 | 类型 | 说明 |
|---|---|---|
opts | FeedAdCreateOptions | - 种子广告配置 |
回返情况: Promise<{ id: number; }>
自: 8.3.0 (单位:千美元)
feedAdDestroy (...) (中文(简体) )
feedAdDestroy(opts: { id: number; }) => Promise<void>
摧毁一个种子广告实例并移除其原生覆盖.
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有种子广告标识的对象 |
自: 8.3.0 (单位:千美元)
feedAdLoad (...) (中文(简体) )
feedAdLoad(opts: { id: number; }) => Promise<void>
装入或再装入饲料广告. 听着 feed.load 编号 : feed.loadfail 事件.
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有种子广告标识的对象 |
自: 8.3.0 (单位:千美元)
feedAdIsLoaded (...) (帮助)
feedAdIsLoaded(opts: { id: number; }) => Promise<boolean>
种子广告是否装入完毕 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; } | - 含有种子广告标识的对象 |
回返情况: Promise<boolean>
自: 8.3.0 (单位:千美元)
feedAddate Bounds (...) 页面存档备份,存于互联网档案馆
feedAdUpdateBounds(opts: FeedAdBounds & { id: number; }) => Promise<void>
将本地覆盖置于 HTML 占位符上。 调用卷轴、 大小和方向变化 .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | FeedAdBounds & { id: number; } | - 种子广告ID和边界从 element.getBoundingClientRect() |
自: 8.3.0 (单位:千美元)
feedAdSetAutoRefresh (...) 页面存档备份,存于互联网档案馆
feedAdSetAutoRefresh(opts: { id: number; autoRefreshMs: number | null; }) => Promise<void>
启用或禁用自动更新( 至少30秒) .
| 参数 | 类型 | 说明 |
|---|---|---|
opts | { id: number; autoRefreshMs: number | null; } | - 饲料广告标识和间隔(以毫秒计),或 null 无法禁用 |
自: 8.3.0 (单位:千美元)
认证状态 ()
trackingAuthorizationStatus() => Promise<{ status: TrackingAuthorizationStatus | false; }>
获取当前跟踪授权状态(仅iOS).
回返情况: Promise<{ status: false | TrackingAuthorizationStatus; }>
自: 1.0.0 (单位:千美元)
跟踪认证( )
requestTrackingAuthorization() => Promise<{ status: TrackingAuthorizationStatus | false; }>
向用户请求跟踪授权(仅iOS).
回返情况: Promise<{ status: false | TrackingAuthorizationStatus; }>
自: 1.0.0 (单位:千美元)
添加倾听器( E,...)
addListener<E extends AdMobPlusEventName>(eventName: E, listenerFunc: (event: AdMobPlusEventPayloadMap[E]) => void) => Promise<PluginListenerHandle> & PluginListenerHandle
为广告事件添加一个收听器.
| 参数 | 类型 | 说明 |
|---|---|---|
eventName | E | - 要听的活动名称 |
listenerFunc | (event: AdMobPlusEventPayloadMap[E]) => void | - 事件发生时调用功能 |
回返情况: Promise<PluginListenerHandle> & PluginListenerHandle
自: 1.0.0 (单位:千美元)
获取 PluginVersion ()
getPluginVersion() => Promise<{ version: string; }>
获取本地 Capacitor 插件版本 .
回返情况: Promise<{ version: string; }>
自: 1.0.0 (单位:千美元)
接口
插件听筒
| Prop | 类型 |
|---|---|
remove | () => Promise<void> |
类型异名
自动移动配置
AdMob 的配置选项 .
{ /** Whether the app should be muted / appMuted?: boolean; /* The app volume (0.0 to 1.0) */ appVolume?: number; }
请求配置
广告请求配置 .
{ /** Maximum ad content rating / maxAdContentRating?: MaxAdContentRating; /* Whether to use the same app key / sameAppKey?: boolean; /* Tag for child-directed treatment (true, false, or null for unspecified) / tagForChildDirectedTreatment?: boolean | null; /* Tag for under age of consent (true, false, or null for unspecified) / tagForUnderAgeOfConsent?: boolean | null; /* Array of test device IDs */ testDeviceIds?: string[]; }
广告同意信息
UMP退回的同意信息.
{ /** The consent status of the user. / status: AdmobConsentStatus; /* If true, a consent form is available. / isConsentFormAvailable?: boolean; /* If true, an ad request can be made. / canRequestAds: boolean; /* Privacy options requirement status of the user. */ privacyOptionsRequirementStatus: PrivacyOptionsRequirementStatus; }
同意请求
要求UMP同意信息的备选方案.
{ /** Sets the debug geography to test consent locally. / debugGeography?: AdmobConsentDebugGeography; /* * Test device IDs to allow for consent debugging. * On iOS, the ID may change if you uninstall and reinstall the app. / testDeviceIdentifiers?: string[]; /* * When true, tags the user as under the age of consent for UMP requests. * * @default false */ tagForUnderAgeOfConsent?: boolean; }
移动选项
移动广告的基础选项.
{ /** The ad unit ID from AdMob */ adUnitId: string; }
FeedAdCreate 选项
创建入食广告实例的选项 .
策略: AdMob 仅当资产在内部产生时, 才会计算本地印象和点击
链接 https://developers.google.com/admob/android/native/advanced 互联网档案馆的存檔,存档日期2013-12-21 * * 原生视频 *
GADNATIONAdView带有AdChoices图标和广告归属徽章. 此插件
在您的占位符上覆盖一个符合本地要求的视图 。 可选的 QQLink FeedNativeAdAssets 命令
返回时 feed.load 仅用于布局大小,而不是用于手动点击转发.
{ /** Native advanced or inline banner. / format: FeedAdFormat; /* AdMob ad unit ID. / adUnitId: string; /* Optional key echoed on feed events for your feed slot. / positionKey?: string; /* * Auto-refresh interval in milliseconds. AdMob requires at least 30 seconds. * Omit or pass null to disable auto-refresh. / autoRefreshMs?: number | null; /* Template colors when format is native. */ nativeStyle?: FeedNativeAdStyle; }
种子格式
入食广告格式. 两者都使用与 HTML 占位符一致的本地覆盖 .
'native' | 'banner'
FeedNativeAdStyle 软件
内置本地广告模板的可选颜色(hex字符串,例如 . #ffffff) (中文(简体) ).
{ backgroundColor?: string; headlineTextColor?: string; bodyTextColor?: string; ctaBackgroundColor?: string; ctaTextColor?: string; }
种子边界
HTML 占位符的边界,在 CSS 相对于 WebView 视图端口的像素中.
{ x: number; y: number; width: number; height: number; /** When false, the native overlay is hidden (e.g. off-screen while scrolling). / visible: boolean; /* window.devicePixelRatio from the WebView. Defaults to 1 on web. */ density?: number; }
广告活动Name
(typeof AdMobPlusEvents)[keyof typeof AdMobPlusEvents]
AdMobPlusEventPayload地图
每个 QQlink 地图 广告活动Name– 从本地密码发射出的有效载荷形状.
{ [AdMobPlusEvents.AdClick]: AdMobPlusAdIdPayload; [AdMobPlusEvents.AdDismiss]: AdMobPlusAdIdPayload; [AdMobPlusEvents.AdImpression]: AdMobPlusAdIdPayload; [AdMobPlusEvents.AdLoad]: AdMobPlusAdIdPayload; [AdMobPlusEvents.AdLoadFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.AdReward]: AdMobPlusAdRewardPayload; [AdMobPlusEvents.AdShow]: AdMobPlusAdIdPayload; [AdMobPlusEvents.AdShowFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.BannerClick]: AdMobPlusAdIdPayload; [AdMobPlusEvents.BannerClose]: AdMobPlusAdIdPayload; [AdMobPlusEvents.BannerImpression]: AdMobPlusAdIdPayload; [AdMobPlusEvents.BannerLoad]: AdMobPlusAdIdPayload; [AdMobPlusEvents.BannerLoadFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.BannerOpen]: AdMobPlusAdIdPayload; [AdMobPlusEvents.BannerSizeChange]: AdMobPlusAdIdPayload; [AdMobPlusEvents.InterstitialDismiss]: AdMobPlusAdIdPayload; [AdMobPlusEvents.InterstitialImpression]: AdMobPlusAdIdPayload; [AdMobPlusEvents.InterstitialLoad]: AdMobPlusAdIdPayload; [AdMobPlusEvents.InterstitialLoadFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.InterstitialShow]: AdMobPlusAdIdPayload; [AdMobPlusEvents.InterstitialShowFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.RewardedDismiss]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedImpression]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedInterstitialDismiss]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedInterstitialImpression]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedInterstitialLoad]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedInterstitialLoadFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.RewardedInterstitialReward]: AdMobPlusAdRewardPayload; [AdMobPlusEvents.RewardedInterstitialShow]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedInterstitialShowFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.RewardedLoad]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedLoadFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.RewardedReward]: AdMobPlusAdRewardPayload; [AdMobPlusEvents.RewardedShow]: AdMobPlusAdIdPayload; [AdMobPlusEvents.RewardedShowFail]: AdMobPlusAdFailurePayload; [AdMobPlusEvents.FeedClick]: AdMobPlusFeedAdIdPayload; [AdMobPlusEvents.FeedClose]: AdMobPlusFeedAdIdPayload; [AdMobPlusEvents.FeedImpression]: AdMobPlusFeedAdIdPayload; [AdMobPlusEvents.FeedLoad]: AdMobPlusFeedLoadPayload; [AdMobPlusEvents.FeedLoadFail]: AdMobPlusAdFailurePayload & AdMobPlusFeedAdIdPayload; [AdMobPlusEvents.FeedOpen]: AdMobPlusFeedAdIdPayload; [AdMobPlusEvents.FeedRefresh]: AdMobPlusFeedAdIdPayload; }
AdMobPlus adIdPay 装入量
事件有效载荷始终包括原生广告实例代号(adId). iOS还出出出遗产 id。 。 。 .
{ adId: number; id?: number; }
AdMobPlus 失败文件
装入和全屏显示来自本地的故障有效载荷 LoadAdError 编号 : FullScreenContentError。 。 。 .
AdMobPlusAdIdPayload & { code: number; message: string; /** Legacy iOS failure field; same string as message when present. */ error?: string; }
AdMobPlus adwardPay 负荷
奖励回调包括所得奖励加 adId。 。 。 .
AdMobPlusAdIdPayload & { reward: { amount: number; type: string; }; }
AdMobPlus FeedAdIdPay 装入量
信息发布事件 feedAdId (同数字编号同 feedAdCreate) (中文(简体) ).
{ feedAdId: number; positionKey?: string; format?: 'native' | 'banner'; }
AdMobPlus FeedLoadPay 装入量
AdMobPlusFeedAdIdPayload & { assets?: Record<string, unknown>; }
记录
构造 T 类型 K 的一组属性类型
{
[P in K]: T;
}
数字
最大连线
| 成员 | 数值 | 说明 |
|---|---|---|
G | 'G' | 一般听众 |
MA | 'MA' | 观众 |
PG | 'PG' | 父母指导 |
T | 'T' | 少年 |
UNSPECIFIED | '' | 未指明的评级 |
同意状况
| 成员 | 数值 | 说明 |
|---|---|---|
NOT_REQUIRED | 'NOT_REQUIRED' | 无需用户同意. |
OBTAINED | 'OBTAINED' | 已获得用户同意. |
REQUIRED | 'REQUIRED' | 需要用户同意,但尚未获得. |
UNKNOWN | 'UNKNOWN' | 未知的同意地位。 调用请求ConsentInfo () 更新它 . |
隐私选择要求
| 成员 | 数值 | 说明 |
|---|---|---|
NOT_REQUIRED | 'NOT_REQUIRED' | 不需要隐私选项进入点 . |
REQUIRED | 'REQUIRED' | 需要隐私选项进入点 . |
UNKNOWN | 'UNKNOWN' | 隐私选项要求状态未知 . |
调试地理
| 成员 | 数值 | 说明 |
|---|---|---|
DISABLED | 0 | 调试地理已禁用 . |
EEA | 1 | 地理在 EEA 中出现,用于调试设备. |
NOT_EEA | 2 | 对于调试设备,地理在欧洲经济区中并不存在. |
US | 3 | 地理在受管制的美国状态下出现,用于调试设备. |
OTHER | 4 | 地理显示为调试设备的其他设备 . |
认证状态
| 成员 | 数值 | 说明 |
|---|---|---|
notDetermined | 0 | 用户尚未收到授权请求 |
restricted | 1 | 用户受限, 设备无法提供授权 |
denied | 2 | 用户拒绝授权 |
authorized | 3 | 用户授权访问 |