---
description: Add augmented reality to your Capacitor app with the PixLive SDK by Vidinoti. Display AR views and manage AR content on Android and iOS.
title: Capacitor PixLive Plugin for Android & iOS - Capawesome
image: https://capawesome.io/docs/assets/images/social/sdks/capacitor/pixlive.png
---

<!doctype html> 

[Skip to content ](#capawesomecapacitor-pixlive) 

[🔐 Introducing the **Capacitor Vault** plugin — store secrets behind biometrics or a device passcode. ](/blog/announcing-the-capacitor-vault-plugin/) 

* [ SDKs ](/docs/sdks/)
* [ Formbricks ](/docs/sdks/capacitor/formbricks/)
* [ Geocoder ](/docs/sdks/capacitor/geocoder/)
* [ Google Sign-In ](/docs/sdks/capacitor/google-sign-in/)
* [ Grafana Faro ](/docs/sdks/capacitor/grafana-faro/)
* [ libSQL ](/docs/sdks/capacitor/libsql/)
* [ Live Update ](/docs/sdks/capacitor/live-update/)
* [ Managed Configurations ](/docs/sdks/capacitor/managed-configurations/)
* [ Media Session ](/docs/sdks/capacitor/media-session/)
* [ ML Kit ](/docs/sdks/capacitor/mlkit/)
* [ Navigation Bar ](/docs/sdks/capacitor/navigation-bar/)
* [ NFC ](/docs/sdks/capacitor/nfc/)
* [ Node.js ](/docs/sdks/capacitor/nodejs/)
* [ OAuth ](/docs/sdks/capacitor/oauth/)
* [ Pedometer ](/docs/sdks/capacitor/pedometer/)
* [ Photo Editor ](/docs/sdks/capacitor/photo-editor/)
* PixLive [ PixLive ](/docs/sdks/capacitor/pixlive/)
* [ iOS ](#ios)
* [ Configuration ](#configuration)
* [ Usage ](#usage)
* [ API ](#api)
* [ Type Aliases ](#type-aliases)
* [ PostHog ](/docs/sdks/capacitor/posthog/)
* [ Printer ](/docs/sdks/capacitor/printer/)
* [ Purchases ](/docs/sdks/capacitor/purchases/)
* [ RealtimeKit ](/docs/sdks/capacitor/realtimekit/)
* [ Screen Orientation ](/docs/sdks/capacitor/screen-orientation/)
* [ Screenshot ](/docs/sdks/capacitor/screenshot/)
* [ Secure Preferences ](/docs/sdks/capacitor/secure-preferences/)
* [ Speech Recognition ](/docs/sdks/capacitor/speech-recognition/)
* [ Speech Synthesis ](/docs/sdks/capacitor/speech-synthesis/)
* [ Share Target ](/docs/sdks/capacitor/share-target/)
* [ Square Mobile Payments ](/docs/sdks/capacitor/square-mobile-payments/)
* [ SQLite ](/docs/sdks/capacitor/sqlite/)
* [ Superwall ](/docs/sdks/capacitor/superwall/)
* [ Torch ](/docs/sdks/capacitor/torch/)
* [ Vault ](/docs/sdks/capacitor/vault/)
* [ Wifi ](/docs/sdks/capacitor/wifi/)
* [ Zip ](/docs/sdks/capacitor/zip/)
* [ Cordova ](/docs/sdks/cordova/)
* [ Cloud ](/docs/cloud/)
* [ Integrations ](/docs/cloud/live-updates/integrations/)
* Concepts
* Reference
* [ Troubleshooting ](/docs/cloud/live-updates/troubleshooting/)
* [ FAQ ](/docs/cloud/live-updates/faq/)
* [ Native Builds ](/docs/cloud/native-builds/)
* [ Set Up Environments ](/docs/cloud/native-builds/environments/)
* [ Overwrite Native Configurations ](/docs/cloud/native-builds/native-configurations/)
* [ Auto-Increment Build Numbers ](/docs/cloud/native-builds/auto-incrementing-build-numbers/)
* [ Configure the Web Build Script ](/docs/cloud/native-builds/web-build-script/)
* [ Build from a Monorepo ](/docs/cloud/native-builds/monorepo/)
* [ Use pnpm, Yarn, or bun ](/docs/cloud/native-builds/package-managers/)
* [ Install Private npm Packages ](/docs/cloud/native-builds/npm-private-registry/)
* [ Override the Java Version ](/docs/cloud/native-builds/override-java-version/)
* [ Custom iOS Provisioning Profiles ](/docs/cloud/native-builds/custom-ios-provisioning-profiles/)
* [ Build without Git ](/docs/cloud/native-builds/build-without-git/)
* [ Access Git Behind a Firewall ](/docs/cloud/native-builds/firewall-access/)
* [ Integrations ](/docs/cloud/native-builds/integrations/)
* Reference
* [ Troubleshooting ](/docs/cloud/native-builds/troubleshooting/)
* [ FAQ ](/docs/cloud/native-builds/faq/)
* [ App Store Publishing ](/docs/cloud/app-store-publishing/)
* [ Submit a Build ](/docs/cloud/app-store-publishing/submit-a-build/)
* [ Submit Automatically After a Build ](/docs/cloud/app-store-publishing/submit-automatically/)
* [ Troubleshooting ](/docs/cloud/app-store-publishing/troubleshooting/)
* [ FAQ ](/docs/cloud/app-store-publishing/faq/)
* [ Automations ](/docs/cloud/automations/)
* [ Reference ](/docs/cloud/automations/reference/)
* [ Troubleshooting ](/docs/cloud/automations/troubleshooting/)
* [ FAQ ](/docs/cloud/automations/faq/)
* [ Assist ](/docs/cloud/assist/)
* [ CLI ](/docs/cloud/cli/)
* APIs and SDKs
* [ Webhooks ](/docs/cloud/webhooks/)
* [ Integrations ](/docs/cloud/integrations/)
* Account
* [ Organization ](/docs/cloud/organizations/)
* [ Two-Factor Enforcement ](/docs/cloud/organizations/two-factor-authentication/)
* [ Audit Logs ](/docs/cloud/organizations/audit-logs/)
* [ Billing ](/docs/cloud/organizations/billing/)
* [ License Keys ](/docs/cloud/license-keys/)
* [ AI ](/docs/ai/)
* [ Insiders ](/docs/insiders/)
* [ Billing & Plans ](/docs/insiders/billing-and-plans/)
* [ FAQ ](/docs/insiders/faq/)
* [ License ](https://capawesome.io/legal/eula/)
* [ Support ](/docs/support/)
* [ Contributing ](/docs/contributing/)
* Contributing code
* [ Code of Conduct ](/docs/contributing/code-of-conduct/)
* [ Questions ](https://docs.github.com/en/discussions/collaborating-with-your-community-using-discussions/participating-in-a-discussion#creating-a-discussion)
* [ Blog ](/blog/)
* Categories

* [ iOS ](#ios)
* [ Configuration ](#configuration)
* [ Usage ](#usage)
* [ API ](#api)
* [ Type Aliases ](#type-aliases)

# @capawesome/capacitor-pixlive[¶](#capawesomecapacitor-pixlive "Permanent link")

Unofficial Capacitor plugin for [PixLive SDK](https://www.vidinoti.com/) by Vidinoti.

## Installation[¶](#installation "Permanent link")

`[](#%5F%5Fcodelineno-0-1)npm install @capawesome/capacitor-pixlive
[](#%5F%5Fcodelineno-0-2)npx cap sync
`

### Android[¶](#android "Permanent link")

#### SDK Setup[¶](#sdk-setup "Permanent link")

Copy the `vdarsdk-release.aar` file into your app's `android/app/libs/` directory.

### iOS[¶](#ios "Permanent link")

Please note, that this plugin does not support SPM but only Cocoapods as iOS dependency manager.

#### SDK Setup[¶](#sdk-setup%5F1 "Permanent link")

The PixLive iOS SDK (`VDARSDK.xcframework`) must be manually added by copying `VDARSDK.xcframework` into `ios/App/Frameworks/` in your Capacitor project.

## Configuration[¶](#configuration "Permanent link")

Configure the plugin in your `capacitor.config.ts`:

`[](#%5F%5Fcodelineno-1-1)const config: CapacitorConfig = {
[](#%5F%5Fcodelineno-1-2)  plugins: {
[](#%5F%5Fcodelineno-1-3)    Pixlive: {
[](#%5F%5Fcodelineno-1-4)      licenseKey: 'YOUR_LICENSE_KEY',
[](#%5F%5Fcodelineno-1-5)      apiUrl: 'https://ar.vidinoti.com/api/api.php', // optional
[](#%5F%5Fcodelineno-1-6)      sdkUrl: 'https://sdk.vidinoti.com', // optional
[](#%5F%5Fcodelineno-1-7)    },
[](#%5F%5Fcodelineno-1-8)  },
[](#%5F%5Fcodelineno-1-9)};
`

| Prop           | Type   | Description                      | Default                             |
| -------------- | ------ | -------------------------------- | ----------------------------------- |
| **licenseKey** | string | The PixLive Maker license key.   |                                     |
| **apiUrl**     | string | The PixLive Maker API endpoint.  | https://ar.vidinoti.com/api/api.php |
| **sdkUrl**     | string | The PixLive SDK resource server. | https://sdk.vidinoti.com            |

## Usage[¶](#usage "Permanent link")

`[](#%5F%5Fcodelineno-2-1)import { Pixlive } from '@capawesome/capacitor-pixlive';
[](#%5F%5Fcodelineno-2-2)
[](#%5F%5Fcodelineno-2-3)const synchronize = async () => {
[](#%5F%5Fcodelineno-2-4)  await Pixlive.synchronize({ tags: [['my-tag']] });
[](#%5F%5Fcodelineno-2-5)};
[](#%5F%5Fcodelineno-2-6)
[](#%5F%5Fcodelineno-2-7)const createARView = async () => {
[](#%5F%5Fcodelineno-2-8)  await Pixlive.createARView({ x: 0, y: 0, width: 300, height: 400 });
[](#%5F%5Fcodelineno-2-9)};
`

## API[¶](#api "Permanent link")

* [initialize()](#initialize)
* [checkPermissions()](#checkpermissions)
* [requestPermissions(...)](#requestpermissions)
* [synchronize(...)](#synchronize)
* [synchronizeWithToursAndContexts(...)](#synchronizewithtoursandcontexts)
* [updateTagMapping(...)](#updatetagmapping)
* [enableContextsWithTags(...)](#enablecontextswithtags)
* [getContexts()](#getcontexts)
* [getContext(...)](#getcontext)
* [activateContext(...)](#activatecontext)
* [stopContext()](#stopcontext)
* [getNearbyGPSPoints(...)](#getnearbygpspoints)
* [getGPSPointsInBoundingBox(...)](#getgpspointsinboundingbox)
* [getNearbyBeacons()](#getnearbybeacons)
* [startNearbyGPSDetection()](#startnearbygpsdetection)
* [stopNearbyGPSDetection()](#stopnearbygpsdetection)
* [startGPSNotifications()](#startgpsnotifications)
* [stopGPSNotifications()](#stopgpsnotifications)
* [setNotificationsSupport(...)](#setnotificationssupport)
* [setInterfaceLanguage(...)](#setinterfacelanguage)
* [createARView(...)](#createarview)
* [destroyARView()](#destroyarview)
* [resizeARView(...)](#resizearview)
* [setARViewTouchEnabled(...)](#setarviewtouchenabled)
* [setARViewTouchHole(...)](#setarviewtouchhole)
* [getVersion()](#getversion)
* [addListener('codeRecognize', ...)](#addlistenercoderecognize-)
* [addListener('enterContext', ...)](#addlistenerentercontext-)
* [addListener('exitContext', ...)](#addlistenerexitcontext-)
* [addListener('presentAnnotations', ...)](#addlistenerpresentannotations-)
* [addListener('hideAnnotations', ...)](#addlistenerhideannotations-)
* [addListener('eventFromContent', ...)](#addlistenereventfromcontent-)
* [addListener('syncProgress', ...)](#addlistenersyncprogress-)
* [addListener('requireSync', ...)](#addlistenerrequiresync-)
* [removeAllListeners()](#removealllisteners)
* [Interfaces](#interfaces)
* [Type Aliases](#type-aliases)

### initialize()[¶](#initialize "Permanent link")

`[](#%5F%5Fcodelineno-3-1)initialize() => Promise<void>
`

Initialize the PixLive SDK.

This must be called before any other method.

Only available on Android and iOS.

**Since:** 0.0.1

---

### checkPermissions()[¶](#checkpermissions "Permanent link")

`[](#%5F%5Fcodelineno-4-1)checkPermissions() => Promise<PermissionStatus>
`

Check the status of permissions.

**Returns:** `Promise<[PermissionStatus](#permissionstatus)>`

**Since:** 0.0.1

---

### requestPermissions(...)[¶](#requestpermissions "Permanent link")

`[](#%5F%5Fcodelineno-5-1)requestPermissions(options?: PixlivePluginPermission | undefined) => Promise<PermissionStatus>
`

Request permissions.

| Param       | Type                                                |
| ----------- | --------------------------------------------------- |
| **options** | [PixlivePluginPermission](#pixlivepluginpermission) |

**Returns:** `Promise<[PermissionStatus](#permissionstatus)>`

**Since:** 0.0.1

---

### synchronize(...)[¶](#synchronize "Permanent link")

`[](#%5F%5Fcodelineno-6-1)synchronize(options: SynchronizeOptions) => Promise<void>
`

Sync content from PixLive Maker filtered by tags.

Only available on Android and iOS.

| Param       | Type                                      |
| ----------- | ----------------------------------------- |
| **options** | [SynchronizeOptions](#synchronizeoptions) |

**Since:** 0.0.1

---

### synchronizeWithToursAndContexts(...)[¶](#synchronizewithtoursandcontexts "Permanent link")

`[](#%5F%5Fcodelineno-7-1)synchronizeWithToursAndContexts(options: SynchronizeWithToursAndContextsOptions) => Promise<void>
`

Sync content filtered by tags, tour IDs, and context IDs.

Only available on Android and iOS.

| Param       | Type                                                                              |
| ----------- | --------------------------------------------------------------------------------- |
| **options** | [SynchronizeWithToursAndContextsOptions](#synchronizewithtoursandcontextsoptions) |

**Since:** 0.0.1

---

### updateTagMapping(...)[¶](#updatetagmapping "Permanent link")

`[](#%5F%5Fcodelineno-8-1)updateTagMapping(options: UpdateTagMappingOptions) => Promise<void>
`

Update tag-to-context mappings for language filtering.

Only available on Android and iOS.

| Param       | Type                                                |
| ----------- | --------------------------------------------------- |
| **options** | [UpdateTagMappingOptions](#updatetagmappingoptions) |

**Since:** 0.0.1

---

### enableContextsWithTags(...)[¶](#enablecontextswithtags "Permanent link")

`[](#%5F%5Fcodelineno-9-1)enableContextsWithTags(options: EnableContextsWithTagsOptions) => Promise<void>
`

Enable only contexts matching specific tags.

Only available on Android and iOS.

| Param       | Type                                                            |
| ----------- | --------------------------------------------------------------- |
| **options** | [EnableContextsWithTagsOptions](#enablecontextswithtagsoptions) |

**Since:** 0.0.1

---

### getContexts()[¶](#getcontexts "Permanent link")

`[](#%5F%5Fcodelineno-10-1)getContexts() => Promise<GetContextsResult>
`

Get all synchronized contexts.

Only available on Android and iOS.

**Returns:** `Promise<[GetContextsResult](#getcontextsresult)>`

**Since:** 0.0.1

---

### getContext(...)[¶](#getcontext "Permanent link")

`[](#%5F%5Fcodelineno-11-1)getContext(options: GetContextOptions) => Promise<GetContextResult>
`

Get a single context by ID.

Only available on Android and iOS.

| Param       | Type                                    |
| ----------- | --------------------------------------- |
| **options** | [GetContextOptions](#getcontextoptions) |

**Returns:** `Promise<[GetContextResult](#getcontextresult)>`

**Since:** 0.0.1

---

### activateContext(...)[¶](#activatecontext "Permanent link")

`[](#%5F%5Fcodelineno-12-1)activateContext(options: ActivateContextOptions) => Promise<void>
`

Programmatically trigger/activate a context.

Only available on Android and iOS.

| Param       | Type                                              |
| ----------- | ------------------------------------------------- |
| **options** | [ActivateContextOptions](#activatecontextoptions) |

**Since:** 0.0.1

---

### stopContext()[¶](#stopcontext "Permanent link")

`[](#%5F%5Fcodelineno-13-1)stopContext() => Promise<void>
`

Stop the currently playing/active context.

Only available on Android and iOS.

**Since:** 0.0.1

---

### getNearbyGPSPoints(...)[¶](#getnearbygpspoints "Permanent link")

`[](#%5F%5Fcodelineno-14-1)getNearbyGPSPoints(options: GetNearbyGPSPointsOptions) => Promise<GetNearbyGPSPointsResult>
`

Get GPS points near a given location, sorted by distance.

Only available on Android and iOS.

| Param       | Type                                                    |
| ----------- | ------------------------------------------------------- |
| **options** | [GetNearbyGPSPointsOptions](#getnearbygpspointsoptions) |

**Returns:** `Promise<[GetNearbyGPSPointsResult](#getnearbygpspointsresult)>`

**Since:** 0.0.1

---

### getGPSPointsInBoundingBox(...)[¶](#getgpspointsinboundingbox "Permanent link")

`[](#%5F%5Fcodelineno-15-1)getGPSPointsInBoundingBox(options: GetGPSPointsInBoundingBoxOptions) => Promise<GetGPSPointsInBoundingBoxResult>
`

Get all GPS points within a geographic bounding box.

Only available on Android and iOS.

| Param       | Type                                                                  |
| ----------- | --------------------------------------------------------------------- |
| **options** | [GetGPSPointsInBoundingBoxOptions](#getgpspointsinboundingboxoptions) |

**Returns:** `Promise<[GetGPSPointsInBoundingBoxResult](#getgpspointsinboundingboxresult)>`

**Since:** 0.0.1

---

### getNearbyBeacons()[¶](#getnearbybeacons "Permanent link")

`[](#%5F%5Fcodelineno-16-1)getNearbyBeacons() => Promise<GetNearbyBeaconsResult>
`

Get contexts associated with nearby detected beacons.

Only available on Android and iOS.

**Returns:** `Promise<[GetNearbyBeaconsResult](#getnearbybeaconsresult)>`

**Since:** 0.0.1

---

### startNearbyGPSDetection()[¶](#startnearbygpsdetection "Permanent link")

`[](#%5F%5Fcodelineno-17-1)startNearbyGPSDetection() => Promise<void>
`

Start background GPS proximity detection.

Only available on Android and iOS.

**Since:** 0.0.1

---

### stopNearbyGPSDetection()[¶](#stopnearbygpsdetection "Permanent link")

`[](#%5F%5Fcodelineno-18-1)stopNearbyGPSDetection() => Promise<void>
`

Stop background GPS proximity detection.

Only available on Android and iOS.

**Since:** 0.0.1

---

### startGPSNotifications()[¶](#startgpsnotifications "Permanent link")

`[](#%5F%5Fcodelineno-19-1)startGPSNotifications() => Promise<void>
`

Enable GPS-triggered local notifications.

Only available on Android and iOS.

**Since:** 0.0.1

---

### stopGPSNotifications()[¶](#stopgpsnotifications "Permanent link")

`[](#%5F%5Fcodelineno-20-1)stopGPSNotifications() => Promise<void>
`

Disable GPS-triggered local notifications.

Only available on Android and iOS.

**Since:** 0.0.1

---

### setNotificationsSupport(...)[¶](#setnotificationssupport "Permanent link")

`[](#%5F%5Fcodelineno-21-1)setNotificationsSupport(options: SetNotificationsSupportOptions) => Promise<void>
`

Enable or disable notification support.

Only available on Android and iOS.

| Param       | Type                                                              |
| ----------- | ----------------------------------------------------------------- |
| **options** | [SetNotificationsSupportOptions](#setnotificationssupportoptions) |

**Since:** 0.0.1

---

### setInterfaceLanguage(...)[¶](#setinterfacelanguage "Permanent link")

`[](#%5F%5Fcodelineno-22-1)setInterfaceLanguage(options: SetInterfaceLanguageOptions) => Promise<void>
`

Set the language for SDK UI elements.

Only available on Android and iOS.

| Param       | Type                                                        |
| ----------- | ----------------------------------------------------------- |
| **options** | [SetInterfaceLanguageOptions](#setinterfacelanguageoptions) |

**Since:** 0.0.1

---

### createARView(...)[¶](#createarview "Permanent link")

`[](#%5F%5Fcodelineno-23-1)createARView(options: CreateARViewOptions) => Promise<void>
`

Create the native AR camera view at specified screen coordinates.

Only available on Android and iOS.

| Param       | Type                                        |
| ----------- | ------------------------------------------- |
| **options** | [CreateARViewOptions](#createarviewoptions) |

**Since:** 0.0.1

---

### destroyARView()[¶](#destroyarview "Permanent link")

`[](#%5F%5Fcodelineno-24-1)destroyARView() => Promise<void>
`

Destroy the AR camera view.

Only available on Android and iOS.

**Since:** 0.0.1

---

### resizeARView(...)[¶](#resizearview "Permanent link")

`[](#%5F%5Fcodelineno-25-1)resizeARView(options: ResizeARViewOptions) => Promise<void>
`

Resize the AR view.

Only available on Android and iOS.

| Param       | Type                                        |
| ----------- | ------------------------------------------- |
| **options** | [ResizeARViewOptions](#resizearviewoptions) |

**Since:** 0.0.1

---

### setARViewTouchEnabled(...)[¶](#setarviewtouchenabled "Permanent link")

`[](#%5F%5Fcodelineno-26-1)setARViewTouchEnabled(options: SetARViewTouchEnabledOptions) => Promise<void>
`

Enable or disable touch event interception on the AR view.

Only available on Android and iOS.

| Param       | Type                                                          |
| ----------- | ------------------------------------------------------------- |
| **options** | [SetARViewTouchEnabledOptions](#setarviewtouchenabledoptions) |

**Since:** 0.0.1

---

### setARViewTouchHole(...)[¶](#setarviewtouchhole "Permanent link")

`[](#%5F%5Fcodelineno-27-1)setARViewTouchHole(options: SetARViewTouchHoleOptions) => Promise<void>
`

Define a rectangular region where touches pass through the AR view to the web layer.

Only available on Android and iOS.

| Param       | Type                                                    |
| ----------- | ------------------------------------------------------- |
| **options** | [SetARViewTouchHoleOptions](#setarviewtouchholeoptions) |

**Since:** 0.0.1

---

### getVersion()[¶](#getversion "Permanent link")

`[](#%5F%5Fcodelineno-28-1)getVersion() => Promise<GetVersionResult>
`

Get the version of the sdk.

**Returns:** `Promise<[GetVersionResult](#getversionresult)>`

**Since:** 0.0.1

---

### addListener('codeRecognize', ...)[¶](#addlistenercoderecognize "Permanent link")

`[](#%5F%5Fcodelineno-29-1)addListener(eventName: 'codeRecognize', listenerFunc: (event: CodeRecognizeEvent) => void) => Promise<PluginListenerHandle>
`

Called when a QR code or barcode is scanned by the AR camera.

| Param            | Type                                                       |
| ---------------- | ---------------------------------------------------------- |
| **eventName**    | 'codeRecognize'                                            |
| **listenerFunc** | (event: [CodeRecognizeEvent](#coderecognizeevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('enterContext', ...)[¶](#addlistenerentercontext "Permanent link")

`[](#%5F%5Fcodelineno-30-1)addListener(eventName: 'enterContext', listenerFunc: (event: EnterContextEvent) => void) => Promise<PluginListenerHandle>
`

Called when an AR context is detected/entered.

| Param            | Type                                                     |
| ---------------- | -------------------------------------------------------- |
| **eventName**    | 'enterContext'                                           |
| **listenerFunc** | (event: [EnterContextEvent](#entercontextevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('exitContext', ...)[¶](#addlistenerexitcontext "Permanent link")

`[](#%5F%5Fcodelineno-31-1)addListener(eventName: 'exitContext', listenerFunc: (event: ExitContextEvent) => void) => Promise<PluginListenerHandle>
`

Called when an AR context is lost/exited.

| Param            | Type                                                   |
| ---------------- | ------------------------------------------------------ |
| **eventName**    | 'exitContext'                                          |
| **listenerFunc** | (event: [ExitContextEvent](#exitcontextevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('presentAnnotations', ...)[¶](#addlistenerpresentannotations "Permanent link")

`[](#%5F%5Fcodelineno-32-1)addListener(eventName: 'presentAnnotations', listenerFunc: () => void) => Promise<PluginListenerHandle>
`

Called when AR content/annotations become visible on screen.

| Param            | Type                 |
| ---------------- | -------------------- |
| **eventName**    | 'presentAnnotations' |
| **listenerFunc** | () => void           |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('hideAnnotations', ...)[¶](#addlistenerhideannotations "Permanent link")

`[](#%5F%5Fcodelineno-33-1)addListener(eventName: 'hideAnnotations', listenerFunc: () => void) => Promise<PluginListenerHandle>
`

Called when AR content/annotations are hidden.

| Param            | Type              |
| ---------------- | ----------------- |
| **eventName**    | 'hideAnnotations' |
| **listenerFunc** | () => void        |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('eventFromContent', ...)[¶](#addlistenereventfromcontent "Permanent link")

`[](#%5F%5Fcodelineno-34-1)addListener(eventName: 'eventFromContent', listenerFunc: (event: EventFromContentEvent) => void) => Promise<PluginListenerHandle>
`

Called when AR content dispatches a custom event.

| Param            | Type                                                             |
| ---------------- | ---------------------------------------------------------------- |
| **eventName**    | 'eventFromContent'                                               |
| **listenerFunc** | (event: [EventFromContentEvent](#eventfromcontentevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('syncProgress', ...)[¶](#addlistenersyncprogress "Permanent link")

`[](#%5F%5Fcodelineno-35-1)addListener(eventName: 'syncProgress', listenerFunc: (event: SyncProgressEvent) => void) => Promise<PluginListenerHandle>
`

Called during synchronization with progress updates.

| Param            | Type                                                     |
| ---------------- | -------------------------------------------------------- |
| **eventName**    | 'syncProgress'                                           |
| **listenerFunc** | (event: [SyncProgressEvent](#syncprogressevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### addListener('requireSync', ...)[¶](#addlistenerrequiresync "Permanent link")

`[](#%5F%5Fcodelineno-36-1)addListener(eventName: 'requireSync', listenerFunc: (event: RequireSyncEvent) => void) => Promise<PluginListenerHandle>
`

Called when the SDK requires synchronization with specific tags.

| Param            | Type                                                   |
| ---------------- | ------------------------------------------------------ |
| **eventName**    | 'requireSync'                                          |
| **listenerFunc** | (event: [RequireSyncEvent](#requiresyncevent)) => void |

**Returns:** `Promise<[PluginListenerHandle](#pluginlistenerhandle)>`

**Since:** 0.0.1

---

### removeAllListeners()[¶](#removealllisteners "Permanent link")

`[](#%5F%5Fcodelineno-37-1)removeAllListeners() => Promise<void>
`

Remove all listeners for this plugin.

**Since:** 0.0.1

---

### Interfaces[¶](#interfaces "Permanent link")

#### PermissionStatus[¶](#permissionstatus "Permanent link")

| Prop                 | Type                                | Description                                                                      | Since |
| -------------------- | ----------------------------------- | -------------------------------------------------------------------------------- | ----- |
| **bluetooth**        | [PermissionState](#permissionstate) | Permission state of the Bluetooth permission. Only available on iOS.             | 0.0.1 |
| **bluetoothConnect** | [PermissionState](#permissionstate) | Permission state of the Bluetooth Connect permission. Only available on Android. | 0.0.1 |
| **bluetoothScan**    | [PermissionState](#permissionstate) | Permission state of the Bluetooth Scan permission. Only available on Android.    | 0.0.1 |
| **camera**           | [PermissionState](#permissionstate) | Permission state of the Camera permission.                                       | 0.0.1 |
| **location**         | [PermissionState](#permissionstate) | Permission state of the Location permission. Only available on Android and iOS.  | 0.0.1 |
| **notifications**    | [PermissionState](#permissionstate) | Permission state of the Notifications permission.                                | 0.0.1 |

#### PixlivePluginPermission[¶](#pixlivepluginpermission "Permanent link")

| Prop            | Type                      | Description                 | Since |
| --------------- | ------------------------- | --------------------------- | ----- |
| **permissions** | PixlivePermissionType\[\] | The permissions to request. | 0.0.1 |

#### SynchronizeOptions[¶](#synchronizeoptions "Permanent link")

| Prop     | Type           | Description                    | Since |
| -------- | -------------- | ------------------------------ | ----- |
| **tags** | string\[\]\[\] | The tags to filter content by. | 0.0.1 |

#### SynchronizeWithToursAndContextsOptions[¶](#synchronizewithtoursandcontextsoptions "Permanent link")

| Prop           | Type           | Description                    | Since |
| -------------- | -------------- | ------------------------------ | ----- |
| **tags**       | string\[\]\[\] | The tags to filter content by. | 0.0.1 |
| **tourIds**    | number\[\]     | The tour IDs to sync.          | 0.0.1 |
| **contextIds** | string\[\]     | The context IDs to sync.       | 0.0.1 |

#### UpdateTagMappingOptions[¶](#updatetagmappingoptions "Permanent link")

| Prop     | Type       | Description      | Since |
| -------- | ---------- | ---------------- | ----- |
| **tags** | string\[\] | The tags to map. | 0.0.1 |

#### EnableContextsWithTagsOptions[¶](#enablecontextswithtagsoptions "Permanent link")

| Prop     | Type       | Description                      | Since |
| -------- | ---------- | -------------------------------- | ----- |
| **tags** | string\[\] | The tags to enable contexts for. | 0.0.1 |

#### GetContextsResult[¶](#getcontextsresult "Permanent link")

| Prop         | Type        | Description                        | Since |
| ------------ | ----------- | ---------------------------------- | ----- |
| **contexts** | Context\[\] | The list of synchronized contexts. | 0.0.1 |

#### Context[¶](#context "Permanent link")

| Prop                    | Type           | Description                              | Since |
| ----------------------- | -------------- | ---------------------------------------- | ----- |
| **contextId**           | string         | The unique identifier of the context.    | 0.0.1 |
| **name**                | string         | The name of the context.                 | 0.0.1 |
| **description**         | string \| null | The description of the context.          | 0.0.1 |
| **lastUpdate**          | string         | The last update timestamp.               | 0.0.1 |
| **imageThumbnailURL**   | string \| null | The URL of the thumbnail image.          | 0.0.1 |
| **imageHiResURL**       | string \| null | The URL of the high-resolution image.    | 0.0.1 |
| **notificationTitle**   | string \| null | The notification title.                  | 0.0.1 |
| **notificationMessage** | string \| null | The notification message.                | 0.0.1 |
| **tags**                | string\[\]     | The tags associated with the context.    | 0.0.1 |
| **languages**           | string\[\]     | The languages provided for this context. | 0.1.3 |

#### GetContextResult[¶](#getcontextresult "Permanent link")

| Prop        | Type                | Description  | Since |
| ----------- | ------------------- | ------------ | ----- |
| **context** | [Context](#context) | The context. | 0.0.1 |

#### GetContextOptions[¶](#getcontextoptions "Permanent link")

| Prop          | Type   | Description                        | Since |
| ------------- | ------ | ---------------------------------- | ----- |
| **contextId** | string | The ID of the context to retrieve. | 0.0.1 |

#### ActivateContextOptions[¶](#activatecontextoptions "Permanent link")

| Prop          | Type   | Description                        | Since |
| ------------- | ------ | ---------------------------------- | ----- |
| **contextId** | string | The ID of the context to activate. | 0.0.1 |

#### GetNearbyGPSPointsResult[¶](#getnearbygpspointsresult "Permanent link")

| Prop       | Type         | Description                               | Since |
| ---------- | ------------ | ----------------------------------------- | ----- |
| **points** | GPSPoint\[\] | The nearby GPS points sorted by distance. | 0.0.1 |

#### GPSPoint[¶](#gpspoint "Permanent link")

| Prop                            | Type           | Description                                       | Since |
| ------------------------------- | -------------- | ------------------------------------------------- | ----- |
| **contextId**                   | string         | The ID of the associated context.                 | 0.0.1 |
| **category**                    | string         | The category of the GPS point.                    | 0.0.1 |
| **label**                       | string         | The label of the GPS point.                       | 0.0.1 |
| **latitude**                    | number         | The latitude of the GPS point.                    | 0.0.1 |
| **longitude**                   | number         | The longitude of the GPS point.                   | 0.0.1 |
| **detectionRadius**             | number \| null | The detection radius in meters.                   | 0.0.1 |
| **distanceFromCurrentPosition** | number         | The distance from the current position in meters. | 0.0.1 |

#### GetNearbyGPSPointsOptions[¶](#getnearbygpspointsoptions "Permanent link")

| Prop          | Type   | Description                              | Since |
| ------------- | ------ | ---------------------------------------- | ----- |
| **latitude**  | number | The latitude of the reference location.  | 0.0.1 |
| **longitude** | number | The longitude of the reference location. | 0.0.1 |

#### GetGPSPointsInBoundingBoxResult[¶](#getgpspointsinboundingboxresult "Permanent link")

| Prop       | Type         | Description                             | Since |
| ---------- | ------------ | --------------------------------------- | ----- |
| **points** | GPSPoint\[\] | The GPS points within the bounding box. | 0.0.1 |

#### GetGPSPointsInBoundingBoxOptions[¶](#getgpspointsinboundingboxoptions "Permanent link")

| Prop             | Type   | Description                                | Since |
| ---------------- | ------ | ------------------------------------------ | ----- |
| **minLatitude**  | number | The minimum latitude of the bounding box.  | 0.0.1 |
| **minLongitude** | number | The minimum longitude of the bounding box. | 0.0.1 |
| **maxLatitude**  | number | The maximum latitude of the bounding box.  | 0.0.1 |
| **maxLongitude** | number | The maximum longitude of the bounding box. | 0.0.1 |

#### GetNearbyBeaconsResult[¶](#getnearbybeaconsresult "Permanent link")

| Prop         | Type        | Description                                  | Since |
| ------------ | ----------- | -------------------------------------------- | ----- |
| **contexts** | Context\[\] | The contexts associated with nearby beacons. | 0.0.1 |

#### SetNotificationsSupportOptions[¶](#setnotificationssupportoptions "Permanent link")

| Prop        | Type    | Description                                      | Since |
| ----------- | ------- | ------------------------------------------------ | ----- |
| **enabled** | boolean | Whether notifications support should be enabled. | 0.0.1 |

#### SetInterfaceLanguageOptions[¶](#setinterfacelanguageoptions "Permanent link")

| Prop         | Type   | Description               | Since |
| ------------ | ------ | ------------------------- | ----- |
| **language** | string | The language code to set. | 0.0.1 |

#### CreateARViewOptions[¶](#createarviewoptions "Permanent link")

| Prop       | Type   | Description                    | Since |
| ---------- | ------ | ------------------------------ | ----- |
| **x**      | number | The x position of the AR view. | 0.0.1 |
| **y**      | number | The y position of the AR view. | 0.0.1 |
| **width**  | number | The width of the AR view.      | 0.0.1 |
| **height** | number | The height of the AR view.     | 0.0.1 |

#### ResizeARViewOptions[¶](#resizearviewoptions "Permanent link")

| Prop       | Type   | Description                        | Since |
| ---------- | ------ | ---------------------------------- | ----- |
| **x**      | number | The new x position of the AR view. | 0.0.1 |
| **y**      | number | The new y position of the AR view. | 0.0.1 |
| **width**  | number | The new width of the AR view.      | 0.0.1 |
| **height** | number | The new height of the AR view.     | 0.0.1 |

#### SetARViewTouchEnabledOptions[¶](#setarviewtouchenabledoptions "Permanent link")

| Prop        | Type    | Description                                                | Since |
| ----------- | ------- | ---------------------------------------------------------- | ----- |
| **enabled** | boolean | Whether touch events should be intercepted by the AR view. | 0.0.1 |

#### SetARViewTouchHoleOptions[¶](#setarviewtouchholeoptions "Permanent link")

| Prop       | Type   | Description                                     | Since |
| ---------- | ------ | ----------------------------------------------- | ----- |
| **top**    | number | The top coordinate of the touch hole region.    | 0.0.1 |
| **bottom** | number | The bottom coordinate of the touch hole region. | 0.0.1 |
| **left**   | number | The left coordinate of the touch hole region.   | 0.0.1 |
| **right**  | number | The right coordinate of the touch hole region.  | 0.0.1 |

#### GetVersionResult[¶](#getversionresult "Permanent link")

| Prop        | Type   | Description             | Since |
| ----------- | ------ | ----------------------- | ----- |
| **version** | string | The version of the sdk. | 0.0.1 |

#### PluginListenerHandle[¶](#pluginlistenerhandle "Permanent link")

| Prop       | Type                |
| ---------- | ------------------- |
| **remove** | () => Promise<void> |

#### CodeRecognizeEvent[¶](#coderecognizeevent "Permanent link")

| Prop     | Type   | Description                   | Since |
| -------- | ------ | ----------------------------- | ----- |
| **code** | string | The scanned code value.       | 0.0.1 |
| **type** | string | The type of the scanned code. | 0.0.1 |

#### EnterContextEvent[¶](#entercontextevent "Permanent link")

| Prop          | Type   | Description                    | Since |
| ------------- | ------ | ------------------------------ | ----- |
| **contextId** | string | The ID of the entered context. | 0.0.1 |

#### ExitContextEvent[¶](#exitcontextevent "Permanent link")

| Prop          | Type   | Description                   | Since |
| ------------- | ------ | ----------------------------- | ----- |
| **contextId** | string | The ID of the exited context. | 0.0.1 |

#### EventFromContentEvent[¶](#eventfromcontentevent "Permanent link")

| Prop       | Type   | Description                         | Since |
| ---------- | ------ | ----------------------------------- | ----- |
| **name**   | string | The name of the custom event.       | 0.0.1 |
| **params** | string | The parameters of the custom event. | 0.0.1 |

#### SyncProgressEvent[¶](#syncprogressevent "Permanent link")

| Prop         | Type   | Description                                  | Since |
| ------------ | ------ | -------------------------------------------- | ----- |
| **progress** | number | The sync progress value between 0.0 and 1.0. | 0.0.1 |

#### RequireSyncEvent[¶](#requiresyncevent "Permanent link")

| Prop     | Type       | Description                            | Since |
| -------- | ---------- | -------------------------------------- | ----- |
| **tags** | string\[\] | The tags that require synchronization. | 0.0.1 |

### Type Aliases[¶](#type-aliases "Permanent link")

#### PermissionState[¶](#permissionstate "Permanent link")

`'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'`

#### PixlivePermissionType[¶](#pixlivepermissiontype "Permanent link")

`'bluetooth' | 'bluetoothConnect' | 'bluetoothScan' | 'camera' | 'location' | 'notifications'`

July 6, 2026 

Back to top

```json
{"@context": "https://schema.org", "@graph": [{"@type": "TechArticle", "@id": "https://capawesome.io/docs/sdks/capacitor/pixlive/#article", "headline": "Capacitor PixLive Plugin for Android & iOS", "name": "Capacitor PixLive Plugin for Android & iOS", "description": "Add augmented reality to your Capacitor app with the PixLive SDK by Vidinoti. Display AR views and manage AR content on Android and iOS.", "inLanguage": "en", "url": "https://capawesome.io/docs/sdks/capacitor/pixlive/", "mainEntityOfPage": "https://capawesome.io/docs/sdks/capacitor/pixlive/", "author": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "publisher": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "about": {"@id": "https://capawesome.io/docs/sdks/capacitor/pixlive/#software"}}, {"@type": "SoftwareSourceCode", "@id": "https://capawesome.io/docs/sdks/capacitor/pixlive/#software", "name": "Capacitor PixLive Plugin for Android & iOS", "description": "Add augmented reality to your Capacitor app with the PixLive SDK by Vidinoti. Display AR views and manage AR content on Android and iOS.", "url": "https://capawesome.io/docs/sdks/capacitor/pixlive/", "programmingLanguage": "TypeScript", "runtimePlatform": "Capacitor", "codeRepository": "https://github.com/capawesome-team", "author": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}, "publisher": {"@type": "Organization", "name": "Capawesome", "url": "https://capawesome.io", "logo": {"@type": "ImageObject", "url": "https://capawesome.io/assets/images/logo.svg"}}}]}
```
