Демистификация кода версии Flutter для Android: подробное руководство для разработчиков

В мире разработки мобильных приложений Flutter приобрел огромную популярность благодаря своим кроссплатформенным возможностям и простоте использования. Когда дело доходит до развертывания приложений Flutter на устройствах Android, понимание концепции кода версии становится решающим. В этой статье блога мы рассмотрим различные методы управления кодом версии Android во Flutter, сопровождаемые примерами кода и разговорными объяснениями.

Метод 1: базовое увеличение кода версии
Одним из распространенных методов является ручное увеличение кода версии в файле AndroidManifest.xml приложения. Откройте файл и найдите атрибут «android:versionCode». Увеличивайте значение на единицу каждый раз при выпуске обновления. Например, если текущий код версии — 1, следующий выпуск должен иметь код версии 2.

Метод 2: использование сценария сборки Gradle
Другой подход — автоматизировать управление кодом версий с помощью сценария сборки Gradle. Откройте файл build.gradle, расположенный в каталоге android/app. Добавьте следующий фрагмент кода в блок «defaultConfig»:

def versionMajor = 1
def versionMinor = 0
def versionPatch = 0
def versionCode = versionMajor * 10000 + versionMinor * 100 + versionPatch
android {
    defaultConfig {
        // Other configurations
        versionCode versionCode
    }
}

В этом примере у нас есть отдельные переменные для основной, дополнительной и исправленной версий. Код версии рассчитывается путем объединения этих значений. Измените переменные в соответствии со схемой управления версиями вашего приложения.

Метод 3: использование плагина package_info
Плагин package_infoобеспечивает простой способ получения информации, связанной с пакетом, включая код версии. Добавьте следующую зависимость в файл pubspec.yamlвашего приложения:

dependencies:
  package_info: ^2.0.0

Затем запустите flutter pub get, чтобы получить пакет. Теперь вы можете получить доступ к коду версии, используя следующий код:

import 'package:package_info/package_info.dart';
Future<void> getVersionCode() async {
  PackageInfo packageInfo = await PackageInfo.fromPlatform();
  int versionCode = int.parse(packageInfo.buildNumber);
  print('Version Code: $versionCode');
}

Метод 4: использование плагина version_up
Плагин version_upупрощает процесс управления кодами версий, автоматически увеличивая их во время каждой сборки. Добавьте следующую зависимость в файл pubspec.yaml:

dev_dependencies:
  version_up: ^1.0.0

После запуска flutter pub getвы можете использовать команду version_upдля увеличения кода версии:

flutter pub run version_up:version_up

Управление кодом версии Android во Flutter важно для обеспечения бесперебойного цикла выпуска приложений. В этой статье мы рассмотрели несколько методов, включая ручное приращение, сценарий сборки Gradle, использование плагина package_infoи плагина version_up. Выберите метод, который лучше всего соответствует вашему рабочему процессу разработки, и воспользуйтесь универсальностью Flutter при разработке приложений для Android.