Security News
RubyGems.org Adds New Maintainer Role
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
@appcues/capacitor
Advanced tools
Capcitor plugin to bridge the native Android and iOS Appcues mobile SDKs in an Ionic application.
Appcues Capacitor Plugin allows you to integrate Appcues experiences into your Ionic apps for iOS and Android devices.
This capacitor is a bridge between the native Appcues SDKs in an Ionic application which sends user properties and events to the Appcues API and retrieves and renders Appcues content based on those properties and events.
Your application's build.gradle
must have a compileSdkVersion
of 34+ and minSdkVersion
of 21+. Your project should use the Android Gradle Plugin (AGP) version 8 or above.
android {
compileSdkVersion 34
defaultConfig {
minSdkVersion 21
}
}
Due to the SDK usage of Jetpack Compose, it is required to either:
kotlin-android
plugin in app's build.gradle file.plugins {
id 'com.android.application'
id 'kotlin-android'
}
Related Google issue regarding usage of the Jetpack Compose dependency versions 1.6+
If your project fails to build with similar error:
(25, 39): Class 'kotlin.Unit' was compiled with an incompatible version of Kotlin.
The binary version of its metadata is 1.9.0, expected version is 1.7.1.
Make sure to set the appropriate kotlin_version on your project build.gradle file
ext.kotlin_version = ‘1.7.20’
Your application must target iOS 11+ to install the SDK, and iOS 13+ to render Appcues content. Update the iOS project xcodeproj to set the deployment target, if needed. In the application's Podfile
, include at least this minimum version.
# Podfile
platform :ios, '11.0'
In your app's root directory, run:
npm install @appcues/capacitor
npx cap sync
Note: You do not need to manually update your Podfile to add Appcues.
An instance of the Appcues SDK should be initialized when your app launches.
import { Appcues } from '@appcues/capacitor';
Appcues.initialize({accountId: 'APPCUES_ACCOUNT_ID', applicationId: 'APPCUES_APPLICATION_ID'})
Initializing the SDK requires you to provide two values, an Appcues account ID, and an Appcues mobile application ID. These values can be obtained from your Appcues settings. Refer to the help documentation on Registering your mobile app in Studio for more information.
During installation, follow the steps outlined in Configuring the Appcues URL Scheme. This is necessary for the complete Appcues builder experience, supporting experience preview, screen capture and debugging.
In an Ionic app, push notifications are configured in the native projects for iOS and Android. Please refer to native documentation on iOS and Android for more details. The example
directory in this repository contains a reference implementation that includes push notification support.
In order to target content to the right users at the right time, you need to identify users and send Appcues data about them. A user is identified with a unique ID.
// Identify a user
Appcues.identify({userId: 'my-user-id'})
// Identify a user with property
Appcues.identify({ userId: 'my-user-id', properties: { company: "Appcues" }})
After identifying a user, you can optionally associate that user with group.
// Associate a user with a group, optionally including group properties
Appcues.group({ groupId: 'group-id', properties: { plan: "standard" }})
To ensure the most accurate content targeting based upon group information, it's recommended to supply the group information immediately after a new user is identified.
Events are the “actions” your users take in your application, which can be anything from clicking a certain button to viewing a specific screen. Once you’ve installed and initialized the Appcues Capacitor Plugin, you can start tracking screens and events using the following methods:
// Track event
Appcues.track({name: "Sent Message"})
// Track event with property
Appcues.track({name: "Deleted Contact", properties: { id: 123 }})
// Track screen
Appcues.screen({title: "Contact List"})
// Track screen with property
Appcues.screen({title: "Contact List", properties: { reference: "abc" }})
More technical documentation about this capacitor is available in the docs. Auto-generated documentation is available here.
Full documentation is available at https://docs.appcues.com/
The example
directory in this repository contains full example iOS/Android app to providing references for correct installation and usage of the Appcues API.
See the contributing guide to learn how to get set up for development and how to contribute to the project.
This project is licensed under the MIT License. See LICENSE for more information.
FAQs
Capcitor plugin to bridge the native Android and iOS Appcues mobile SDKs in an Ionic application.
The npm package @appcues/capacitor receives a total of 352 weekly downloads. As such, @appcues/capacitor popularity was classified as not popular.
We found that @appcues/capacitor demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
RubyGems.org has added a new "maintainer" role that allows for publishing new versions of gems. This new permission type is aimed at improving security for gem owners and the service overall.
Security News
Node.js will be enforcing stricter semver-major PR policies a month before major releases to enhance stability and ensure reliable release candidates.
Security News
Research
Socket's threat research team has detected five malicious npm packages targeting Roblox developers, deploying malware to steal credentials and personal data.