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 processing, and working with multiple users on the same device.
The SDK can use JWT tokens or rToken, which enables flexible security configuration and profile matching logic. Automatic notification and delivery event handling ensures stable and accurate data transmission, while the built-in WorkManager guarantees event delivery even in case of network failures.
Features
- Compatible with Kotlin, Java (Android), Swift, Objective-C (iOS).
- Push subscription management: subscribe, pause, unsubscribe.
- Automatic notification display with content configured in the platform, with UI customization options.
- Automatic push token refresh when it changes.
- Automatic delivery and open event reporting.
- Support for anonymous and registered users, including multiple users on the same device (with JWT).
- Mobile event registration.
- Automatic retry of requests via WorkManager for maximum delivery.
- Push provider support: Firebase, Huawei, RuStore (Android), APNS (iOS).
- Use of JWT tokens for security and unrestricted profile matching variants.
- Ability to work via rToken with restricted access tied to a push subscription identifier.
- Ability to override the push notification format and access all message data fields.
GitHub
Altcraft mSDK repositories on GitHub:
Dependency Managers
Cocoapods:
pod 'Altcraft', '1.0.1'
Swift Package Manager:
1.0.1
Maven Central:
com.altcraft:android-sdk:1.0.1
Authorization Methods
JWT token
This method uses a JWT token passed to the SDK by the application. The token is added to the header of every request.
JWT (JSON Web Token) is a JSON-formatted string containing claims that are signed to verify authenticity and integrity.
The token is generated and signed on the client’s backend (encryption keys are not stored in the application). When requested by the SDK, the application must provide the JWT token received from the backend.
Advantages:
- Higher security of API requests.
- Ability to match profiles by any identifiers (email, phone, custom ID).
- Support for multiple users on the same device.
- Restoring access to a profile after reinstalling the app.
- Identification of the same profile across multiple devices.
rToken
An alternative authorization method uses a role token (rToken) passed in the SDK configuration. With this method, requests contain a header with the role token.
Characteristics:
- Profile lookup is only possible via the device’s push token (e.g., FCM).
- If the push token changes and is not reported to the server (e.g., after removing and reinstalling the app), the link to the profile will be lost or a new profile will be created.
Limitations:
- Loss of profile linkage if a push token change is not registered on the Altcraft server.
- No support for using multiple profiles on the same device.
- No ability for a single user to log in on another device.