mSDK
Description
Altcraft mSDK is a mobile SDK for reliable push notification handling and interaction with the Altcraft Platform. It is designed for Android and iOS, supports Firebase, Huawei, RuStore, and APNS, and provides extended capabilities for subscription management, event handling, and working with multiple users on the same device.
The SDK can use JWT tokens or an rToken, which lets you flexibly configure the security level and profile data matching types. Automatic notification and delivery event handling ensures stability and high data accuracy, and the built-in WorkManager guarantees event delivery even in case of network failures.
Minimum requirements:
- iOS: Minimum Deployment Target — 13
- Android: minimum API level (minSdkVersion) — 25
Features
The SDK is compatible with Kotlin, Java (Android), Swift, Objective-C (iOS), JavaScript (React Native), and Dart (Flutter).
The Android SDK is built from modules, each covering its own functional area. Add dependencies only for the modules you need.
Core (required)
SDK core: app initialization and connection to the Altcraft Platform, and availability of optional modules.
- SDK initialization and configuration.
- Authentication with JWT tokens or an rToken.
- Support for anonymous and registered users, and multiple users on a single device (JWT).
- Automatic retry of failed requests via WorkManager.
- SDK event stream for monitoring its operation in your app.
- Clearing SDK data and stopping background tasks.
Push (optional)
The module handles push notifications.
- Subscription management: subscribe, suspend, unsubscribe.
- Automatic display of push notifications configured in the platform, with the ability to override the format and access all message data fields.
- Automatic push token refresh when it changes.
- Automatic sending of notification delivery and open events.
- Support for push providers: Firebase, Huawei, RuStore (Android), APNS (iOS).
- Requesting the notification permission for Android 13+ devices.
Target (optional)
The module handles goals: sending goal-achievement events to the platform.
- Sending goals from the app.
- Attaching payload data, matching parameters, profile fields, and channel subscriptions to a goal.
- Attaching UTM tags to goals for attribution.
Profile (optional)
The module handles user profile fields.
- Updating profile fields from the app.
In-App (optional)
The module handles in-app campaigns.
- Automatic display of in-app campaigns configured in the platform.
- In-app campaign subscription management: subscribe, unsubscribe, status.
- Fetching placements, matching by the current screen, custom triggers.
- JSON emitter for in-app campaigns for an external subscriber.
GitHub
Altcraft mSDK repositories are available on GitHub:
Dependency managers
Cocoapods:
pod 'Altcraft', '1.0.0'
Swift Package Manager:
1.0.0
Maven Central (Android):
Required core:
com.altcraft:android-sdk-core:X.Y.Z
Optional modules — add only the ones you need:
com.altcraft:android-sdk-push:X.Y.Z
com.altcraft:android-sdk-target:X.Y.Z
com.altcraft:android-sdk-profile:X.Y.Z
com.altcraft:android-sdk-inapp:X.Y.Z
Repositories: mavenCentral() and google().
npm:
@altcraft/react-native-sdk
Android
Setup and configuration of Altcraft mSDK for Android
iOS
Setup and configuration of Altcraft mSDK for iOS
React Native (Android/iOS)
Altcraft mSDK installation and configuration for React Native
Flutter (Android/iOS)
Altcraft mSDK installation and configuration for Flutter
Working with role and JWT tokens
Detailed description of rToken and JWT token, differences, operation.