{"_id":"@capawesome/capacitor-tiktok-app-events","_rev":"2-d7f9b2dcd4e5caa9d91188671c03e965","name":"@capawesome/capacitor-tiktok-app-events","dist-tags":{"latest":"0.1.0"},"versions":{"0.0.1":{"name":"@capawesome/capacitor-tiktok-app-events","version":"0.0.1","keywords":["capacitor","plugin","native","capacitor-plugin","tiktok","tiktok-app-events","tiktok-business-sdk","app-events","analytics","attribution","ads","marketing","conversion-tracking"],"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","_id":"@capawesome/capacitor-tiktok-app-events@0.0.1","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"homepage":"https://capawesome.io/docs/sdks/capacitor/tiktok-app-events/","bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"dist":{"shasum":"6bfa4588571953ca89ef988334f26a8a055237af","tarball":"https://registry.npmjs.org/@capawesome/capacitor-tiktok-app-events/-/capacitor-tiktok-app-events-0.0.1.tgz","fileCount":38,"integrity":"sha512-/8e/4gdS6EV+FvB54+axHZaH8qQRa5LrG6wg//fJFVH0+py0cAS2mGUYe6NfLFy20ZgiNR77T1sWqvxR2siUdg==","signatures":[{"sig":"MEUCIA0+ikkwdGXXsO8+RoztSpRIGfaUdpLfiBWpG7v8XUdvAiEAp2HObbMZx8jrjCC+RsqcSv891SU8FZzBEDU0BPO6AEM=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":82284},"main":"dist/plugin.cjs.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","module":"dist/esm/index.js","funding":[{"url":"https://github.com/sponsors/capawesome-team/","type":"github"},{"url":"https://opencollective.com/capawesome","type":"opencollective"}],"gitHead":"efb5ee9c4e6b63cd49622574b9969569c8e9b668","scripts":{"fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","docgen":"docgen --api TiktokAppEventsPlugin --output-readme README.md --output-json dist/docs.json","eslint":"eslint . --ext ts","verify":"npm run verify:ios && npm run verify:android && npm run verify:web","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:web":"npm run build","prepublishOnly":"npm run build","verify:android":"cd android && ./gradlew clean build test && cd ..","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd .."},"_npmUser":{"name":"robingenz","email":"mail@robingenz.dev"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"repository":{"url":"git+https://github.com/capawesome-team/capacitor-plugins.git","type":"git"},"_npmVersion":"11.13.0","description":"Unofficial Capacitor plugin for the TikTok App Events SDK on Android and iOS.","directories":{},"_nodeVersion":"24.16.0","eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"publishConfig":{"access":"public"},"_hasShrinkwrap":false,"devDependencies":{"eslint":"8.57.0","rimraf":"6.1.2","rollup":"4.62.3","swiftlint":"2.0.0","typescript":"5.9.3","@capacitor/cli":"8.4.2","@capacitor/ios":"8.0.0","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/android":"8.0.0","@ionic/eslint-config":"0.4.0","prettier-plugin-java":"2.9.7"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"_npmOperationalInternal":{"tmp":"tmp/capacitor-tiktok-app-events_0.0.1_1788783686134_0.08944538587843476","host":"s3://npm-registry-packages-npm-production"}},"0.1.0":{"name":"@capawesome/capacitor-tiktok-app-events","version":"0.1.0","description":"Unofficial Capacitor plugin for the TikTok App Events SDK on Android and iOS.","main":"dist/plugin.cjs.js","module":"dist/esm/index.js","types":"dist/esm/index.d.ts","unpkg":"dist/plugin.js","author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","homepage":"https://capawesome.io/docs/sdks/capacitor/tiktok-app-events/","repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"funding":[{"type":"github","url":"https://github.com/sponsors/capawesome-team/"},{"type":"opencollective","url":"https://opencollective.com/capawesome"}],"keywords":["capacitor","plugin","native","capacitor-plugin","tiktok","tiktok-app-events","tiktok-business-sdk","app-events","analytics","attribution","ads","marketing","conversion-tracking"],"scripts":{"verify":"npm run verify:ios && npm run verify:android && npm run verify:web","verify:ios":"cd ios && pod install && xcodebuild -workspace Plugin.xcworkspace -scheme Plugin -destination generic/platform=iOS && cd ..","verify:android":"cd android && ./gradlew clean build test && cd ..","verify:web":"npm run build","lint":"npm run eslint && npm run prettier -- --check && npm run swiftlint -- lint","fmt":"npm run eslint -- --fix && npm run prettier -- --write && npm run swiftlint -- --fix --format","eslint":"eslint . --ext ts","prettier":"prettier \"**/*.{css,html,ts,js,java}\"","swiftlint":"node-swiftlint","docgen":"docgen --api TiktokAppEventsPlugin --output-readme README.md --output-json dist/docs.json","build":"npm run clean && npm run docgen && tsc && rollup -c rollup.config.mjs","clean":"rimraf ./dist","watch":"tsc --watch","ios:pod:install":"cd ios && pod install --repo-update && cd ..","ios:spm:install":"cd ios && swift package resolve && cd ..","prepublishOnly":"npm run build"},"devDependencies":{"@capacitor/android":"8.0.0","@capacitor/cli":"8.4.2","@capacitor/core":"8.0.0","@capacitor/docgen":"0.3.1","@capacitor/ios":"8.0.0","@ionic/eslint-config":"0.4.0","eslint":"8.57.0","prettier-plugin-java":"2.9.7","rimraf":"6.1.2","rollup":"4.62.3","swiftlint":"2.0.0","typescript":"5.9.3"},"peerDependencies":{"@capacitor/core":">=8.0.0"},"eslintConfig":{"extends":"@ionic/eslint-config/recommended"},"capacitor":{"ios":{"src":"ios"},"android":{"src":"android"}},"publishConfig":{"access":"public"},"gitHead":"64ee2e6e1d89f1639a66da3be1225f1dc6e9e342","_id":"@capawesome/capacitor-tiktok-app-events@0.1.0","_nodeVersion":"24.20.0","_npmVersion":"11.19.0","dist":{"integrity":"sha512-+oVxCFTsDrJTeh/G7wDluMzV38OsPlOzWWLVgWv2bJ6ZmTMwxl6hDN8thXhI7zb8SMchD27YM++0a9cPF039+A==","shasum":"aa6debd4846b86f239b9a887fca45f2ec2600cfd","tarball":"https://registry.npmjs.org/@capawesome/capacitor-tiktok-app-events/-/capacitor-tiktok-app-events-0.1.0.tgz","fileCount":38,"unpackedSize":81800,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@capawesome%2fcapacitor-tiktok-app-events@0.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIC1w7clKmHDTUZ7WoKNcJ8xLj0Pf1NBvJo3mK5ER3uEBAiEA5N6q8WcPtgW4jEIw01kI7S8ITd38AE2i+63MBGNuPQM="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:819635d0-96e1-4e22-a67b-6042d326adea"}},"directories":{},"maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/capacitor-tiktok-app-events_0.1.0_1788784103459_0.1961167038042344"},"_hasShrinkwrap":false}},"time":{"created":"2026-09-07T12:21:25.910Z","modified":"2026-09-07T12:28:23.893Z","0.0.1":"2026-09-07T12:21:26.271Z","0.1.0":"2026-09-07T12:28:23.568Z"},"bugs":{"url":"https://github.com/capawesome-team/capacitor-plugins/issues"},"author":{"name":"Robin Genz","email":"mail@robingenz.dev"},"license":"MIT","homepage":"https://capawesome.io/docs/sdks/capacitor/tiktok-app-events/","keywords":["capacitor","plugin","native","capacitor-plugin","tiktok","tiktok-app-events","tiktok-business-sdk","app-events","analytics","attribution","ads","marketing","conversion-tracking"],"repository":{"type":"git","url":"git+https://github.com/capawesome-team/capacitor-plugins.git"},"description":"Unofficial Capacitor plugin for the TikTok App Events SDK on Android and iOS.","maintainers":[{"name":"robingenz","email":"mail@robingenz.dev"}],"readme":"# Capacitor TikTok App Events Plugin\n\nUnofficial Capacitor plugin for the [TikTok App Events SDK](https://ads.tiktok.com/help/article/how-to-integrate-tiktok-app-events-sdk).[^1]\n\n<div class=\"capawesome-z29o10a\">\n  <a href=\"https://cloud.capawesome.io/\" target=\"_blank\">\n    <img alt=\"Deliver Live Updates to your Capacitor app with Capawesome Cloud\" src=\"https://cloud.capawesome.io/assets/banners/cloud-build-and-deploy-capacitor-apps.png?t=1\" />\n  </a>\n</div>\n\n## Features\n\nThe Capacitor TikTok App Events plugin is a modern integration of the TikTok App Events SDK for Capacitor apps. Here are some of the key features:\n\n- 🖥️ **Cross-platform**: Supports Android and iOS.\n- 📊 **Event Tracking**: Track standard and custom events with properties such as currency, value and contents.\n- 🤖 **Automatic Events**: Let the SDK log app installs, launches, retention and in-app purchases automatically.\n- 👤 **Identification**: Improve attribution by identifying users with hashed personal data.\n- 🐞 **Debug Mode**: Verify your integration in the TikTok Events Manager before you release.\n- 🍎 **SKAdNetwork**: Control whether the SDK updates the SKAdNetwork conversion value on iOS.\n- 🔒 **Limited Data Use**: Enable Limited Data Use mode to comply with privacy regulations.\n- 📦 **CocoaPods & SPM**: Supports CocoaPods and Swift Package Manager for iOS.\n- 🔁 **Up-to-date**: Always supports the latest Capacitor version.\n\nMissing a feature? Just [open an issue](https://github.com/capawesome-team/capacitor-plugins/issues) and we'll take a look!\n\n## Use Cases\n\nThe TikTok App Events plugin is typically used to measure and optimize TikTok ad campaigns, for example:\n\n- **App install campaigns**: Attribute app installs to your TikTok ads.\n- **Conversion tracking**: Report purchases, registrations and other in-app conversions to TikTok.\n- **App event optimization**: Optimize your campaigns for the in-app events that matter to your business.\n- **Retargeting**: Build custom audiences from in-app activity to re-engage existing users.\n\n## Compatibility\n\n| Plugin Version | Capacitor Version | Status         |\n| -------------- | ----------------- | -------------- |\n| 0.x.x          | >=8.x.x           | Active support |\n\n## Installation\n\nYou can use our **AI-Assisted Setup** to install the plugin.\nAdd the [Capawesome Skills](https://github.com/capawesome-team/skills) to your AI tool using the following command:\n\n```bash\nnpx skills add capawesome-team/skills --skill capacitor-plugins\n```\n\nThen use the following prompt:\n\n```\nUse the `capacitor-plugins` skill from `capawesome-team/skills` to install the `@capawesome/capacitor-tiktok-app-events` plugin in my project.\n```\n\nIf you prefer **Manual Setup**, install the plugin by running the following commands and follow the platform-specific instructions below:\n\n```bash\nnpm install @capawesome/capacitor-tiktok-app-events\nnpx cap sync\n```\n\nThis plugin requires a [TikTok for Business](https://ads.tiktok.com/) account. Connect your app in the **TikTok Events Manager** and generate a **TikTok App ID** and an **Access Token** as described in the [TikTok guide](https://ads.tiktok.com/help/article/how-to-integrate-tiktok-app-events-sdk).\n\n> [!IMPORTANT]\n> Use of the TikTok App Events SDK is governed by the [TikTok for Business Commercial Terms of Service](https://ads.tiktok.com/i18n/official/policy/commercial-terms-of-service) and the [TikTok Business Products (Data) Terms](https://ads.tiktok.com/i18n/official/policy/business-products-terms), which prohibit sharing sensitive data with TikTok (see [Third-Party Notices](#third-party-notices)). This plugin declares the SDKs as dependencies and downloads them from JitPack, CocoaPods or Swift Package Manager at build time. It does not bundle or modify them.\n\n### Android\n\nThe [TikTok App Events SDK for Android](https://github.com/tiktok/tiktok-business-android-sdk) is resolved from [JitPack](https://jitpack.io/). The plugin already declares the JitPack repository in its `build.gradle` file. If your project restricts repository declarations to the settings file (e.g. via `dependencyResolutionManagement` with `FAIL_ON_PROJECT_REPOS`), add the JitPack repository to your `settings.gradle` file:\n\n```groovy\ndependencyResolutionManagement {\n    repositories {\n        maven { url 'https://jitpack.io' }\n    }\n}\n```\n\n#### Variables\n\nThis plugin will use the following project variables (defined in your app's `variables.gradle` file):\n\n- `$tiktokBusinessSdkVersion` version of `com.github.tiktok:tiktok-business-android-sdk` (default: `1.7.1`)\n- `$installReferrerVersion` version of `com.android.installreferrer:installreferrer` (default: `2.2`)\n\n### iOS\n\nThe [TikTok App Events SDK for iOS](https://github.com/tiktok/tiktok-business-ios-sdk) can be integrated via Swift Package Manager (recommended) or CocoaPods.\n\n#### App Tracking Transparency\n\nThe SDK only collects the advertising identifier (IDFA) if the user has granted tracking permission. You can request the permission with the [App Tracking Transparency](https://capawesome.io/docs/sdks/capacitor/app-tracking-transparency/) plugin.\n\n#### SKAdNetwork\n\nTo attribute installs via SKAdNetwork, add the TikTok SKAdNetwork identifiers to your `ios/App/App/Info.plist` file as described in the [TikTok App Events SDK documentation](https://business-api.tiktok.com/portal/docs?id=1739585432134657). If another SDK (e.g. a mobile measurement partner) already updates the SKAdNetwork conversion value, set `iosSkAdNetworkSupport` to `false` when calling `initialize(...)`.\n\n## Configuration\n\nNo configuration required for this plugin.\n\n## Usage\n\nThe following examples show how to use the plugin.\n\n### Initialize the plugin\n\nCall `initialize(...)` once before all other methods, for example on app start or after the user has given consent:\n\n```typescript\nimport { TiktokAppEvents } from '@capawesome/capacitor-tiktok-app-events';\n\nconst initialize = async () => {\n  await TiktokAppEvents.initialize({\n    accessToken: 'YOUR_ACCESS_TOKEN',\n    tiktokAppId: 'YOUR_TIKTOK_APP_ID',\n    iosAppId: 'YOUR_APP_STORE_ID',\n  });\n};\n```\n\n### Track events\n\nTrack a standard event with properties or a custom event:\n\n```typescript\nimport { TiktokAppEvents } from '@capawesome/capacitor-tiktok-app-events';\n\nconst trackPurchase = async () => {\n  await TiktokAppEvents.trackEvent({\n    name: 'Purchase',\n    properties: {\n      currency: 'USD',\n      value: 9.99,\n      contents: [\n        {\n          content_id: 'sku-123',\n          content_type: 'product',\n          quantity: 1,\n          price: 9.99,\n        },\n      ],\n    },\n  });\n};\n\nconst trackCustomEvent = async () => {\n  await TiktokAppEvents.trackEvent({\n    name: 'LevelCompleted',\n    properties: { level: 3 },\n  });\n};\n```\n\nSee [Supported In-App Events](https://ads.tiktok.com/help/article/all-supported-in-app-events) for the list of standard event names and properties.\n\n### Identify the user\n\nIdentify the user after sign-in and log out when the user signs out:\n\n```typescript\nimport { TiktokAppEvents } from '@capawesome/capacitor-tiktok-app-events';\n\nconst identify = async () => {\n  await TiktokAppEvents.identify({\n    externalId: 'user-123',\n    email: 'jane.doe@example.com',\n  });\n};\n\nconst logout = async () => {\n  await TiktokAppEvents.logout();\n};\n```\n\n## API\n\n<docgen-index>\n\n* [`flush()`](#flush)\n* [`identify(...)`](#identify)\n* [`initialize(...)`](#initialize)\n* [`logout()`](#logout)\n* [`trackEvent(...)`](#trackevent)\n* [Interfaces](#interfaces)\n\n</docgen-index>\n\n<docgen-api>\n<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->\n\n### flush()\n\n```typescript\nflush() => Promise<void>\n```\n\nFlush all queued events to TikTok immediately.\n\nOnly available on Android and iOS.\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### identify(...)\n\n```typescript\nidentify(options: IdentifyOptions) => Promise<void>\n```\n\nIdentify the current user to improve the attribution of events.\n\nPersonal data is hashed (SHA-256) by the TikTok SDK on the device\nbefore it is sent to TikTok.\n\nOnly available on Android and iOS.\n\n| Param         | Type                                                        |\n| ------------- | ----------------------------------------------------------- |\n| **`options`** | <code><a href=\"#identifyoptions\">IdentifyOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### initialize(...)\n\n```typescript\ninitialize(options: InitializeOptions) => Promise<void>\n```\n\nInitialize the TikTok App Events SDK.\n\nThis method must be called before any other method.\n\nOnly available on Android and iOS.\n\n| Param         | Type                                                            |\n| ------------- | --------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#initializeoptions\">InitializeOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### logout()\n\n```typescript\nlogout() => Promise<void>\n```\n\nLog out the current user and clear the identification data.\n\nOnly available on Android and iOS.\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### trackEvent(...)\n\n```typescript\ntrackEvent(options: TrackEventOptions) => Promise<void>\n```\n\nTrack an event.\n\nOnly available on Android and iOS.\n\n| Param         | Type                                                            |\n| ------------- | --------------------------------------------------------------- |\n| **`options`** | <code><a href=\"#trackeventoptions\">TrackEventOptions</a></code> |\n\n**Since:** 0.1.0\n\n--------------------\n\n\n### Interfaces\n\n\n#### IdentifyOptions\n\n| Prop                   | Type                | Description                                       | Since |\n| ---------------------- | ------------------- | ------------------------------------------------- | ----- |\n| **`email`**            | <code>string</code> | The email address of the user.                    | 0.1.0 |\n| **`externalId`**       | <code>string</code> | The unique identifier of the user in your system. | 0.1.0 |\n| **`externalUserName`** | <code>string</code> | The user name of the user.                        | 0.1.0 |\n| **`phoneNumber`**      | <code>string</code> | The phone number of the user.                     | 0.1.0 |\n\n\n#### InitializeOptions\n\n| Prop                            | Type                 | Description                                                                                                                                                                                                       | Default            | Since |\n| ------------------------------- | -------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ------------------ | ----- |\n| **`accessToken`**               | <code>string</code>  | The access token of your app. You can find it in the TikTok Events Manager.                                                                                                                                       |                    | 0.1.0 |\n| **`automaticPurchaseTracking`** | <code>boolean</code> | Whether the SDK automatically tracks in-app purchases made through Google Play Billing (Android) or StoreKit (iOS).                                                                                               | <code>true</code>  | 0.1.0 |\n| **`automaticTracking`**         | <code>boolean</code> | Whether the SDK automatically tracks app installs, app launches and second-day retention.                                                                                                                         | <code>true</code>  | 0.1.0 |\n| **`debugMode`**                 | <code>boolean</code> | Whether debug mode is enabled. In debug mode, events are sent to the test events pipeline of the TikTok Events Manager and are not used for reporting. Make sure to disable debug mode before releasing your app. | <code>false</code> | 0.1.0 |\n| **`iosAppId`**                  | <code>string</code>  | The App Store ID of your app. Required on iOS. On Android, the package name of your app is used instead. Only available on iOS.                                                                                   |                    | 0.1.0 |\n| **`iosSkAdNetworkSupport`**     | <code>boolean</code> | Whether the SDK updates the SKAdNetwork conversion value. Disable this if another SDK (e.g. a mobile measurement partner) already updates the conversion value to avoid conflicts. Only available on iOS.         | <code>true</code>  | 0.1.0 |\n| **`limitedDataUse`**            | <code>boolean</code> | Whether Limited Data Use (LDU) mode is enabled.                                                                                                                                                                   | <code>false</code> | 0.1.0 |\n| **`tiktokAppId`**               | <code>string</code>  | The TikTok App ID of your app. You can find it in the TikTok Events Manager. Multiple IDs can be provided as a comma-separated list.                                                                              |                    | 0.1.0 |\n\n\n#### TrackEventOptions\n\n| Prop             | Type                                       | Description                                                                                                                | Since |\n| ---------------- | ------------------------------------------ | -------------------------------------------------------------------------------------------------------------------------- | ----- |\n| **`id`**         | <code>string</code>                        | A unique identifier of the event. Used by TikTok to deduplicate events that are also reported through the Events API.      | 0.1.0 |\n| **`name`**       | <code>string</code>                        | The name of the event. Can be a standard event name (e.g. `Purchase`, `AddToCart`, `Registration`) or a custom event name. | 0.1.0 |\n| **`properties`** | <code>Record&lt;string, unknown&gt;</code> | The properties of the event.                                                                                               | 0.1.0 |\n\n</docgen-api>\n\n## FAQ\n\n### Do I need a TikTok for Business account to use this plugin?\n\nYes. This plugin wraps the official TikTok App Events SDKs, which require a [TikTok for Business](https://ads.tiktok.com/) account, a TikTok App ID and an access token.\n\n### Where do I find the TikTok App ID and the access token?\n\nBoth are generated in the TikTok Events Manager when you connect your app with the TikTok SDK. See the [TikTok guide](https://ads.tiktok.com/help/article/how-to-integrate-tiktok-app-events-sdk) for step-by-step instructions.\n\n### How can I verify that events are received by TikTok?\n\nEnable `debugMode` when calling `initialize(...)`. Events are then sent to the test events pipeline and appear in the **Test Events** tab of the TikTok Events Manager. Call `flush()` to send queued events immediately. Make sure to disable debug mode before releasing your app.\n\n### Is personal data hashed before it is sent to TikTok?\n\nYes. The TikTok SDK hashes the email address, phone number and external ID with SHA-256 on the device before they are sent to TikTok.\n\n### Can I use this plugin with Ionic, React, Vue or Angular?\n\nYes, the plugin is framework-agnostic. It works in any Capacitor app regardless of the web framework, including Ionic with Angular, React, or Vue, as well as plain JavaScript projects.\n\n## Related Plugins\n\n- [App Tracking Transparency](https://capawesome.io/docs/sdks/capacitor/app-tracking-transparency/): Request the tracking permission required to collect the IDFA on iOS.\n- [Firebase Analytics](https://capawesome.io/docs/sdks/capacitor/firebase/analytics/): Unofficial Capacitor plugin for Firebase Analytics.\n- [PostHog](https://capawesome.io/docs/sdks/capacitor/posthog/): Unofficial Capacitor plugin for the PostHog product analytics platform.\n\n## Newsletter\n\nStay up to date with the latest news and updates about the Capawesome, Capacitor, and Ionic ecosystem by subscribing to our [Capawesome Newsletter](https://cloud.capawesome.io/newsletter/).\n\n## Changelog\n\nSee [CHANGELOG.md](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/tiktok-app-events/CHANGELOG.md).\n\n## License\n\nSee [LICENSE](https://github.com/capawesome-team/capacitor-plugins/blob/main/packages/tiktok-app-events/LICENSE).\n\n## Third-Party Notices\n\nThe TikTok App Events SDKs for Android and iOS are licensed under the MIT license and are distributed via JitPack, CocoaPods, and Swift Package Manager. Their use is additionally governed by the [TikTok for Business Commercial Terms of Service](https://ads.tiktok.com/i18n/official/policy/commercial-terms-of-service) and the [TikTok Business Products (Data) Terms](https://ads.tiktok.com/i18n/official/policy/business-products-terms), which include the obligation not to share sensitive data with TikTok. This plugin only declares these SDKs as dependencies and does not bundle or modify them. The MIT license of this plugin covers the wrapper code only, not the TikTok SDKs.\n\n[^1]: This project is not affiliated with, endorsed by, sponsored by, or approved by TikTok Inc. or any of its affiliates or subsidiaries. \"TikTok\" is a trademark of TikTok Inc. or its affiliates.\n","readmeFilename":"README.md"}