Выкатка из GitHub

Если проект FlutterFlow подключён к репозиторию GitHub, сгенерированный код уходит туда и вы получаете полный контроль над ним. Дальше приложение можно собирать и выкатывать прямо из этого репозитория, а не из FlutterFlow.

Это имеет смысл, когда:

  • в проекте есть собственный код, который в FlutterFlow не ведётся, — например, функции, требующие сложных возможностей Flutter;
  • исходники должны жить во внешнем репозитории под нормальным контролем версий;
  • выкатку в App Store или Google Play нужно автоматизировать после правок в коде;
  • собирать нужно из конкретной ветки.

Как выкатить

  1. Если проект ещё не подключён к репозиторию, подключите его.
  2. В FlutterFlow откройте Settings & Integrations → App Settings → Mobile Deployment.
  3. Найдите раздел Deployment Source и разверните его стрелкой справа.
  4. Включите переключатель Use GitHub repo: [адрес вашего репозитория].
  5. Укажите ветку, из которой собирать. Название должно совпадать точно.
  6. Нажмите Deploy to App Store или Deploy to Play Store.

Раздел Deployment Source с включённой выкаткой из репозитория GitHub

инфо
Важно

При выкатке из GitHub версией приложения вы управляете сами — через pubspec.yaml. Версия 1.1.0 и номер сборки 2 записываются так: version: 1.1.0+2.

Строка version в файле pubspec.yaml

Частые вопросы

Google Play отклоняет сборку: «You uploaded an APK or Android App Bundle that was signed in debug mode»

Проверьте файл build.gradle.

  1. Откройте android/app/build.gradle.

  2. В нём должны быть эти строки:

    def keystoreProperties = new Properties()
    def keystorePropertiesFile = rootProject.file('key.properties')
    if (keystorePropertiesFile.exists()) {
        keystoreProperties.load(new FileInputStream(keystorePropertiesFile))
    }
    signingConfigs {
        release {
            keyAlias keystoreProperties['keyAlias']
            keyPassword keystoreProperties['keyPassword']
            storeFile keystoreProperties['storeFile'] ? file(keystoreProperties['storeFile']) : null
            storePassword keystoreProperties['storePassword']
        }
    }
  3. В свежем коде FlutterFlow они добавляются сами. Если их нет, влейте изменения из ветки flutterflow в GitHub или впишите вручную.

    Строки конфигурации подписи в файле build.gradle

  4. Перед выкаткой замените debug на release (в красной рамке на снимке).

перевод официальной документации FlutterFlow

обновлено

ESC