Flutter - Установить целевую файловую базу на вкус продукта Android - PullRequest
0 голосов
/ 26 октября 2018

В настоящее время я использую Флаттер для создания своего приложения.

Фон

Я следовал некоторому руководству по созданию файлов ввода различных сред:
https://iirokrankka.com/2018/03/02/separating-build-environments/
, которые создают main_dev.dart и main_prod.dart.

Также я научился создавать фреймворк для iOS и Android: https://medium.com/@salvatoregiordanoo/flavoring-flutter-392aaa875f36
, который теперь я могу использовать --flavor <FLAVOR> в команде дляСоздайте приложение с разными вкусами.

Теперь я столкнулся с проблемой при попытке объединить два навыка.


Целевой результат

Вот что я хотел бы достичь:

development flavour -> main_dev.dart входной файл
production flavour-> main_prod.dart входной файл


Обнаружение проблемы

на стороне iOS, я могу указать целевой файл в файле .xcconfig, как показано ниже:

// ios/Flutter/development.xcconfig

#include "Generated.xcconfig"

FLUTTER_TARGET=lib/main_dev.dart

Я знаю, что могу добавить -t lib/main_dev.dart после команды flutter run.
Однако я хотел бы спросить, есть ли какое-либо решение для установки целевого файла флаттера
на стороне Android в файле конфигурации config?

Благодарю за любую помощь.

1 Ответ

0 голосов
/ 19 февраля 2019

Я хотел бы спросить, есть ли какое-либо решение для установки целевого файла флаттера на стороне Android внутри конфигурации аромата?

Я не знаю равных FLUTTER_TARGET для аромата Android,Я тоже хотел бы узнать это.

Но, flutter run -t не единственный вариант здесь.Когда вы откроете проект Flutter (корневой проект) в Android Studio, у вас будет конфигурация запуска / отладки по умолчанию, как показано ниже:

enter image description here

При нажатии Редактировать конфигурации появится экран, показанный ниже:

enter image description here

Там вы можете установить Build flavour и Точка входа в дротик .Очевидно, что вы можете создать несколько конфигураций для каждого варианта.

Справка: https://cogitas.net/creating-flavors-of-a-flutter-app/

Итак, это решение для Flutter в Android Studio.Для VSCode у меня есть обходной путь.Я использую параметр -t .Но у меня это автоматизировано VSCode.В .vscode / launch.json у меня есть конфигурации, подобные приведенным ниже:

"configurations": [
        {
            "name": "GoodOne",
            "request": "launch",
            "type": "dart",
            "args": ["--flavor",
                "good",
                "-t",
                "./lib/main-good.dart"
            ]
        },
        {
            "name": "BadOne",
            "request": "launch",
            "type": "dart",
            "args": ["--flavor",
                "bad",
                "-t",
                "./lib/main-bad.dart"
            ]
        }
]

С этим вы можете запустить свои варианты, просто нажав F5 и выбрав свою конфигурациюв верхнем левом углу.

Опять же, это не точный ответ на вопрос ОП, но некоторые обходные пути.

...