Что такое android sdk

Разработка под Android: устанавливаем SDK

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Такая популярная операционная система как Android не может обойтись без мощных и простых средств разработки. И именно здесь Android SDK (Software Development Kit или Набор средств для разработки ПО) показывает себя с лучшей стороны. Сегодня мы установим SDK и посмотрим, что он умеет. Это будет цикл статей о разработке приложений и игр для Android

Содержание

Подготовка к установке

Android SDK поддерживает большинство современных операционных систем под архитектурой x86 и x86_64, в том числе Windows, многие дистрибутивы Linux и Mac OS X. Также на ПК должен быть установлен Java Development Kit (Java 7 или Java 8), который обязательно потребуется для многих возможностей SDK, ведь Android неразрывно связан с Java.

Стоит заметить, что для встроенного эмулятора Android необходимо хорошее «железо» на PC, как, в принципе, и для других современных средств разработки.

Установка с помощью Android Studio

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Уже долгое время существует Android Studio — официальная IDE (Integrated Development Enviroment) для разработки под Android. Туда уже включено всё необходимое и устанавливается в один клик. Достаточно лишь установить IDE, и вы также сможете использовать все возможности SDK, интегрированные внутри среды разработки.

Скачать Android Studio можно с официального сайта. Там же можно найти много полезных гайдов по работе с Android SDK, но, к сожалению, доступны они исключительно на английском языке.

Установка отдельного пакета

Если вы не рассчитываете использовать такой мощный инструмент как Android Studio или у вас уже есть установленная Intellij IDEA, на основе которой и работает эта среда разработки, то вы можете установить Android SDK отдельно. Однако никаких других преимуществ этот метод установки не даст и рекомендуется воспользоваться предыдущим способом.

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Для загрузки отдельного пакета инструментов для разработки без IDE необходимо воспользоваться сайтом Android Developer. Игнорируя все возможные упоминания об Android Studio, спускаемся в самый низ страницы и находим раздел «Get just command line tools» — можно также воспользоваться поиском по странице. После скачивания подходящего пакета для вашей операционной системы, достаточно распаковать в любое удобное для вас хранилище — рекомендуется также указать местоположение SDK в Intellij IDEA (Project Structure > SDK).

Запуск и возможности

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Для получения доступа ко всему функционалу Android SDK достаточно запустить пакетный файл android, если вы работаете под Windows, или же в терминале выполнить команду «android» в папке «tools/» вашего SDK для запуска на Linux и MacOS X. Вам будет предложено установить инструменты для разных версий API, чем больше инструментов установлено — тем лучше. Загрузка пакетов может занять много времени в зависимости от вашей системы и скорости интернет-соединения.

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Перейдём к описанию основных инструментов:

Зачем же нужен Android SDK?

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

Источник

Что такое мобильный SDK?

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

SDK (Software development kit) — это комплект для разработки программного обеспечения, который помогает разработчикам создавать приложения для конкретных платформ. Это могут быть компьютеры, игровые приставки или мобильные устройства.

Если точнее, мобильные SDK дают разработчикам приложений все необходимое для того, чтобы легко создавать всевозможные высокопроизводительные приложения для смартфонов и планшетов, которые можно опубликовать на маркетплейсах Google Play и App Store.

Согласно данным SmartInsights, 90% времени, проведенного в мобильных устройствах, пользователи тратят на приложения. Поэтому опыт использования приложений так важен и для разработчиков приложений, и для пользователей.

SDK vs API

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Сегодня индустрия укрепилась во мнении, что SDK — это библиотека, встроенная в приложение, а API — это облачные сервисы, которые работают совместно с SDK или приложением.

Вы создаете что-либо с помощью SDK. Вы используете или потребляете что-либо с помощью API. Вы используете SDK для доступа к функционалу библиотеки, а API для управления им.

Зачем вам нужен мобильный SDK

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Качественный мобильный SDK даст вам доступ ко всем необходимым фичам, чтобы создать динамическое мобильное приложение.

Далеко не у каждого разработчика в арсенале есть всесторонние познания в программировании и обширные навыки разработки программного обеспечения. И даже те, кто всем этим обладает, предпочитают экономить значительное количество времени, используя инструменты программирования из мобильного SDK.

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

К тому же, мобильный SDK помогает вашему приложению стабильнее и лучше работать.

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Вы можете создать кастомизированную среду мобильного приложения для своих пользователей.

Разработчики могут создавать кастомизированные приложения и настраивать пользовательскую среду с помощью качественного мобильного SDK.

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

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

Неважно, состоит ваша целевая аудитория из наемных работников, клиентов или геймеров, вы можете быть уверены, что ваше приложение выиграет от от наличия надежного SDK-решения, которое будет удовлетворять потребности ваших пользователей.

Как сделать правильный выбор?

Интеграция мобильного SDK в ваше приложение может быть чрезвычайно полезной, но крайне важно выбрать подходящий вам SDK. Два основных аспекта, присущие хорошему мобильному SDK — правильное использование данных и безопасность.

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

Высококачественный мобильный SDK, который обеспечивает безопасность вашим пользователям, поможет улучшить впечатление от работы с приложением, его надежность и показатели удержания клиентов.

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Материал был создан на основе этих статей:

What’s a Mobile SDK?

Яна Никулина
Пишу о важном для клиентов Carrot quest.

Источник

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

Android SDK

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Пакет средств разработки программного обеспечения для Android (SDK) содержит всеобъемлющий набор инструментов разработки. [Источник 1] Они включают в себя отладчик, библиотеки, эмулятор, основанный на QEMU, документацию, примеры кода и учебники. Поддерживаемые платформы разработки включают компьютеры под управлением Linux (любой современный настольный дистрибутив Linux), Mac ОС x версии 10.5.8 или более поздней версии и Windows 7 и выше. По состоянию на март 2015 года SDK не доступен для разработки под Android, исключения составляют специализированные Android приложения.

До конца 2014 года, официально поддерживаемой программой integrated development environment (IDE) был Eclipse с плагином Android Development Tools (ADT), хотя IntelliJ IDEA IDE (все версии) полностью поддерживает разработку Android «из коробки», как и NetBeans IDE поддерживает разработку Android через плагин. По состоянию на 2015 год, Android Studio, созданная компанией Google и работающая над IntelliJ, является официальной IDE; тем не менее, разработчики могут свободно использовать другие инструменты, но Google дал понять, что поддержка ADT была официально завершена с конца 2015 года, с целью сосредоточиться на Android Studio в качестве официальной IDE для Android. Кроме того, разработчики могут использовать любой текстовый редактор для редактирования Java и XML файлов, а затем использовать инструменты командной строки (Java Development Kit и Apache Ant не обязательны) для создания, построения и отладки приложений для Android, а также контролировать добавленные Android устройства (например, запуск, перезагрузку, установку пакетов программ удаленно).

Android Debug Bridge

The Android Debug Bridge (ADB) представляет собой набор инструментов, включенных в пакет SDK для Android. [Источник 4] Он состоит из клиентской и серверной программ, которые взаимодействуют друг с другом. ADB, как правило, доступен через интерфейс командной строки, хотя существуют многочисленные графические пользовательские интерфейсы для управления ADB.

Например, приложения для Android могут быть сохранены с помощью команды «backup» в файл с названием «backup.ab»(по умолчанию).

В вопросе безопасности докладываемом в марте 2011 года, целью ADB была установка программ rootkit на подключенных телефонах с помощью «resource exhaustion attack».

Fastboot

Источник

Что такое Android SDK

Что такое android sdk. Смотреть фото Что такое android sdk. Смотреть картинку Что такое android sdk. Картинка про Что такое android sdk. Фото Что такое android sdk

Последнее обновление: 26/08/2020

Android sdk – незаменимый набор инструментария для разработчиков андроид приложений. Впрочем, комплект инструментов пригодится не только для разработки. Детально, для чего используется Android sdk, где скачать и как установить набор инструментов, мы расскажем в данной статье.

Что такое Android sdk

Android SDK – набор компонентов и средств, необходимых для разработки приложений на Android. При этом входящие в состав инструменты, не обязательно использовать будучи разработчиком Android. К примеру, ADB и Fastboot, в составе Android sdk, пригодятся при взаимодействии с устройством напрямую всем продвинутым пользователям.

Вот неполный список, для чего ещё используется Android SDK:

Где скачать Android SDK

Соответствующий набор инструментария входит в среду для разработки приложений Android Studio. При этом не обязательно качать и устанавливать всё целиком. На странице загрузки предлагается скачать отдельно Android sdk, если требуются только файлы командной строки.

Как установить Android sdk

Вариант первый. Достаточно установить Android studio. После установки открыть панель конфигурации и загрузить необходимые инструменты. Если вы выбрали выборочную установку, и вам нужен только ADB и Fastboot, соответствующие файлы располагаются в папке «platform-tools», куда устанавливались другие компоненты. Подробно, как установить Android studio, смотрите в посвященной этому вопросу отдельной теме.

Вариант второй. Скачайте инструменты Android SDK, которые идут в комплекте с Android Studio:

Вывод

В статье описано, что такое Android sdk, где скачать и как установить. Если вы разработчик приложений для Android, планирует прошить телефон или разблокировать загрузчик, тогда вам пригодится инструментарий Android sdk. Скачивайте Android studio, если вам требуется больше инструментов, включая ADB и Fastboot.

Источник

Передовой опыт Android-разработки

Нам бы хотелось поделиться с вами опытом, который мы, в Futurice, получили, разрабатывая Android-приложения. Надеемся, эти советы уберегут вас от создания собственных велосипедов. Если вы интересуетесь iOS или Windows Phone разработкой, обратите внимание на соответствующие документы на нашем сайте.

Коротко о главном

Android SDK

Поместите ваш Android SDK в домашнюю директорию или другое место, не связанное с приложением. Некоторые IDE ставятся вместе с SDK, и могут устанавливать его в свою директорию. Это может помешать при обновлении (или переустановке) IDE, или когда вы перейдёте на другую IDE. Избегайте установки SDK в другую системную директорию, поскольку это может потребовать административных привилегий, если ваша IDE запускается с правами пользователя, а не администратора.

Система сборки

Выбором по умолчанию должен быть Gradle. Ant гораздо скромнее по возможностям, и к тому же его инструкции менее компактны. С помощью Gradle вы легко сможете:

Структура проекта

Есть два распространённых варианта: старая Ant & Eclipse ADT структура проекта — либо новая Gradle & Android Studio. Лучше выбрать второй вариант. Если ваш проект использует старую структуру, рекомендуем её портировать.

Конфигурация Gradle

Маленькие задачи сборки. В отличие от других скриптовых языков (shell, Python, Perl, и т.д.), вы можете создавать задачи сборки в Gradle. Подробности смотрите в документации Gradle.

Пароли. В файле вашего приложения build.gradle вам нужно определить параметры подписи ( signingConfigs ) для релизной сборки. Следует избегать такой ошибки:

Не делайте так. Эта информация появится в системе контроля версий.

Эти данные автоматически импортируются в gradle, и вы сможете использовать их в build.gradle следующим образом:

Старайтесь использовать зависимости Maven, а не импортировать jar-файлы. Если вы включаете внешние jar-файлы в ваш проект, они будут законсервированы в той версии, при которой происходил импорт, например 2.1.1. Ручная загрузка jar-файлов и их обновление — достаточно трудоёмкая операция, и Maven может отлично решить эту проблему за нас, включив результат в сборку. Например:

Среда разработки (IDE) и текстовый редактор

Используйте любой редактор, который вам нравится, но он должен быть хорошо совместим со структурой проекта. Редактор — это ваш личный выбор, и вы должны выбрать такой, с которым будет удобно работать в рамках вашей структуры проекта и системы сборки.

Самая популярная IDE на данный момент — Android Studio, поскольку она разрабатывается Google, интегрирована с Gradle, использует новую структуру проекта по умолчанию, находится в состоянии стабильной сборки и заточена под Android-разработку.

Вы можете использовать Eclipse ADT, если он вам нравится, но его придётся настраивать, поскольку он по умолчанию работает со старой структурой проекта и системой сборки Ant. Вы можете даже использовать текстовые редакторы Vim, Sublime Text, или Emacs. В этом случае вам придётся использовать Gradle и adb из командной строки. Если вам не удастся подружить Eclipse с Gradle, вам тоже придётся использовать для сборки командную строку. Учитывая то, что ADT plugin недавно был объявлен устаревшим, лучше просто перейти на Android Studio.

Библиотеки

Jackson — библиотека Java для конвертации объектов в JSON и наоборот. Gson — самый распространённый способ решения этой задачи, но по нашим наблюдениям Jackson более производителен, поскольку он поддерживает альтернативные способы обработки JSON: потоковый, модель дерева в оперативной памяти, и традиционную связь форматов JSON-POJO. Имейте в виду, однако, что Jackson по размеру больше чем GSON, так что возможно, вы предпочтёте GSON для того чтобы избежать ограничения в 65k методов. Другие варианты: Json-smart и Boon JSON.

Работа с сетью, кэширование и картинки. Есть пара проверенных опытом решений для производительных запросов к backend-серверам, которые вам стоит рассмотреть перед разработкой вашего собственного клиента. Используйте Volley или Retrofit. Volley к тому же предоставляет средства загрузки и кэширования изображений. Если вы выберете Retrofit, возьмите Picasso для загрузки или кэширования изображений, и OkHttp для эффективных HTTP-запросов. Все эти библиотеки — Retrofit, Picasso и OkHttp разработаны одной компанией, так что они отлично дополняют друг друга. OkHttp также может быть использован с Volley.

RxJava — библиотека для Reactive Programming, другими словами, для обработки асинхронных событий. Это мощная и многообещающая концепция, которая может смутить своей необычностью. Мы рекомендуем хорошо подумать, перед тем как использовать эту библиотеку как фундамент архитектуры всего приложения. Есть проекты, созданные с использованием RxJava, и вы можете обратиться за помощью к однуму из этих людей: Timo Tuominen, Olli Salonen, Andre Medeiros, Mark Voit, Antti Lammi, Vera Izrailit, Juha Ristolainen. Мы писали несколько статей в наш блог по этому поводу: [1], [2], [3], [4].

Если вы раньше не работали с Rx, начните с использования API. Или вы можете начать с его применения для обработки простых событий пользовательского интерфейса, таких как нажатие или печать в поле поиска. Если вы уверены в ваших навыках использования Rx и хотите использовать его во всей архитектуре, напишите Javadocs касательно самых сложных моментов. Имейте в виду, что программист, не имеющий опыта использования RxJava, проклянёт вас может иметь большие проблемы при поддержке проекта. Постарайтесь помочь ему понять ваш код и Rx.

и в файле build.gradle каждого модуля добавьте

Android Studio начнёт поддерживать синтаксис лямбда-выражений. Если вы раньше их не использовали, можете начать с осознания утверждений:

Activity и фрагменты

В сообществе Android-разработчиков (как и в Futurice) нет единого мнения по вопросу, как лучше всего построить архитектуру Android-приложения в плане использования фрагментов и activity. Square даже выпустила библиотеку для построения архитектуры в основном с помощью view, минимизировав таким образом необходимость фрагментов, но этот способ до сих пор не стал общепринятым.

Исходя из истории развития Android API, вы можете рассматривать фрагменты, как часть пользовательского интерфейса экрана. Другими словами, фрагменты обычно относятся к UI. Activity обычно рассматриваются как контроллеры, они особенно важны с точки зрения их жизненного цикла и для управлением состояниями. Однако, может быть и по-другому: activity могут исполнять функции, связанные с UI (переход состояний между экранами), а фрагменты могут быть использованы только как контроллеры. Мы бы советовали принимать взвешенное решение, имея в виду, что архитектура, базирующаяся на использовании только фрагментов, или только activity, или только view, может иметь ряд недостатков. Вот пара советов, на что стоит обратить внимание, но отнеситесь к ним критично:

Архитектура пакетов Java

Архитектура Java для Android-приложений напоминает шаблон Model-View-Controller. В Android, фрагменты и activity представляют классы Conroller’а. С другой стороны, они являются частью пользовательского интерфейса, так что они также являются частью View.

Все вышеперечисленные пакеты, в порядке от backend до пользовательского интерфейса:

Ресурсы

Структура XML разметки. Если вы не уверены, как форматировать XML разметки, следующие советы могут помочь.

Как показывает опыт, атрибут android:layout_**** должен быть определён в XML разметки, а остальные атрибуты android:**** должны быть определены в XML стилей. У этого правила есть исключения, но в целом оно работает хорошо. Смысл в том, чтобы хранить только атрибуты разметки (позиция, поля, размер) и атрибуты контента в файле разметки, а детали отображения визуальных компонентов (цвета, отступы, шрифты) должны быть в файлах стилей.

Применимо к TextView:

colors.xml это цветовая палитра. Не помещайте в colors.xml ничего, кроме связи названия цвета с его RGBA значением. Не используйте его для определения значений RGBA для разных типов кнопок.

Цветовую палитру определяет дизайнер приложения. Цвета не обязательно называть «green», «blue», и т.д. Названия вроде «brand_primary», «brand_secondary», «brand_negative» тоже вполне приемлемы. Такое форматирование цветов делает простым их изменение или рефакторинг, а также позволяет легко понять, сколько цветов используется. Для создания красивого пользовательского интерфейса, важно по возможности уменьшить количество используемых цветов.

Оформите dimens.xml как colors.xml. По той же причине, стоит так же определить «палитру» типичных размеров объектов и шрифтов.

Рекомендуем не писать числовые значения в повторяющихся атрибутах разметки (полях и отступах), а использовать константы вида spacing_**** (примерно так, как вы обычно делаете для локализиции строковых значений).
Это сделает разметку понятнее и позволит проще её изменять.

Используйте в именовании строк ключи, как в именовании пакетов — это позволит вам решить проблему с одинаковыми именами констант и лучше понимать контекст их использования.

Не пишите строковые значения строчными буквами. Вы можете использовать обычные преобразования текста (в том числе, преобразование первой буквы в прописную). Если потребуется написать всю строку строчными буквами — используйте атрибут textAllCaps объекта TextView.

Избегайте глубокой иерархии view. Иногда у вас будет соблазн добавить ещё один LinearLayout, для решения вашей задачи описания view.

Даже если вы не видите явно выросшую вложенность в файле разметки, она может возникнуть когда вы включаете (в Java) view в другие views.

Тут может возникнуть пара проблем. Вы можете получать проблемы с производительностью, поскольку процессор вынужден обрабатывать сложное описание дерева компонентов пользовательского интерфейса. Другая, более серьёзная проблема — это возможность возникновения ошибки StackOverflowError.

Будьте внимательны при использовании WebView. Когда вам нужно показать web-страницу, например новостную статью, избегайте исполнения кода на клиентской стороне для формирования HTML, лучше попросите backend-программистов предоставить «чистый» HTML. WebView также могут вызывать утечку памяти при сохранении ссылки на Activity, к которой привязаны вместа ApplicationContext. Избегайте использования WebView для создания простого текста или кнопки, лучше используйте объекты TextView или Button.

Фреймворки для тестирования

Используйте Robolectric только для unit-тестов, не для UI. Этот фреймворк предоставляет возможность для запуска тестов без устройства, для увеличения скорости их выполнения, и идеально подходит для unit-тестов моделей данных и view. Однако, пользовательский интерфейс Robolectric тестирует не полностью и неточно. У вас будут проблемы при тестировании элементов пользовательского интерфейса, относящихся к анимациям, диалогам, и т.д., и процесс тестирования будет проходить «с закрытыми глазами» (не видя экрана).

Robotium делает тестирование пользовательского интерфейса простым. Вы можете запускать UI-тесты без Robotium, но он очень полезен за счёт утилит для анализа view и контроля экрана. Сценарии тестирования будут выглядеть совсем просто:

Эмуляторы

Если вы занимаетесь Android-разработкой профессионально, купите лицензию на эмулятор Genymotion. Он работает быстрее, чем обычный AVD-эмулятор. Эмулятор Genymotion позволяет записать ролик, демонстрирующий работу вашего приложения, эмулирует различное качество сетевого соединения, сигналы GPS и многое другое. Он идеален для запуска тестов. У вас появится доступ к многим (хотя не ко всем) образам устройств с ОС Android, так что стоимость лицензии Genymotion гораздо дешевле, чем покупка множества устройств.

Подводные камни: Genymotion не позволяет использовать в приложении такие сервисы Google, как Google Play Store или Maps. И если вам понадобится протестировать функции API Samsung, вам придётся купить реальное устройство.

Конфигурация Proguard

ProGuard обычно используется в проектах Android для сжатия и обфускации кода.

Условия использования ProGuard зависят от настроек вашего проекта. Обычно вы настраиваете gradle использовать ProGuard для сборки релизной версии.

Для того, чтобы защитить нужные классы и методу от удаления ProGuard’ом, добавьте в его конфигурацию опцию keep :

Для защиты от переименования используйте опцию keepnames :

Другие возможные модификации конфигурации ProGuard вы можете посмотреть в этом примере. Больше примеров конфигурации Proguard здесь.

В начале вашего проекта, создайте релизную сборку, чтобы проверить, что правила для ProGuard описаны корректно. При подключении новых библиотек, создайте релизную сборку и проверьте исполняемый файл на устройстве. Не ждите версии «1.0» для создания релизной сборки, иначе вы можете получить несколько неприятных сюрпризов в условиях нехватки времени на их исправление.

Совет. Сохраняйте файл mapping.txt для каждого релиза. Имея копию файла mapping.txt для каждой сборки, вы можете быть уверены что сможете найти проблему, кода пользователь поймает баг и пришлёт вам обфускированный лог ошибок.

DexGuard. Если вы хотите круто оптимизировать ваш код, и обфускировать его особым образом, попробуйте использовать DexGuard, коммерческий аналог ProGuard. Он может легко разделить Dex-файл на несколько для обхода ограничения в 65k методов.

Благодарности

Antti Lammi, Joni Karppinen, Peter Tackage, Timo Tuominen, Vera Izrailit, Vihtori Mäntylä, Mark Voit, Andre Medeiros, Paul Houghton и другим разработчикам Futurice за то, что они поделились своими знаниями в области Android.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *