https://github.com/cap-go/capacitor-admob
Capacitor plugin to bridge AdMob SDKs for iOS and Android
https://github.com/cap-go/capacitor-admob
capacitor capacitor-plugin
Last synced: 2 months ago
JSON representation
Capacitor plugin to bridge AdMob SDKs for iOS and Android
- Host: GitHub
- URL: https://github.com/cap-go/capacitor-admob
- Owner: Cap-go
- License: mpl-2.0
- Created: 2025-10-09T16:33:38.000Z (8 months ago)
- Default Branch: main
- Last Pushed: 2026-01-31T23:04:01.000Z (4 months ago)
- Last Synced: 2026-02-01T10:27:23.275Z (4 months ago)
- Topics: capacitor, capacitor-plugin
- Language: Kotlin
- Homepage: https://capgo.app
- Size: 683 KB
- Stars: 4
- Watchers: 0
- Forks: 0
- Open Issues: 1
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: CONTRIBUTING.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
AdMob SDK bridge for Capacitor apps
## Documentation
The most complete doc is available here: https://capgo.app/docs/plugins/admob/
## Compatibility
| Plugin version | Capacitor compatibility | Maintained |
| -------------- | ----------------------- | ---------- |
| v8.\*.\* | v8.\*.\* | ✅ |
| v7.\*.\* | v7.\*.\* | On demand |
| v6.\*.\* | v6.\*.\* | ❌ |
| v5.\*.\* | v5.\*.\* | ❌ |
> **Note:** The major version of this plugin follows the major version of Capacitor. Use the version that matches your Capacitor installation (e.g., plugin v8 for Capacitor 8). Only the latest major version is actively maintained.
## Install
```bash
npm install @capgo/capacitor-admob
npx cap sync
```
## API
* [`start()`](#start)
* [`configure(...)`](#configure)
* [`configRequest(...)`](#configrequest)
* [`adCreate(...)`](#adcreate)
* [`adIsLoaded(...)`](#adisloaded)
* [`adLoad(...)`](#adload)
* [`adShow(...)`](#adshow)
* [`adHide(...)`](#adhide)
* [`trackingAuthorizationStatus()`](#trackingauthorizationstatus)
* [`requestTrackingAuthorization()`](#requesttrackingauthorization)
* [`addListener(string, ...)`](#addlistenerstring-)
* [`getPluginVersion()`](#getpluginversion)
* [Interfaces](#interfaces)
* [Type Aliases](#type-aliases)
* [Enums](#enums)
AdMob Plus Plugin interface for displaying Google AdMob ads in Capacitor apps.
### start()
```typescript
start() => Promise
```
Initialize and start the AdMob SDK.
**Since:** 1.0.0
--------------------
### configure(...)
```typescript
configure(config: AdMobConfig) => Promise
```
Configure AdMob settings.
| Param | Type | Description |
| ------------ | --------------------------------------------------- | --------------------------------- |
| **`config`** | AdMobConfig | - Configuration options for AdMob |
**Since:** 1.0.0
--------------------
### configRequest(...)
```typescript
configRequest(requestConfig: RequestConfig) => Promise
```
Configure ad request settings.
| Param | Type | Description |
| ------------------- | ------------------------------------------------------- | ------------------------------- |
| **`requestConfig`** | RequestConfig | - Request configuration options |
**Since:** 1.0.0
--------------------
### adCreate(...)
```typescript
adCreate(opts: O) => Promise
```
Create a new ad instance.
| Param | Type | Description |
| ---------- | -------------- | --------------------------------------------------- |
| **`opts`** | O | - Options for creating the ad, including ad unit ID |
**Since:** 1.0.0
--------------------
### adIsLoaded(...)
```typescript
adIsLoaded(opts: { id: number; }) => Promise
```
Check if an ad is loaded and ready to be shown.
| Param | Type | Description |
| ---------- | ---------------------------- | ----------------------------- |
| **`opts`** | { id: number; } | - Object containing the ad ID |
**Returns:** Promise<boolean>
**Since:** 1.0.0
--------------------
### adLoad(...)
```typescript
adLoad(opts: { id: number; }) => Promise
```
Load an ad.
| Param | Type | Description |
| ---------- | ---------------------------- | ----------------------------- |
| **`opts`** | { id: number; } | - Object containing the ad ID |
**Since:** 1.0.0
--------------------
### adShow(...)
```typescript
adShow(opts: { id: number; }) => Promise
```
Show a loaded ad.
| Param | Type | Description |
| ---------- | ---------------------------- | ----------------------------- |
| **`opts`** | { id: number; } | - Object containing the ad ID |
**Since:** 1.0.0
--------------------
### adHide(...)
```typescript
adHide(opts: { id: number; }) => Promise
```
Hide a currently displayed ad.
| Param | Type | Description |
| ---------- | ---------------------------- | ----------------------------- |
| **`opts`** | { id: number; } | - Object containing the ad ID |
**Since:** 1.0.0
--------------------
### trackingAuthorizationStatus()
```typescript
trackingAuthorizationStatus() => Promise<{ status: TrackingAuthorizationStatus | false; }>
```
Get the current tracking authorization status (iOS only).
**Returns:** Promise<{ status: false | TrackingAuthorizationStatus; }>
**Since:** 1.0.0
--------------------
### requestTrackingAuthorization()
```typescript
requestTrackingAuthorization() => Promise<{ status: TrackingAuthorizationStatus | false; }>
```
Request tracking authorization from the user (iOS only).
**Returns:** Promise<{ status: false | TrackingAuthorizationStatus; }>
**Since:** 1.0.0
--------------------
### addListener(string, ...)
```typescript
addListener(eventName: string, listenerFunc: (event: any) => void) => Promise & PluginListenerHandle
```
Add a listener for ad events.
| Param | Type | Description |
| ------------------ | ------------------------------------ | -------------------------------------------- |
| **`eventName`** | string | - The name of the event to listen for |
| **`listenerFunc`** | (event: any) => void | - The function to call when the event occurs |
**Returns:** Promise<PluginListenerHandle> & PluginListenerHandle
**Since:** 1.0.0
--------------------
### getPluginVersion()
```typescript
getPluginVersion() => Promise<{ version: string; }>
```
Get the native Capacitor plugin version.
**Returns:** Promise<{ version: string; }>
**Since:** 1.0.0
--------------------
### Interfaces
#### PluginListenerHandle
| Prop | Type |
| ------------ | ----------------------------------------- |
| **`remove`** | () => Promise<void> |
### Type Aliases
#### AdMobConfig
Configuration options for AdMob.
{ /** Whether the app should be muted */ appMuted?: boolean; /** The app volume (0.0 to 1.0) */ appVolume?: number; }
#### RequestConfig
Configuration for ad requests.
{ /** 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[]; }
#### MobileAdOptions
Base options for mobile ads.
{ /** The ad unit ID from AdMob */ adUnitId: string; }
### Enums
#### MaxAdContentRating
| Members | Value | Description |
| ----------------- | ----------------- | ------------------ |
| **`G`** | 'G' | General Audiences |
| **`MA`** | 'MA' | Mature Audiences |
| **`PG`** | 'PG' | Parental Guidance |
| **`T`** | 'T' | Teen |
| **`UNSPECIFIED`** | '' | Unspecified rating |
#### TrackingAuthorizationStatus
| Members | Value | Description |
| ------------------- | -------------- | ---------------------------------------------------------- |
| **`notDetermined`** | 0 | User has not yet received an authorization request |
| **`restricted`** | 1 | User restricted, device is unable to provide authorization |
| **`denied`** | 2 | User denied authorization |
| **`authorized`** | 3 | User authorized access |
