Как создать мобильное приложение в Android Studio
Android Studio - интегрированная среда разработки (IDE) на базе IntelliJ IDEA , которую Google называет официальной IDE для приложений Android.
В этом руководстве описана разработка приложений для android :
Запустите Android Studio, в окне Android Studio Setup Wizard выберите Start a new Android Studio project (начать новый проект).
В окне Create New Project выберите Application Name (название приложения) как Fortune ball («Шар фортуны»), введите домен компании; в поле Project location выберите место в котором приложение будет сохранено. Кликните Next .
Перед вами окно Target Android Devices . Выберите Phone and Tablet . В поле Minimum SDK укажите API 15 . Нажмите Next .
В окне Add an activity to Mobile выберите Basic Activity . Оцените все опции, в этом окне представлен обзор доступных макетов.
Кликните Next .
В окне Customize the Activity , скриншот которого размещен ниже, вы сможете изменить Activity Name (название активности), Layout Name (название макета), Title (общее название) и Menu Resource Name (название меню ресурсов). Оставьте значения по умолчанию и кликните Finish .
Через несколько секунд появится следующее окно:
На вашем устройстве или эмуляторе высветится такое же окно. Эмулятор функционирует как устройство, загрузка займет определенное время.
Это уже приложение. Ему многого не хватает, но сейчас уже можно переходить к следующему шагу.
Окно показывает файлы проекта.
В выпадающем меню (скриншот ниже) есть несколько фильтров для файлов. Основные - Project и Android.
Фильтр Project покажет все модули приложения - в каждом проекте присутствует как минимум один модуль. Среди модулей других типов есть модули из библиотек сторонних разработчиков, или модули других приложений Android (такие как приложения для Android Wear, Android TV). У каждого из модулей имеется свой набор характеристик, в т. ч. файл gradle, ресурсы и исходные файлы (java-файлы).
Примечание. Если проект не открыт, кликните вкладку Project на левой стороне панели, как показано на скриншоте. По умолчанию установлен фильтр Android, который группирует файлы по определенному типу. На верхнем уровне вы увидите следующие папки:
В последующих разделах подробно описаны все эти папки, начиная с manifests.
У каждого приложения под Android есть файл AndroidManifest.xml, который находится в папке manifests. Этот XML-файл сообщает вашей системе о требованиях приложения. Присутствие этого файла обязательно, т. к. именно он позволяет системе Android создать приложение.
Откройте папку manifests и AndroidManifest.xml. Двойной клик откроет файл.
Теги manifest и application нужны для manifest, появляются только один раз.
Каждый тег также определяет набор атрибутов, наряду с названием элемента. К примеру, некоторые атрибуты в application могут быть такими:
android:icon, android:label и android:theme
Среди прочего в manifest может появиться:
Полный список тегов можно найти в manifest-файле на сайте Android Developer.
В activity добавьте следующий атрибут:
android:screenOrientation=”portrait”. чтобы ограничить экран только портретным режимом. Если этого не сделать, экран, в зависимости от расположения устройства, будет либо в ландшафтном, либо в портретном режиме. После добавления атрибута файл manifest будет выглядеть как на скриншоте.
Создайте и запустите приложение. Если вы тестируете на своем устройстве, переверните его, удостоверьтесь, что экран не перемещается в ландшафтный режим, если вы ограничили эту возможность в файле AndroidManifest.
Перейдем к Gradle. Gradle превращает Android-проект в инсталируемый APK, который можно устанавливать на устройства. Файл build.gradle присутствует в Gradle scripts, на двух уровнях: модульном и проектном.
Откройте файл build.gradle (Module:app). Вы увидите установку gradle по умолчанию:
apply plugin: "com.android.application" android {compileSdkVersion 25buildToolsVersion "25.0.2"defaultConfig {applicationId "com.raywenderlich.fortuneball"minSdkVersion 15targetSdkVersion 25versionCode 1versionName "1.0"testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"}buildTypes {release {minifyEnabled falseproguardFiles getDefaultProguardFile("proguard-android.txt"), "proguard-rules.pro"}}} dependencies {compile fileTree(dir: "libs", include: ["*.jar"])androidTestCompile("com.android.support.test.espresso:espresso-core:2.2.2", {exclude group: "com.android.support", module: "support-annotations"})compile "com.android.support:appcompat-v7:25.1.0"compile "com.android.support:design:25.1.0"testCompile "junit:junit:4.12"}
Разберем основные компоненты:
Кроме библиотек совместимости Android, вы можете добавить библиотеки сторонних разработчиков в компонент dependencies{…} Библиотека анимаций, например, содержит эффекты пользовательского интерфейса. Найдите dependencies, затем добавьте вниз две следующие линии:
dependencies { ... compile "com.daimajia.easing:library:2.0@aar"compile "com.daimajia.androidanimations:library:2.2@aar"}
Здесь можно добавить dependencies сторонних разработчиков. Библиотеки автоматически загружаются и интегрируются в Android Studio. Кликните Sync Now, чтобы интегрировать эти зависимости в свое приложение.
Синхронизация длится несколько секунд. Обновления Gradle появляются во вкладке Messages нижней панели.
Это все настройки, которые вам пока будут нужны в Gradle. Такие манипуляции добавят анимацию в приложении.
В разработке приложения под Android важна интеграция с другими ресурсами: изображения, кастомные шрифты, звуки, видео и пр. Эти ресурсы импортируются в Android Studio и помещаются в соответствующие папки, что позволяет операционной системе подбирать корректные ресурсы для приложения. Для нашего приложения Fortune Ball понадобится импорт изображений в папки drawable. В этих папках могут содержаться изображения или специальные файлы XML drawables (т. е. вы можете рисовать формы с помощью XML-кода и использовать их в своих макетах).
В Android Studio перейдите из Android в Project
Откройте папку res (app > src > main). Клик правой кнопки мыши по папке res, выберите New > Android resource directory.
Появится окно под названием New Resource Directory.
Из выпадающего списка Resource type выберите опцию drawable. В списке Available qualifiers выберите Density, затем кликните кнопку, которая выделена на скриншоте.
В следующем окне выберите XX-High Density из списка Density. Кликните OK.
Повторите все, чтобы создать папки drawable-xhdpi, drawable-hdpi и drawable-mdpi. Выберите X-High, high (высокую) и medium (среднюю) плотность соответственно из списка Density.
Каждая папка, у которой есть определитель плотности (i.e. xxhdpi, xhdpi, hdpi), содержит изображения, которые соотносятся с определенной плотностью или разрешением. К примеру, папка drawable-xxhdpi содержит изображение высокой плотности, это означает, что Android-устройство с экраном высокого разрешения извлечет изображение из этой папки. Изображение будет хорошо смотреться на всех устройствах Android, независимо от качества экрана. Больше информации о плотности экранов содержится в документации Android.
Создав все «рисованные» папки, вы можете вернуться к нераспакованному контенту в папке и скопировать (cmd + C) изображение из каждой папки и поместить (cmd + V) в соответствующую папку Android Studio.
Поместив файлы, вы увидите окно Copy. Выберите OK.
Создание макета, с которым пользователи могут взаимодействовать, - важная часть процесса. В Android Studio это можно сделать в редакторе макета. Откройте content_main.xml из res/layout. Во вкладке Design вы можете переносить элементы интерфейса (кнопки, текстовые поля).
Справа от Design есть вкладка Text, которая позволяет редактировать XML непосредственно в макете.
Перед созданием внешнего вида, необходимо определить некоторые значения. Откройте strings.xml во вкладке res/values и добавьте следующее:
strings.xml содержит все строки, которые появляются в приложении. Разделение этих строк в отдельные файлы упрощает интернационализацию, т.к. нужен только файл строк для каждого языка, который требуется в приложении. Даже если вы не собираетесь переводить приложение на другие языки, использовать файл строк всегда рекомендуется.
Откройте dimens.xml в res/values и добавьте следующее:
dimens.xml содержит размерные величины, предельные интервалы для макетов, размера текста и пр. Рекомендуется сохранять эти данные в файле, чтобы их можно было использовать для создания макетов в дальнейшем.
Вернитесь в content_main.xml и замените все содержимое файла следующим кодом:
Этот довольно большой код создает макет приложения под названием FortuneBall. На верхнем уровне вы добавили RelativeLayout (относительная разметка определяет позицию дочерних компонентов относительно родительского компонента). RelativeLayout можно растянуть, подогнать под размер родительского компонента.
В относительной разметке добавляются две части текста, изображение и кнопка. Все эти детали будут видны в порядке добавления. Их содержимое можно будет прочитать в strings.xml (текст) и в drawable (изображения).
Обновляя content_main.xml, обратите внимание на окно Preview обновляет UI:
Примечание: если не видно окно предпросмотра, во вкладке Text кликните на кнопку Preview на панели редактора разметки справа.
Создайте и запустите.
И вот вы создали макет приложения. Но на данном этапе это только красивое изображение - клик по кнопке ни к чему не приведет.
Вы можете использовать java-файлы, размещенные в app / src / main / java чтобы установить логические связи в приложении.
Откройте MainActivity.java и добавьте эти данные под уже существующие:
Import java.util.Random;import android.view.View;import android.widget.Button;import android.widget.ImageView;import android.widget.TextView; import com.daimajia.androidanimations.library.Techniques;import com.daimajia.androidanimations.library.YoYo;
Первые пять импортов указывают на соответствующие классы в вашем коде: Random, View, Button, ImageView и TextView. Следующие два импорта указывают на то, что вы будете использовать два класса из библиотек, в т.ч. build.gradle для анимаций. В MainActivity.java в класс MainActivity добавьте:
String fortuneList = {"Don’t count on it","Ask again later","You may rely on it","Without a doubt","Outlook not so good","It"s decidedly so","Signs point to yes","Yes definitely","Yes","My sources say NO"}; TextView mFortuneText;Button mGenerateFortuneButton;ImageView mFortuneBallImage;
В этом небольшом отрезке кода вы установили 4 переменных для активности. Первая - строки, которые определяют возможные состояния, другие три - элементы UI, которые вы создали в макете/разметке.
Теперь замените содержимое метода onCreate() следующими данными:
// 1:super.onCreate(savedInstanceState);// 2:setContentView(R.layout.activity_main);Toolbar toolbar = (Toolbar) findViewById(R.id.toolbar);setSupportActionBar(toolbar);// 3:mFortuneText = (TextView) findViewById(R.id.fortuneText);mFortuneBallImage = (ImageView) findViewById(R.id.fortunateImage);mGenerateFortuneButton = (Button) findViewById(R.id.fortuneButton); // 4:mGenerateFortuneButton.setOnClickListener(new View .OnClickListener() {@Overridepublic void onClick(View view) {// 5:int index = new Random ().nextInt(fortuneList.length);mFortuneText.setText(fortuneList);// 6:YoYo.with(Techniques.Swing).duration(500).playOn(mFortuneBallImage);}});
Уже почти готово. Но нужно убрать плавающую кнопку. Перейдите в res / layout и откройте activity_main.xml.
В этом файле макета содержится ссылка на content_main.xml, который вы прежде редактировали. Он по умолчанию определяет контент (тулбар и плавающая кнопка действия). Однако в данном конкретном приложении (Fortune Ball) плавающая кнопка не нужна. Поэтому уберите следующий блок кода из xml-файла:
Теперь в правом нижнем углу нет плавающей кнопки.
Задайте вопрос (What’s my fortune?) - нажмите кнопку. Проверьте работу приложения.
В Android Studio содержится широкое множество инструментов. Откройте вкладку Android Monitor в нижней части окна Android Studio.
Здесь вы найдете множество опций для разработчика.
LogCat предоставляет детальный обзор системных сообщений с возможностью вникнуть в данные определенного приложения, или даже использовать строку поиска, чтобы отфильтровать сообщения, если они не содержат специфических символов.
Проверьте, что вы выбрали Show only selected application в правом верхнем углу, как было показано на скриншоте выше. Теперь будут видны только сообщения вашего приложения.
В MainActivity.java добавьте к списку импортов следующее:
Import android.util.Log;
В конце onCreate() в MainActivity.java добавьте следующую линию:
Log.v("FORTUNE APP TAG","onCreateCalled");
Log.v вызывает два параметра - тег и сообщение. В данном случае тег определен как “FORTUNE APP TAG”, а сообщение как “onCreateCalled”.
Запустите приложение, чтобы видеть сообщение лога на панели Logcat.
Отфильтруйте содержимое LogCat, впишите onCreateCalled в поисковую строку над консолью:
Затем удалите поисковый текст, чтобы увидеть снова все сообщения лога.
Еще одна полезная функция - logcat, это возможность просматривать сообщения об ошибке. Добавьте баг в свое вполне функциональное приложение, чтобы посмотреть, как все устроено.
Перейдите к MainActivity.java и измените следующую линию в onCreate():
//mFortuneText = (TextView) findViewById(R.id.fortuneText);
Запустите приложение. Кликните кнопку What’s My Fortune? Не работает!
Как бы вы исправили ошибку, если бы не знали о наличии бага? В этом поможет Logcat.
Перейдите к панели Logcat - она выглядит примерно так:
Здесь много красного текста. В данном случае проблема в линии 50 в файле MainActivity.java. LogCat превратил эту ссылку в гиперссылку синего цвета. Если ее нажать, можно узнать, в чем проблема.
Изменив mFortuneText = (TextView) findViewById(R.id.fortuneText), вы тем самым создали переменную, но не указали ее значение - отсюда исключение нулевого указателя. Вернитесь обратно и измените код, запустите приложение. В этот раз все работает гладко. Logcat - полезный инструмент для поиска ошибок.
Share this article:
Начиная осваивать разработку для любой платформы, ты обязательно сразу же наткнешься на множество с первого взгляда незаметных подводных камней. Большинство из них будут связаны с самим процессом кодинга: несостыковки в API, скрытые функции, ограничения, особый стиль программирования для платформы. Есть и камни, лежащие немного поодаль: тестирование и автоматическая оптимизация, создание клипарта и иконок, получение автоматических краш-репортов. Неопытные разработчики для Android рискуют отбить о них обе ноги.
В этой статье мы рассмотрим проблемы разработки для Android в контексте утилит и инструментов. Мы избавимся от необходимости подключать смартфон с помощью кабеля во время тестирования и отладки на устройстве, расщепим приложение на версии Lite и Pro, встроим в него механизм автоматической генерации и отсылки на сервер краш-репортов, автоматизируем тестирование, обфусцируем и оптимизируем код, а также за несколько минут создадим для приложения иконку и все необходимые ресурсы. Поехали.
Итак, ты набросал свое первое приложение, и пора его запустить и проверить на работоспособность. Для этого в комплекте Android SDK есть эмулятор. Долгое время его упрекали за медлительность, но с выпуском Android Studio 2.0 ситуация намного улучшилась - x86-версия эмулятора получила хардварное ускорение, так что теперь он работает быстрее реальных устройств. К тому же у него появился удобный графический интерфейс, с помощью которого можно симулировать звонки, СМС, изменять данные GPS и сбои в сети, то есть все, для чего раньше приходилось использовать инструменты командной строки.
Поэтому, если ты еще не обновился, настоятельно рекомендую это сделать, не говоря уже о переходе с Eclipse. И обязательно выбирать x86-версию эмулятора в AVD manager, ARM-версия не поддерживает хардварное ускорение.
Второй этап - тестирование на реальном устройстве. Здесь все просто: подключаешь смартфон по USB, устанавливаешь драйверы, включаешь режим отладки в настройках для разработчиков, после чего девайс появляется в списке доступных для установки приложения (рядом с эмулятором). Проблема только в том, что в данном случае устройство необходимо держать подключенным к ПК с помощью кабеля, а если это твой основной смартфон, на который поступают звонки и сообщения, то об удобстве говорить не приходится.
К счастью, Android Studio (а точнее, утилита ADB, которую он использует для связи с устройством) поддерживает работу по сети. Но данную функцию еще нужно активировать. Если у тебя рутованный смартфон, то тебе повезло: включить отладку по сети можно с помощью приложения WiFi ADB . Последовательность действий:
$ adb connect IP-адрес
Теперь, если попытаться собрать и запустить приложение, ты увидишь в списке устройств также и свой смартфон. Те, у кого нет root, могут перезапустить ADB в сетевом режиме, предварительно подключив его кабелем. Делается это так:
$ adb tcpip 5555
$ adb connect IP-адрес
IP-адрес можно узнать через настройки: «О телефоне (О планшете) → Общие сведения», пункт «IP-адрес».
Окей, твой накиданный за полчаса огрызок вроде бы работает, и настало время превратить его в настоящее приложение с красивым интерфейсом и виджетами для рабочего стола. На этом этапе тебе наверняка понадобятся внешние библиотеки, реализующие различные концепции интерфейса, паттерны программирования и связь с внешними сервисами. И если с последними все ясно (нужен SDK для Dropbox - открываешь портал для разработчиков и следуешь инструкциям), то с остальными уже сложнее. Где их искать и какие библиотеки лучше?
Наиболее полный каталог библиотек - это Android Arsenal . Там ты найдешь практически все, что тебе нужно. Доступны удобный поиск и сортировка по рейтингу, для каждой библиотеки есть инструкция, как ее подключить к своему проекту, в том числе с помощью стандартной для Android системы сборки Gradle: достаточно добавить репозиторий в файл build.gradle проекта и указать библиотеку в списке зависимостей.
Отличный список must have библиотек ты найдешь на этой странице . От себя добавлю, что на первых этапах стоит сразу изучить Dagger 2 , RxJava и Retrofit . Став продвинутым разработчиком, ты так или иначе придешь к использованию этих библиотек.
Наконец, спустя дни или недели у тебя начинает вырисовываться полноценное приложение. Вот только никакого графического материала нет до сих пор: иконка стандартная, в форме зеленого робота, вместо клипарта - заглушки. Очевидно, без графики соваться в маркеты бессмысленно, однако и платить за иконку для своего первого приложения тоже глупо. Что делать?
На самом деле иконку можно сгенерировать. Есть замечательный веб-сервис Android Asset Studio , с помощью которого буквально за пару минут ты получишь красивую иконку во всех возможных разрешениях. В качестве основы можно взять подготовленную тобой картинку, просто написать текст или, что лучше всего, выбрать из предоставленного сервисом клипарта. Также ты сможешь задать стиль иконки (круглая, квадратная, в стиле iOS…), цвет, настроить тени и другие параметры. В результате в твоем распоряжении появится архив ic_launcher.zip , который необходимо развернуть в каталог AndroidstudioProjects/ИМЯ_ПРИЛОЖЕНИЯ/app/src/main/res . Обязательно создай веб-иконку, нажав на кнопку «Generate web icon». Она тебе понадобится.
Тот же сервис позволяет создать иконки для ActionBar’а и строки состояния . Принцип примерно тот же, скажу лишь, что в строке состояния лучше всего смотрятся иконки с отступом от краев 15%.
Кроме того, тебе понадобится так называемая Feature Image. Это специальная картинка, которую Play Market и другие магазины приложений используют в качестве плашки в верхней части экрана (когда открываешь страницу приложения на смартфоне). Ее можно сгенерировать с помощью другого сервиса . Для оформления скриншотов можно использовать официальный сервис от Google . Он создает вокруг скриншота рамку смартфона.
Приложение готово, иконка есть, интерфейс удобный, код качественный. Настало время тестирования, и первое, что ты делаешь, - рассылаешь приложение друзьям и знакомым. Но вот незадача: у некоторых из них приложение падает, а у тебя все работает отлично, и повторить действия, приведшие к падению, ты не можешь. Что делать, просить друзей присылать тебе листинг logcat?
Нет, нам нужна система краш-репортинга. Таких существует огромное множество, и все они реализуют один и тот же принцип работы: к приложению подключается небольшая библиотека, которая в момент падения записывает стектрейс и другие данные о падении и отправляет их на сервер, а затем специальный веб-интерфейс формирует на их основе красивые и наглядные отчеты.
Одна из самых популярных таких систем - Fabric , однако я рекомендую посмотреть в сторону Splunk MINT: он бесплатный, простой и легко интегрируется в приложение (достаточно добавить всего одну строку кода). Чтобы начать им пользоваться, необходимо подключить к проекту SDK, сделать это можно с помощью все того же Gradle. Открываем файл build.gradle (тот, что относится к приложению, а не ко всему проекту) и добавляем следующие строки:
Repositories { maven { url "https://mint.splunk.com/gradle/" } } dependencies { compile "com.splunk.mint:mint:5.0.0" }
После этого Splunk MINT покажет тебе строку кода, которую необходимо вставить в код:
Подписка позволит тебе в течение указанного срока читать ВСЕ платные материалы сайта. Мы принимаем оплату банковскими картами, электронными деньгами и переводами со счетов мобильных операторов.
Есть несколько способов разработки приложений для Android, но на сегодняшний день официальный и самый популярный способ - это Android Studio. Это официальная среда разработки, созданная в Google и с помощью нее были разработаны большинство приложений, которыми вы пользуетесь каждый день.
Впервые об Android Studio было объявлено на конференции Google I/O в 2013, а первая версия вышла в 2014 году. До этого большинство приложений разрабатывались в Eclipse, которая представляет из себя более универсальную среду для Java. Android Studio делает разработку приложений намного проще, но она по-прежнему остается сложной. Начинающим пользователям нужно изучить много материалов чтобы уверено ее использовать.
В этой статье мы расскажем как пользоваться Android Studio, поговорим про ее базовые возможности и всем, что нужно чтобы начать работу. И все это максимально просто, чтобы вы смогли сделать свой первый шаг в разработке для Android.
Android Studio предоставляет интерфейс для создания приложений и берет на себя большую часть сложного управления файлами. Вы будете использовать Java для программирования приложений. Несмотря на автоматизацию, большинство возможностей приложения вам все же придется кодировать самому.
В то же время Android Studio дает доступ к Android SDK, это расширение Java, которое позволяет приложениям работать на устройстве и использовать его оборудование. Вы можете запускать программы для тестирования в эмуляторе или сразу на подключенном к компьютеру телефоне. Кроме того, Android Studio выдает различные подсказки во время кодинга, например, подчеркивает ошибки.
Для установки Android Studio в Linux вы можете использовать репозитории PPA или установщик из официального сайта, в Windows доступен полноценный установщик. Мы уже рассматривали в отдельной статье. Настройка android studio перед запуском практически не нужна. Но если вы хотите использовать реальное устройство Android, то в Linux с этим могут возникнуть проблемы. Чтобы их избежать нужно создать файл /etc/udev/rules.d/51-android.rules с таким содержимым:
SUBSYSTEM=="usb", ATTR{idVendor}=="0bb4", MODE="0666", GROUP="plugdev"
Здесь 0bb4 - это идентификатор производителя устройства, вы можете его узнать, выполнив lsusb:
Если не отображается, попробуйте выполнить adb devices. Когда установка будет завершена, вы сможете открыть программу из главного меню:
Если вы запускаете Android Studio впервые, то перед вами появится окно с возможностью создания нового проекта:
Выберите "Start new Android Project" . В следующем окне введите название приложения и имя домена компании, эта информация будет использоваться для расположения файлов приложения в файловой системе Android.
На следующем этапе создания приложения нужно выбрать платформу. Нас интересует смартфон Android, а версию возьмем 4.2, это одна из самых распространенных:
Осталось только выбрать внешний вид приложения по умолчанию. Шаблон основного окна называется Activity. Приложение может быть вообще без Activity, но лучше все же что-то выбрать.
Также нужно будет ввести некоторые параметры для Activity:
Интерфейс Android Studio похож на большинство высокоуровневых IDE. Но разработка для Android достаточно сильно отличается от привычного программирования, когда вы набираете программу в одном файле, а потом полностью выполняете. А здесь есть множество файлов ресурсов, которые должны быть сгруппированы между собой.
Программирование в Android Studio выполняется в файлах Java, который имеет такое же имя, как и у Activity. Однако, внешний вид приложения находится в другом файле - это файл xml в котором на языке разметки описаны все элементы приложения. Таким образом, если вы хотите создать кнопку, то вам придется описать ее в xml файле, а чтобы привязать для нее действия - используйте файл Java.
Вот эта строчка кода загружает макет из XML файла:
setContentView (. R.layout activity_main);
Это значит, что мы могли бы использовать один макет для нескольких Activity, а также одна Activity может иметь несколько файлов XML с описанием отображения. Так или иначе, вы можете получить доступ ко всем файлам проекта в левой части окна, а вкладки над рабочей областью позволяют переключаться между теми файлами, которые сейчас открыты.
Кроме того, есть еще папка res, в которой находятся различные ресурсы, такие как изображения. Обратите внимание, что названия всех файлов должны быть в нижнем регистре.
Еще есть папка Values, в которой содержатся XML файлы со значениями различных переменных.
Основная информация о приложении содержится в файле AndroidManifest.xml, здесь описаны полномочия, название приложения, миниатюра, и другое.
Вы можете создать любые файлы, классы и Activity в любой момент, чтобы расширить функциональность приложения. Просто щелкните правой кнопкой мыши по нужному каталогу, а затем выберите "Create" .
Как вы заметили при редактировании XML файлов внизу страницы появляется две вкладки - "Text" и "Design" . Здесь вы можете не только вручную писать код, но и добавлять нужные элементы в графическом режиме. В окне "Palete" можно выбрать вид виджета, который нужно добавить:
Для добавления его достаточно перетащить на макет приложения. Например, я добавил WebView, Button, Plain Text и Text. С помощью синей рамки вы можете изменять размер элементов, а также изменять их положение.
Но как вы поняли без файлов Java контент XML ничего делать не будет.. Теперь программирование в android studio. Под строками import добавьте:
import android.webkit.WebView;
Затем добавьте эти строки в конец метода onCreate:
WebView mywebview = (WebView) findViewById(R.id.webView);
mywebview.loadUrl("https://сайт");
В Android Studio все инструменты реализованы просто и красиво. Но некоторые из них более сложные. Один из таких инструментов, которые вы могли заметить - это Gradle. Это инструмент автоматизации сборки, который существенно упрощает превращение всех этих файлов в один готовый APK.
Время от времени вам придется редактировать настройки Gradle, которые находятся в файлах *.gradle, а также если что-то перестанет работать, то вы всегда сможете выбрать в меню "Build" опцию "Clear project" , которая часто помогает.
Когда вы будете готовы протестировать приложение, у вас будет два варианта - либо запустить его на реальном устройстве, либо в эмуляторе.
Запустить приложение на устройстве очень просто. Достаточно подключить его по USB и выполнить "Run" , затем "Run App" . Обратите внимание, что в настройках телефона должна быть разрешена отладка по USB и установка из недостоверных источников:
В открывшемся окне вам предстоит выбрать устройство или создать виртуальное. После выбора устройства приложение практически мгновенно запустится на нем.
Пока ваше приложение работает, вы можете открыть пункт Android Monitor внизу экрана и следить за всеми сообщениями от приложения на вкладке LogCat, рядом также есть логи Android Studio, так что если что-то пойдет не так вы сможете решить проблему. Если что-то пойдет не так, ищите там красный текст, он поможет понять что произошло. Это сэкономит очень много времени.
Там же можно переключиться на вкладку "Monitors" и посмотреть информацию об устройстве, нагрузку на процессор, память и так далее.
Вряд ли вы бы захотели пользоваться Android Studio и разрабатывать приложения без реального устройства. Но одна из самых важных проблем Android разработки - это фрагментация. Недостаточно чтобы приложение работало на вашем устройстве, оно должно работать на миллионах устройств, а также поддерживать более старые версии Android.
С помощью Android Virtual Device вы можете эмалировать размер, внешний вид, мощность любого другого устройства Android. Но перед тем как перейти дальше, нужно скачать необходимые компоненты. Откройте меню "Tools" -> "Android" -> "ADV Manager":
Здесь выберите "Create Virtual Device" :
Затем выберите модель устройства, которое хотите эмулировать.
После завершения настройки вы сможете запустить приложение и на этом устройстве. Но стоит отметить, что для запуска эмулятора нужен хороший компьютер. С помощью того же эмулятора вы можете запускать не только свои приложения, но и загружать сторонние из Play Market.
Если вы разрабатываете приложение только для определенной версии Android или же хотите создать виртуальное устройство под управлением определенной версии, то вам понадобятся некоторые компоненты и инструменты SDK. Вы можете получить их через SDK Manager, который находится в "Tools" -> "SDK Manager".
Здесь есть все необходимое, например, Glass Kit и Android Repository. Просто установите флажок рядом с нужным компонентом и нажмите "Oк" .
Рано или поздно вы закончите тестирование своего приложения и оно будет готово выйти в большой мир. Чтобы загрузить его на Google Play вам нужно создать подписанный APK. Для этого выберите в меню "Tools" пункт "Create signed APK":
Вам будет предложено выбрать или создать хранилище ключей. Это своего рода сертификат подлинности, которым вы подтверждаете, что приложение ваше. Это защитит ваш аккаунт Google Play от взлома и предотвратит возможность загрузки вредоносных APK. Сохраните этот файл в надежном месте, потому что если вы его потеряете, то больше не сможете обновить приложение. Процесс создания сертификата:
Тип сборки выберите "Release" , это нужно чтобы убрать все лишнее из APK файла. Затем нажмите кнопку "Finish" .
Может показаться, что в этой статье мы рассмотрели очень много чтобы все это запомнить, но на самом деле мы только коснулись поверхности того, как пользоваться Android Studio и вам придется освоить еще больше.
Например, если вы хотите синхронизировать приложение с облаком, вам понадобится инструмент Firebase. Также вы можете захотеть использовать GitHub, где вы можете сохранять резервные копии своих проектов. Также существует Android NDK для разработки приложений без Java, на C++.
Компания Google сделала множество шагов чтобы использование Android Studio было простым и максимально легким. Лучшая стратегия развития - начать разрабатывать простое приложения и по мере необходимости изучать сложные библиотеки, тогда вы увидите что Android Studio на самом деле замечательный и очень полезный инструмент.
В этом уроке мы создадим новый проект для первого приложения и запустим это приложение на андроид-устройстве.
Что вы узнаете
После этих шагов, Android Studio:
Окно Android Studio должно выглядеть примерно так:
Скриншот 1. Интерфейс Android Studio
Рассмотрим интерфейс Android Studio
В любой момент можно выполнить поиск по исходному коду, базам данных, командам, элементам пользовательского интерфейса и т. д., дважды нажав клавишу Shift или щелкнув увеличительное стекло в верхнем правом углу окна Android Studio. Это может быть очень полезно, если, например, вы пытаетесь найти конкретную команду IDE, которую вы забыли, как запустить.
Окно структуры проекта
Скриншот 2. Окно структуры проекта Android Studio
Можно посмотреть иерархию файлов приложения несколькими способами.
В виде отображения Project
>
Project
вы увидите полную структуру папок проекта, как она выглядит на диске. Здесь много файлов и папок и новичку здесь можно запутаться. Главное, на что следует обратить внимание: проект имеет модульную структуру и основной модуль нашего приложения – app
.
Project» width=»1168″ height=»1079″>
Скриншот 3. Окно структуры проекта Android Studio в виде Project> Project
Если раскрыть папку app , мы увидим такие папки:
Также в папке модуля app имеется файл системы сборки build . gradle , мы рассмотрим его позже.
Если переключиться на вид проекта Project
>
Android
, вы увидите только папку модуля app
с упрощенной структурой проекта. Это представление удобнее, поскольку здесь отфильтрованы только те файлы, с которыми мы непосредственно будем работать. Но следует помнить, что в таком виде структура папок проекта не соответствует той, что хранится на диске. Например, вы не найдете на диске в папке проекта папку manifests
. А в дереве папок в таком режиме не отображаются папки src
и main
.
Скриншот 4. Окно структуры проекта Android Studio в виде Project>Android
В виде Project > Android вы увидите в папке app такие папки: manifests , java , и res .
com . example . android . myfirstapp (androidTest ): эта папка для размещения инструментальных тестов.
com . example . android . myfirstapp (test ): эта папка для размещения модульных тестов.
Также в окне структуры проекта есть папка Gradle Scripts . Раскройте ее. В начале списка есть два файла с одинаковыми именами build.gradle. Это файлы сборки для системы Gradle, которая используется для компиляции, построения и упаковки приложений и библиотек. В скобках после имени файлов указана принадлежность файла модулю App или всему проекту. Файл сборки уровня проекта содержит настройки для всего проекта, а файл сборки уровня модуля содержит настройки для модуля. Чаще всего мы будем работать именно с файлом сборки уровня модуля. Он содержит такие основные секции, как:
Наиболее очевидный способ проверить работу приложения в процессе разработки – установить и запустить его на андроид-устройстве.
Для запуска приложения из среды разработки Android Studio мы можем использовать 2 способа:
Оба этих способа имеют свои преимущества и недостатки, и какой использовать, выбирать вам. Для начинающего разработчика подойдет любой способ.
Что такое андроид-смартфон, вы наверняка уже знаете, раз заинтересовались темой разработки приложений. А что такое эмулятор Android? Это запуск системы Android на ПК в отдельной виртуальной машине.
Существует много эмуляторов Android, например BlueStacks, Droid4X , Nox APP Player , Genymotion , и другие. Большинство из них разработаны для игр и не очень подходят для тестирования приложений, кроме Genymotion.
В Android Studio есть собственный эмулятор, который может запускать образы виртуальных устройств с различными характеристиками, таких как смартфоны Nexus и Pixel, а также планшеты наиболее распространенных типов.
Создание виртуального android-устройства (эмулятора)
Надеемся, у вас все получилось и вы запустили приложение на устройстве. А на следующем уроке мы более подробно разберемся в приложении и попробуем изменить его. Всем добра!
Этот раздел сайта для тех, кто установил Android Studio и не знает с чего начать. Предложенные здесь приложения будут работать как на смартфоне, планшете, так и на Android -телевизоре. Для некоторых приложений можно скачать готовые APK -файлы, проверенные на смартфонах с экраном от 4,5 до 6 дюймов. Обязательно в настройках устройства поставьте разрешение установки приложений из неизвестных источников. Иногда, из-за того, что устройства разняться программным обеспечением, установочный файл необходимо будет запустить из проводника вашего устройства.
Android Studio — это интегрированная среда разработки IDE для работы с платформой Android. Рассмотрим основные окна и вкладки Android Studio без которых вы не сможете двигаться даже в самом начале . Палитра компонентов Palette , разбитая на категории. Дерево компонентов Component Tree , где показаны компоненты строящегося приложения уже включенные в проект. Свойства элемента экрана Properties , здесь можно придавать свойствам выбранного элемента различные разрешенные значения еще до запуска приложения на выполнение. Проект приложения Project , показывающий файловую структуру проекта. Макет приложения - это визуальное представление экрана устройства на котором будет работать ваше приложение.
Сделайте пробный запуск приложения, нажав на зеленый треугольник. При первом запуске приложения андроид-студия попросит вас определиться с виртуальным устройством. Его будет необходимо создать. Можно подключить реальное устройство посредством USB -кабеля, например, смартфон или планшет. На реальном устройстве включите разрешение отладки по USB .
Перейдя во вкладку файла MainActivity.java вы будете наполнять этот файл программным кодом на языке java . В работе над программным кодом используйте комбинацию клавиш Alt + Enter для быстрого исправления ошибок, таких как пропущенный импорт или значение переменной, отсутствующие ссылки, подключение необходимых библиотек. IDE по возможности исправит ошибки, или предложит наиболее подходящее решение. При этом курсор должен быть на строке с красными буквами. Комбинация Ctrl + D позволяет быстро дублировать строку или фрагмент кода. Просто выделите нужный вам код и нажмите Ctrl + D . После длительной работы с программным кодом его желательно отформатировать - привести в порядок для удобочитаемости. Отформатировать код можно клавишным аккордом Ctrl + Alt + L . На скриншоте видим что сейчас открыт файл activity_main.xml в режиме дизайна Design , где можно визуально конструировать экран приложения, выкладывая на него готовые элементы. В процессе верстки экрана привязывайте его компоненты к границам этого экрана. В противном случае на устройствах с другим разрешением компоненты будут смещаться за пределы экрана. Для редактирования файла activity_main.xml вручную перейдите в режим Text .
После завершения работы над проектом приложения необходимо создать установочный apk
-файл для устройства. В студии второй версии в меню выполните Build
- Build APK
. Через некоторое время появится отдельное небольшое окно с сообщением: Build APK
APK(s) generated successfully Show in Explorer
. Кликнув на ссылку, откроете папку в которой будет находится готовый установочный файл app-debug.apk
. Этот файл можно копировать на устройство для установки приложения. Предварительно файл можно переименовать обязательно оставив прежнее расширение apk
, иначе устройство не поймет, что это файл предназначен для установки Android
-приложения. В студии третьей версии выполните
Build
-
Build APK(s)
и в появившемся окне кликните по ссылке locate
.
Если за основу построения своих первых приложений вы возьмете эти странички, то приложения необходимо рассматривать по порядку, так как каждое последующее приложение как правило будет нуждаться в сведениях изложенных в предыдущих. Приложение лучше разбить на части и двигаться в его построении поэтапно. Сначала добейтесь что бы первый элемент не просто лежал на экране, а работал. И только потом приступайте к следующему элементу.
В.М. Коробицин
Приложение 1 Заголовок экрана приложения. Работа с ресурсами изображений. Обработка нажатия на изображение. Завершение работы приложения.
Приложение 2 Простейшая анимация. Ориентация экрана приложения.
Приложение 3 Создание класса MediaPlayer для воспроизведения файлов mp3, wav, mid, wma, amr. Методы класса MediaPlayer.
Приложение 4 Простейшая анимация с воспроизведением wav и mp3.
Приложение 5 Загадка магического квадрата. Переход из приложения на сайт в интернете.
Приложение 6 Обработчик нажатия кнопки. Активность кнопки. Часы и календарь. Полоса заголовка приложения. Панель уведомлений.
Приложение 7 Псевдослучайные числа. Класс Random. Методы класса Random. Вывод числовых переменных в TextView.
Приложение 8 Числовые переменные. Математические действия. Ввод числовых значений с помощью компонента EditText.
Приложение 9 Циклическая конструкция for. Вывод-добавление числовых переменных в TextView с использованием метода append.
Приложение 10 Генератор квадратных уравнений на основе теоремы Виета.
Приложение 11 Ветвление if else. Решение квадратного уравнения.
Приложение 12 Вычисление определенного интеграла методом прямоугольников.
Приложение 13 Вычисление определенного интеграла методом трапеций. Циклическая конструкция while.