Android SDK
Android SDK позволяет добавить карту 2GIS в ваше Android-приложение. С помощью этого SDK можно отобразить карту на экране, добавить на неё маркеры, рисовать геометрические фигуры, строить маршруты, получать информацию об объектах, управлять камерой и так далее.
Примеры использования SDK можно найти в разделе Примеры. Описание всех классов и методов можно найти в разделе Справочник API.
Картографические данные поддерживают стандарты OGC.
Получение ключей доступа
Для работы с SDK нужно получить файл ключа dgissdk.key
с обязательным указанием appId
приложения, для которого этот ключ создается. Ключ будет использоваться для подключения к серверам 2ГИС, получения географических данных, а также для использования офлайна и навигатора. Этот ключ уникален для этого типа SDK и не может быть использован с другими SDK от 2ГИС.
Чтобы получить файл ключа:
- Заполните форму на dev.2gis.ru.
- Добавьте полученный файл ключа в
assets
приложения.
После активации ключа вы можете зарегистрироваться в личном кабинете Platform Manager и просматривать статистику распределения запросов.
Требования к устройствам
- Android 5.0 (Lollipop) и выше.
- Поддерживаемые архитектуры: x86_64, x86, armeabi-v7a, arm64-v8a.
- OpenGL ES 3.1.
Установка
Android SDK доступен в двух версиях: полной и облегченной. Облегченная версия не включает навигатор и не позволяет строить маршруты.
Для установки SDK:
- Укажите пользовательский репозиторий в вашем файле
build.gradle
.
repositories {
maven {
url "https://artifactory.2gis.dev/sdk-maven-release"
}
}
- Добавьте одну из следующих зависимостей.
Для получения облегченной версии SDK:
dependencies {
implementation 'ru.dgis.sdk:sdk-map:latest.release'
}
Для получения полной версии SDK:
dependencies {
implementation 'ru.dgis.sdk:sdk-full:latest.release'
}
Демонстрационный проект
Демонстрационное приложение с исходным кодом можно найти в нашем GitHub-репозитории.
Размер приложения
Размер вашего приложения может заметно увеличиться после добавления SDK в проект. Далее рассмотрим причину и возможные стратегии для борьбы с этим увеличением.
Процессорные архитектуры
Современные устройства Android могут иметь различные типы процессоров: x86-64, x86, ARMv7 и ARMv8. Для кода, написанного на Java или Kotlin, это не является проблемой, так как он исполняется в виртуальной машине и абстрагируется от конкретного железа. Однако, для нативного кода тип процессора играет важную роль.
Наша библиотека содержит 4 версии для всех типов ABI (Application Binary Interface), чтобы обеспечить поддержку всех этих типов процессоров.
Оптимизация размера
Чтобы сократить размер приложения, можно использовать разделение APK по типам ABI. Это позволит собирать и загружать только необходимые библиотеки для конкретного устройства пользователя. Инструкции по этому поводу можно найти в документации Android. Также, если вы используете App Bundle, Google Play может автоматически пересобирать приложение под нужные типы процессоров для конкретных устройств пользователей.
Проверка размера
Чтобы увидеть фактический размер APK, который будет загружаться пользователем, рекомендуем использовать инструмент bundletool. Это поможет получить APK, содержащий только необходимые библиотеки для конкретного устройства.
Шаги:
- Собрать app bundle, для этого нужно выбрать этот вариант сборки в Gradle.
- Из app bundle с помощью bundletool получить apk по необходимым критериям (например, только для arm64-v8a).
Полученный apk будет отражать реальный размер, который получит пользователь при загрузке приложения из Google Play.