Документация для версии v75
Быстрый старт
В статье приведён пример быстрой интеграции Altcraft mSDK для React Native.
Шаг 0. Предварительные условия
- Проект React Native создан и запускается на iOS/Android.
- Нативные push-провайдеры интегрированы в проект:
- На нативной стороне выполнена настройка Altcraft mSDK:
- зарегистрированы провайдеры (JWT/APNS/FCM/HMS/Rustore)
- настроен перехват входящих push-уведомлений и передача в SDK
Шаг 1. Установка пакета
npm i @altcraft/react-native-sdk
# или
yarn add @altcraft/react-native-sdk
Шаг 2. Конфигурация и инициализация SDK
Импортируйте SDK и выполните инициализацию на старте приложения (например, в App.tsx):
import AltcraftSDK from '@altcraft/react-native-sdk';
AltcraftSDK.initialize({
apiUrl: 'https://pxl-your-instance.altcraft.com',
rToken: null,
appInfo: {
appID: 'your-app-id',
appIID: 'your-installation-id',
appVer: '1.0.0',
},
providerPriorityList: null,
enableLogging: true,
// -------- ANDROID-ONLY (опционально) --------
android_icon: null,
android_usingService: null,
android_serviceMessage: null,
android_pushReceiverModules: null,
android_pushChannelName: null,
android_pushChannelDescription: null,
});
Шаг 3. Выполнение подписки на push-уведомления
Подписка на push выполняется вызовом pushSubscribe():
import AltcraftSDK from '@altcraft/react-native-sdk';
AltcraftSDK.pushSubscribe(
true,
{ _fname: 'user_first_name', _lname: 'user_last_name' }, // profileFields
null, // customFields
null, // cats
null, // replace
null // skipTriggers
);
sync: true— выполняет запрос синхронно (результат можно получить через событие SDK, если платформа его возвращает).sync: false— выполняет запрос асинхронно.
(Опционально) Подписка на события SDK
Для получения результатов вызовов и внутренних событий SDK используйте subscribeToEvents():
import AltcraftSDK, { type SdkEvent } from '@altcraft/react-native-sdk';
AltcraftSDK.subscribeToEvents((event: SdkEvent) => {
// event.function — имя функции SDK, которая вызвала событие
// event.type — 'event' | 'error' | 'retryError'
// event.code / event.message — код и сообщение
// event.value — дополнительные данные (если есть)
console.log('[AltcraftSDK event]', event);
});
Чтобы отписаться:
AltcraftSDK.unsubscribeFromEvent();