Описание действий для добавления брендированного приложения, для добавления локализации

This commit is contained in:
Ivan Murashov
2017-09-21 15:11:57 +03:00
parent afc9cde20d
commit 65d9f755f6

View File

@@ -1,12 +1,66 @@
Приложение Checker. #Приложение Checker.
Для запуска необходимо установить [Dart](https://www.dartlang.org/install) - язык программирования и Для запуска необходимо установить [Dart](https://www.dartlang.org/install) - язык программирования и
[flutter](https://flutter.io/setup/) - фреймворк для создания кроссплатформенных мобильных приложений на этом языке. [flutter](https://flutter.io/setup/) - фреймворк для создания кроссплатформенных мобильных приложений на этом языке.
# Перед тем, как собирать приложение, необходимо в файле lib/consts.dart установить правильное значение appName. Для автоклуба - это AutoBonus.
Для сборки и запуска приложения используются команды flutter run (собирает debug apk, устанавливает его на устройство) и Для сборки и запуска приложения используются команды flutter run (собирает debug apk, устанавливает его на устройство) и
flutter build (собирает release apk, не устанавливает на устрйоство). flutter build (собирает release apk, не устанавливает на устройство).
Команды run и build необходимо выполнять с опцией --flavor, чтобы apk файл собирался с необходимыми ресурсами и настройками. Команды run и build необходимо выполнять с опцией --flavor, чтобы apk файл собирался с необходимыми ресурсами и настройками.
Название конкретной flavor передается в аргументе. Все flavors перечислены в файле android/app/build.gradle. Название конкретной flavor передается в аргументе. Все flavors перечислены в файле android/app/build.gradle.
#Добавление брендированного приложения
Для добавления брендированного приложения с названием %name% необходимо:
1) В каталог assets/ положить изображения %name%_logo.png и %name%_splash.png
В качестве splash очень желательно использовать квадрат белого цвета 100x100.
2) В файл pubscpec.yaml в раздел assets/ добавить пути этих изображений.
3) В файл lib/resources.dart в методы ```getPrimaryColor``` и ```getButtonsColor```
добавить цвета необходимые цвета.*
4) В файле consts.dart изменить значения переменных appName, url, appToken на правильные для сборки значения.*
5) В файл android/app/build.gradle в раздел productFlavors добавить блок следующего вида:
```
%name% {
applicationId 'com.dinect.autobonus'
buildConfigField "String", "locale", "\"ru\""
buildConfigField "String", "flavor", "\"%name%\""
buildConfigField "int", "currency", "643"
buildConfigField "String", "supportPhone", "\"8-800-234-6064\""
buildConfigField "String", "supportUrl", "\"https://www.auto-club.biz\""
}
```
где все параметры необходимо заменить на соответствующие приложению значения.
6) В каталог android/app/src/ добавить каталоги %name%/res в которых воссоздать структуру ресурсов аналогичную представленной в каталоге android/app/src/pip/res/:
Каталоги mipmap должны содержать иконки, каталоги values должны содержать .xml файлы с названием приложения в следующем формате:
```
<resources>
<string name="app_name">%name%</string>
</resources>
```
Иконки проще всего нарезать тут:
https://romannurik.github.io/AndroidAssetStudio/icons-launcher.html
В качестве Foreground выбрать иконку приложения размером 512x512, выставить необходимые параметры и скачать архив с нарещанными иконками.
После выполнения всех этих пунктов появится возможность собирать приложение
как описано выше(flutter run --flavor %name% либо flutter build apk --flavor %name%).
\* - параметры из этих пунктов будут при первой же возможности перенесены в пункт 5, чтобы менять их из одного места.
#Добавление локализации приложения
1) В каталог lib/i18n добавить файл messages_%locale%.dart.
Файл делать по аналогии с messages_en.dart. Либо с messages_ru.dart.
2) В каталог android/app/src/main/res добавить каталог values-%locale% с единственным файлом strings.xml.
Файл должен иметь структуру полностью аналогичную файлу android/app/src/main/res/values/strings.xml, измениться должны только значения для строк.