Создайте учетную запись или войдите в RevenueCat с здесь чтобы начать.

Если вы создали новую учетную запись, вам будет предложено создать ваш первый проект. Введите Название проекта и нажмите кнопку "СОЗДАТЬ ПРОЕКТ".

Далее вам нужно добавить ваши Android и iOS приложения в RevenueCat, чтобы использовать и управлять подписками.
Добавление Android приложения
Начнем с настройки Android приложения: 1. Перейдите в Приложения в разделе Настройки проекта (в левом меню). Выберите Play Store.

2. Введите Название приложения и ID пакета.

3. Вам нужно создать еще одну Учетную запись службы для RevenueCat. Следуйте этому руководству для генерации учетных данных в формате JSON. Перетащите файл Credentials JSON и нажмите "СОХРАНИТЬ ИЗМЕНЕНИЯ".

Это завершает настройку Android приложения в RevenueCat.
Добавление iOS приложения
Следуйте приведенным ниже шагам для настройки iOS приложения: 1. Вернитесь на страницу Приложения и нажмите на "+ Новое".

2. Выберите App Store.

3. Введите Название приложения, Bundle ID и App-Specific Shared Secret. Чтобы сгенерировать App-Specific Shared Secret, следуйте руководству здесь. После получения ключа нажмите "УСТАНОВИТЬ СЕКРЕТ", введите значение и нажмите Установить. Затем нажмите "СОХРАНИТЬ ИЗМЕНЕНИЯ".

Это завершает настройку iOS приложения в RevenueCat.
Определение подписок в RevenueCat
RevenueCat имеет хорошо организованную конфигурацию продуктов, которая позволяет вам указать, какой уровень доступа должен открывать каждый продукт для ваших пользователей. Существует три уровня конфигурации продуктов в RevenueCat, мы проведем вас через процесс добавления подписок и объясним, как работает каждый из этих уровней конфигурации. Узнайте больше о конфигурации продуктов в RevenueCat здесь. Вы найдете эти уровни конфигурации в левом меню панели управления RevenueCat в разделе Настройка продукта:

Продукты
В этой конфигурации вам нужно добавить все подписки для ваших Android и iOS приложений, которые пользователь может приобрести. Это похоже на 1-к-1 отображение продуктов в RevenueCat, которые вы уже добавили в магазины (Google Play Store и Apple App Store). Чтобы добавить продукты, выполните следующие шаги: 1. Выберите Продукты в разделе Настройка продукта. Нажмите "+ Новое".

2. Вам нужно ввести Идентификатор продукта и Приложение. Убедитесь, что вы используете точно тот же идентификатор продукта, который использовали для подписки Android/iOS. Нажмите ДОБАВИТЬ.

3. Аналогично добавьте и другие подписки (для Android и iOS).

Права
Право помогает легко определить, имеет ли пользователь доступ к контенту на основе их покупки. Большинство приложений имеют только одно право, открывающее все премиум функции. Однако, если у вас есть два уровня контента, такие как Золотой и Платиновый, вам потребуется 2 права. В нашем приложении нам нужно только одно право – premium_features. Следуйте этим шагам, чтобы добавить право: 1. Выберите Права в разделе Настройка продукта. Нажмите "+ Новое".

2. Введите Идентификатор и Описание для права. Нажмите ДОБАВИТЬ.

3. Далее вам нужно прикрепить продукты к этому праву. Нажмите на право, которое вы только что создали.

3. Нажмите на Прикрепить.

4. Выберите Продукт из выпадающего списка и нажмите ДОБАВИТЬ.

5. Аналогично прикрепите все остальные продукты к этому праву.

Предложения
Эта конфигурация описывает предложения продуктов, которые будут показаны на платном экране. Каждое предложение должно иметь один или несколько связанных Пакетов (группа эквивалентных продуктов на разных платформах). Поскольку наше приложение будет доступно как для пользователей Android, так и для iOS, каждое из предложений будет состоять из двух пакетов. Следуйте приведенным ниже шагам, чтобы добавить предложения: 1. Выберите Предложения в разделе Настройка продукта. Нажмите "+ Новое".

2. Введите Идентификатор и Описание для предложения. Нажмите ДОБАВИТЬ.

3. Нажмите, чтобы открыть предложение, которое вы только что создали.

4. Нажмите на "+ Новое" рядом с Пакетами.

5. Введите Идентификатор для пакета из выпадающего списка и добавьте Описание. Нажмите ДОБАВИТЬ.

6. Аналогично добавьте и другие пакеты.

7. Нажмите, чтобы открыть пакет. Затем нажмите Прикрепить.

8. Выберите соответствующие продукты Play Store и App Store из выпадающего списка. Нажмите Прикрепить.

9. Аналогично прикрепите правильные продукты к другим двум пакетам.

Это завершает три уровня конфигурации в RevenueCat.
Включение RevenueCat в FlutterFlow
Чтобы использовать RevenueCat в вашем приложении, вы должны настроить его внутри FlutterFlow. Если вы следовали настройке подписки Play Store, вы уже должны иметь включенную интеграцию RevenueCat. Но вам все равно нужно обновить конфигурацию, чтобы использовать правильные ключи. Следуйте приведенным ниже шагам: 1. В вашем проекте FlutterFlow перейдите на страницу Настройки и интеграции.

2. В разделе Внутренние покупки и подписки выберите RevenueCat. Включите RevenueCat с помощью переключателя.
⭐ СОВЕТЫ: Рекомендуется включить отладочный лог во время тестирования интеграции. Это упростит вам устранение любых проблем с интеграцией. Не забудьте отключить этот лог, когда будете готовы развернуть ваше приложение в продакшн.
3. Далее вам нужно добавить Ключ App Store и Ключ Play Store в FlutterFlow. Вы можете получить эти ключи, перейдя в панель управления RevenueCat > API ключи > Публичные ключи API для приложений. Скопируйте и вставьте эти ключи в соответствующие поля FlutterFlow.

Отображение платного экрана
С интеграцией RevenueCat и FlutterFlow завершено, мы теперь готовы использовать RevenueCat в приложении для отображения платного экрана (т.е. страницы Подписки, если пользователь еще не подписался на какие-либо премиум планы) вместе с деталями плана, которые мы определили в RevenueCat. Нам нужно проверить, подписан ли пользователь на какие-либо премиум планы, как только кнопка "Записаться на курс" нажата на Обзорной странице. Следуйте приведенным ниже шагам:
- Выберите кнопку "Записаться на курс" на Обзорной странице.
- В панели Свойств выберите вкладку Действия. Нажмите "+ Добавить действие".
- Выберите действие как RevenueCat > Платный экран.
- Введите ID права как Конкретное значение > . Вы получите этот ID из панели управления RevenueCat > Права.
- Откройте Редактор потока действий. Нажмите на "+" под действием RevenueCat, выберите Добавить условие. Он должен автоматически установить условие как "У пользователя есть право RevenueCat".
- В ветке TRUE условия (пользователь уже имеет действующую подписку) установите действие для перехода на Страницу курса.
- В ветке FALSE условия (пользователь еще не имеет подписки) установите действие для перехода на Страницу подписки.
Перейдите на Страницу подписки, здесь нам нужно показать все пакеты (т.е. подписочные планы, доступные по текущему праву).
Чтобы отобразить пакеты из RevenueCat, выполните следующие шаги:
- Выберите Столбец оборачивающий контейнер SubscriptionPlan.
- В панели Свойств выберите вкладку Генерировать динамические дочерние элементы.
- Введите Имя переменной как subscriptionPackages.
- Установите переменную из RevenueCat > Текущее предложение > Пакеты. Нажмите Подтвердить. Снова нажмите Подтвердить в свойствах Генерации динамических дочерних элементов и нажмите Ок в появившемся диалоговом окне.
- Чтобы показать значения из данных, возвращаемых RevenueCat. Выберите виджет Текст и нажмите Установить из переменной в разделе Свойств.
- Для названия подписки выберите источник как subscriptionPackages Item > RevenueCat > Title. Нажмите Подтвердить.
- Для цены подписки выберите источник как subscriptionPackages Item > RevenueCat > Price String. Нажмите Подтвердить.
Покупка подписки
Вам нужно будет добавить действие на элемент подписки, чтобы инициировать покупку плана. Следуйте приведенным ниже шагам:
- Выберите виджет SubscriptionPlan (Контейнер).
- В панели Свойств выберите вкладку Действия. Нажмите "+ Добавить действие".
- Выберите действие как RevenueCat > Покупка.
- Выберите ID пакета как Из переменной > subscriptionPackages Item > RevenueCat > Package Identifier. Нажмите Подтвердить.
- Введите Имя переменной вывода действия как isPurchaseSuccessful.
- Откройте Редактор потока действий.
- Нажмите на "+" под действием RevenueCat и выберите "Добавить условие".
- Установите условие из Выходы действия > isPurchaseSuccessful.
- В ветке TRUE установите действие для перехода на CoursePage. Также включите переключатель Заменить маршрут.
- В ветке FALSE установите действие для отображения сообщения о неудачной покупке внутри SnackBar.
Это завершает процесс покупки для приложения Курсов. Теперь пришло время попробовать, как работает все приложение с интеграцией RevenueCat!
Тестирование приложения
RevenueCat предлагает режим песочницы, с помощью которого вы можете попробовать весь процесс покупки приложения, не совершая фактических транзакций, которые несут затраты. Есть несколько шагов, которые вам может понадобиться выполнить, прежде чем вы сможете протестировать поток подписки приложения.
⚠️ ПРИМЕЧАНИЕ: Вы не сможете протестировать поток подписки RevenueCat в режиме предварительного просмотра, тестирования или выполнения FlutterFlow.
Устройство Android
Чтобы протестировать процесс покупки на устройстве Android, выполните следующие шаги:
- Перейдите в Google Play Console.
- Разверните раздел Настройка.
- Выберите Тестирование лицензий.
- В поле Добавить тестировщиков лицензий добавьте адрес электронной почты, связанный с учетной записью Google, и с которой вы в настоящее время вошли на своем устройстве Android. Нажмите Enter , чтобы добавить адрес электронной почты.
- Нажмите Сохранить изменения.

После завершения этой настройки вы сможете протестировать процесс покупки только с устройств Android, вошедших в систему с помощью учетной записи Google, адрес электронной почты которой добавлен в качестве тестировщика лицензий (в предыдущем шаге).
Теперь вы можете либо скачать приложение из FlutterFlow и запустить его локально на своем устройстве Android, либо развернуть его из FlutterFlow на внутреннем или закрытом треке в Play Store и скачать его на устройстве из Play Store, чтобы попробовать.
Если вы хотите, чтобы тестировщики попробовали развернутую версию, вам нужно поделиться ссылкой для присоединения, которая присутствует на странице тестирования Play Store:

Каждому из тестировщиков нужно открыть эту ссылку и принять приглашение, чтобы скачать приложение из Play Store и попробовать:

⚠️ Рекомендуется тестировать поток покупок RevenueCat только на физическом устройстве. Однако он также должен работать на эмуляторе Android, который имеет доступ к Play Store и вошел в систему с правильной учетной записью Google.
Устройство iOS
Чтобы протестировать процесс покупки на устройстве iOS, выполните следующие шаги:
- Перейдите на App Store Connect.
- Выберите Пользователи и доступ.
- Выберите Тестировщики песочницы в левом меню.
- Нажмите на кнопку "+", чтобы добавить нового тестировщика.
- Заполните форму с данными тестировщика.
⚠️ Убедитесь, что вы используете правильные данные при добавлении тестировщика. Apple рекомендует создать отдельную учетную запись электронной почты для каждого тестировщика, который будет пробовать платеж.

После завершения этой настройки выполните шаги здесь для начала тестирования на физическом устройстве iOS. Только iOS 14 и выше поддерживает тестирование на Эмуляторе, больше информации здесь.
Теперь вы можете либо скачать приложение из FlutterFlow и запустить его локально на своем устройстве iOS, либо развернуть его из FlutterFlow в App Store Connect и распределить среди тестировщиков с помощью TestFlight.
Наконец, когда вся настройка завершена и приложение распределено среди тестировщиков, вы должны быть в состоянии попробовать весь поток покупки подписки RevenueCat!
Вот поток в действии: После выполнения любых тестовых транзакций вы должны быть в состоянии просмотреть их на панели управления RevenueCat, перейдя в:
- Перейдите на страницу Обзор.
- Включите Данные песочницы.
- Транзакции должны быть перечислены в разделе Недавние транзакции. Нажмите на любую из транзакций для получения более подробной информации.

Заключение
Поздравляем! 🎉 Вы успешно интегрировали и протестировали подписку в приложении FlutterFlow с помощью RevenueCat. Когда ваше приложение будет готово к производству, убедитесь, что вы сделали следующее перед запуском:
- Отключите отладочный лог в разделе Настройки и интеграции > RevenueCat в вашем проекте FlutterFlow.
- Пройдите по Контрольному списку запуска RevenueCat.
Если вам нужна помощь при интеграции RevenueCat с FlutterFlow, вы можете ознакомиться с ссылками, представленными ниже.