Инициализация
Убедитесь, что предыдущие шаги выполнены успешно
- SDK добавлено в ваше мобильное приложение
- В проекте подключен пакет
carrotquest_sdk
Результат шага
- Приложение запускается без ошибок
- SDK инициализируется корректно
Получение ключей
Для работы с Carrot quest для Flutter понадобятся API Key и User Auth Key. Возьмите их в Carrot quest: Настройки → Разработчикам.
Инициализация SDK
Для инициализации используйте Carrot.setup(), например сразу после запуска приложения:
import 'package:carrotquest_sdk/carrotquest_sdk.dart';
await Carrot.setup(apiKey, appGroup: appGroup);Параметр appGroup является опциональным и используется в iOS-части приложения для предотвращения дублей push-уведомлений.
Проверка статуса инициализации
На Android возможен сценарий, при котором Flutter-часть приложения перезапустилась после долгого нахождения в фоне, а нативная Android-часть еще нет. Чтобы избежать повторной инициализации, проверьте статус SDK:
final isInit = await Carrot.isInit();
if (isInit) return;Авторизация пользователей
Если в приложении есть авторизация, вы можете передать ID пользователя в Carrot quest. Есть два варианта.
Передача ID через userAuthKey
final String? carrotId = await Carrot.auth(
userId,
userAuthKey: userAuthKey,
);Передача ID через hash
Если hash генерируется у вас на бэкенде, используйте:
final String? carrotId = await Carrot.auth(
userId,
userHash: hash,
);Метод auth() возвращает CarrotID - уникальный идентификатор пользователя в сервисе.
Смена пользователя
Чтобы завершить сессию текущего пользователя и авторизовать другого, вызовите:
await Carrot.logOut();