Как подготовить и начать работу с файлом конфигурации и как предоставить доступ к данным для поиска авиабилетов и отелей
Из этой инструкции вы узнаете, как подготовить и начать работу с файлом конфигурации приложения White Label App и как предоставить доступ к данным авиабилетов и отелей.
Обратите внимание! Прежде чем переходить к действиям, указанным в этой инструкции, ознакомьтесь с техническими требованиями и условиями начала работы с White Label App. Без выполнения этих условий работа с шаблоном невозможна.
1. Подготовка к работе
Архив с приложением вы можете скачать с GitHub.
После скачивания приложения выполните следующие действия:
- Скачайте Android Studio;
- Разархивируйте архив с приложением;
- В Android Studio откройте проект (File → Open → выберите папку с проектом);
- В папке white-label-app-android-main создайте файл signing.properties
- В созданный файл нужно добавить параметры сертификата для подписи приложения, чтобы приложение можно было собрать. Для этого вставьте следующий код в файл:
# Debug |
- Заполните для Debug и Release сборок:
- KEYSTORE_FILE — путь к файлу, где лежит ключ;
- KEYSTORE_FILE_PASSWORD — пароль для файла, где лежит ключ;
- KEY_ALIAS — название ключа;
- KEY_PASSWORD — пароль для ключа;
Если у вас нет ключей (Key store), то необходимо сначала их создать: один для дебаг сборки (Debug) и второй для релизной сборки (Release).
Как создать ключ
- Откройте Android Studio и перейдите в Build → Generate Signed Bundle / APK
- Выберите “APK” и нажмите “Next”
- Откроется окно создание ключа:
- Значение в “Key store path” подставляется автоматически после создания ключа, либо нужно выбрать путь к уже ранее созданному файлу с ключом (но НЕ в файл white-label-app-android-main/signing.properties).
- Укажите пароли “Key store password” (для файла с ключем) и “Key password” (пароль для самого ключа)
- Создайте “Key alias” (название ключа)
- Нажмите “Next”
- Поставьте галочку в “Export encrypted key” (рекомендуется) и создайте ключ.
Для создания второго ключа повторите те же шаги.
2. Работа с файлом конфигурации
Файл конфигурации app_config.json находится в папке /config
Именно с помощью этого файла, вы сможете настроить приложение под свой бренд (изменить цвет, настроить стили и т.д.) и обеспечить доступ к данным.
Для редактирования файла app_config.json рекомендуется использовать Android Studio, поскольку Android Studio всё равно понадобится для сборки проекта. Вы также можете редактировать файл через любой текстовый редактор.
Пример app_config.json
{
"base_configuration": {
"identifier": {
"android": {
"id": "com.travelapp",
"versionName" : "1.0.0",
"versionCode" : 1
},
"apple": {
"id": "superpuper.travel-app",
"team_id": "LKREN1N1GZ7",
"version": "1.0.0",
"build_number": 0
}
},
"display_name": {
"base": "en",
"localized": {
"en": "Travel App EN Git",
"ru": "Travel App RU Git"
}
}
},
"constants": {
"host" : "android.superpuper.travel-app",
"api_key" : "test_api_key"
"policy_url": {
"base": "en",
"localized": {
"en": "https://google.com",
"ru": "https://www.google.ru"
}
},
"advertising": {
"appodeal_api_key": "",
"google_admob_app_id": "",
"placements": {
"air_ticket_placement_interstitial": "",
"air_ticket_placement_banner": "",
"hotels_placement_interstitial": "",
"hotels_placement_banner": ""
}
},
"feedback_email": "test@test.com",
"google_maps_api_key": "JHzdLyBdoREkGmBO46Sajel-jRa3t0ykwbdp2Jh",
"appstore_id": "",
"marker": 233601,
"client_device_host": "iphone.apartments"
},
"style": {
"base_color": "#7648C5", // hex значения базового цвета палитры
"corners_type": "default", //скругления {sharp, default, round}
"icons_type": "filled" //стиль используемых иконок {filled, tint, line}
"palette": "lab" // принцип генерации палитры
},
"info_screen_config": {
"items_to_display": [
"favorites", // раздел избранное
"about_app", // раздел о приложении
"rate_app", // раздел оценить приложение
"share_app" // раздел поделиться приложением
],
"about_app_info": {
"description": {
"base": "en",
"localized": {
"en": "Application description",
"ru": "Описание приложения"
}
},
"developer": {
"base": "en",
"localized": {
"en": "CleverPunpkin Ltd.",
"ru": "OOO CleverPumpkin"
}
},
"partner_url": {
"base": "en",
"localized": {
"en": "https://www.google.com",
"ru": "https://www.google.ru"
}
}
}
},
"white_label_config": {
"screens_to_display": [
{
"type": "flights" //таб авиабилетов
},
{
"type": "hotels" //таб отелей
},
{
"type": "other", //таб другое
"parameters": {
"id": "Other1",
"icon": "ic_default_other",
"title": {
"base": "en",
"localized": {
"en": "Other",
"ru": "Другое"
}
},
"url": {
"base": "en",
"localized": {
"en": "https://www.google.com",
"ru": "https://www.google.ru"
}
}
}
},
{
"type": "other", //таб другое 2
"parameters": {
"id": "Other2",
"icon": "ic_default_other",
"title": {
"base": "en",
"localized": {
"en": "Other 2",
"ru": "Другое 2"
}
},
"url": {
"base": "en",
"localized": {
"en": "https://www.google.com",
"ru": "https://www.google.ru"
}
}
}
}
]
}
}
Важно! После внесения и любых изменений app_config.json:
- Сохраните изменения в файле.
- Выполните в терминале в Android Studio команду ./gradlew parseConfig.
Для корректной работы данной команды в терминале Android Studio, должен быть установлен JDK. Если он не установился автоматически с Android Studio, то нужно установить его самостоятельно для необходимой операционной системы. - Пересоберите и запустите сборку ▶.
3. ID приложения
Добавьте в файл конфигурации id приложения. Этот шаг является обязательным, т.к. без id не получится опубликовать приложение.
Чтобы добавить id:
1. Найдите следующий код в файле app_config.json:
… |
2. Укажите id приложение в параметре id.
3. Этот же id добавьте в файл buildSrc/src/main/kotlin/configuration/Config.kt в поле val APPLICATION_ID = "com.travelapp"
4. Удалите блок apple{} из identifier{}, поскольку в нем находятся параметры для iOS приложения.
4. Доступ к данным
Для получения доступа к работе с поисками по авиабилетам и/или отелям, необходимо заменить некоторые данные по умолчанию в файле конфигурации.
Для этого найдите следующий фрагмент кода в файле конфигурации:
... |
- В поле api_key укажите ваш API токен. Его можно найти на странице White Label App в личном кабинете Travelpayouts:
- В поле marker укажите ваш партнёрский маркер. Его также можно скопировать на странице White Label App в личном кабинете Travelpayouts:
- В поле client_device_host укажите ваш хост. Он составляется следующим образом: “[platform].[app]”, где
- platform – платформа (ios)
- app – id вашего приложения, которое вы передавали в identifier.android.id
Пример: "android.superpuper.travel-app"
Следующие шаги
Как только вы укажете id, а также обеспечите доступ к данным, ваше приложение готово для публикации в Google Play.
Однако, для придания ему уникальности и повышения шансов на успешное прохождение ревью, мы рекомендуем кастомизировать ваше приложение. Мы собрали информацию про все доступные настройки в статье Настройка и кастомизация White Label App для Android.