Статья Курс по созданию приложений для android

  • Автор темы Автор темы Bron Frol
  • Дата начала Дата начала
Всех приветствую! Решил написать целиком курс по созданию приложений для OS Android. Хочется посмотреть, что есть в ветках grey&gold. Посмотрим на реакции).
Уроки буду выкладывать каждую неделю, возможно и чаще (если, конечно, к ним будет интерес).
В цикле статей обучу создавать приложения для android, от самого начала (примитивные приложения) до настоящего шпионского софта (сбор информации о gps, дамп смс, подключение к камере/микрофону, отправка всех данных на сервер и прочее). Закончив данный курс -- Вы сможете написать как вирус, так и полноценное полезное приложение для вашего устройства. Ограничением будет выступать только Ваша фантазия и встроенное в ваше устройство железо (хотя, если интерес будет действительно большой -- можно будет дополнить и подключением модулей на ardu/raspberry, но это уже совсем другая тема.

Данный курс рассчитан на людей любого уровня подготовки.
Даже если читающий никогда не пробовал свои силы в программировании -- всё получится! Только есть одно условие: простого чтения недостаточно, выполняйте всё шаг за шагом и, ради текстолита всевышнего, не копируйте код -- пишите ручками, не ленитесь! Даже если Вы чего-то не поняли -- не копируйте. Перепишите. Понимание к Вам придёт, уверяю Вас.
Первый урок будет вводным и, вопреки расхожему мнению. он является одним из самых сложных, т.к. будет немало незнакомых слов. Не пугайтесь. Вам вовсе не нужно учить значения каждого слова. Вы и сами не заметите как усвоите значения каждого пункта к 3-ему, может быть, 4-ому уроку. Самое сложное -- пережить первые два урока.
Со своей стороны обещаю, что постараюсь отвечать на все Ваши вопросы! НО!! Если я увижу, что ошибка исключительно в том, что Вы ленитесь и бездумно копируете код -- буду показывать где именно Вы поленились, а не объяснять, что значит ошибка.


И так, начнём!

Работать будем в Android Studio
сразу отвечу возможным критикам: данные статьи нацелены на обучение людей, так что не нужно тут писать про альтернативные среды, не путайте новичков. Если Вы считаете, что абсолютному новичку проще пользоваться другой средой -- напишите статью об этом, и мнение своё выразите, форуму поможете и репутацию поднимите
Как и в любом деле -- для начала нужно подготовить всё необходимое.
1.
В данном курсе мы будем опираться на Java, т.к. Kotlin слишком свеж и статей в интернете намного больше написано на Java, однако, даже если вы собираетесь полагаться на Kotlin -- установить Java придётся в любом случае, т.к. Android Studio не будет работаться нормально без последнего.
Прокручиваем страницу в самый низ. Ставим точку как на скрине

1568738170328.png

и выбираем файл для вашей операционной системы. Если Вы привыкли пользоваться windows -- то, в данном случае не геройствуйте и выбирайте файл для windows (все статьи буду написаны именно из под windows, хоть, отличия и незначительны.
Устанавливает ВСЁ по умолчанию
Во многих уроках говорят о том, что необходимо установить зависимости -- в нашем случае это не понадобится.
ОБЯЗАТЕЛЬНО перезагружаем компьютер.
2. . Во время первого запуска, студия предложит выбрать и загрузить эмулятор. Нажимаем "создать виртуальное устройство"
1568739226767.png

Дальше выбираем устройство на 7-8 android, т.к. андроид 10 сейчас мало у кого есть, а все приложения написанные под ранние версии андроид буду так же отлично работать и на более поздних версиях.

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

Далее выбираем свой эмулятор и жмём "ОК".

Все написанные приложения мы будем тестировать на этой виртуальной машине, но итоговые приложения лучше тестировать на реальном устройстве.
Так же, если ваш компьютер "недостаточно силён" -- можно тестировать всё на реальном устройстве с помощью "отладки по USB" об этом я расскажу чуть позже, в момент первого запуска написанного приложения.



Итак. Вы всё скачали и всё установили. Давай уже напишем наше приложение! Let's do it!

Запускаем студию (в зависимости от того, какая у Вас сборка windows и насколько всё замусорено в реестре есть два варианта:
1.
Нажимаем File -> New -> New Project. Далее пункт "2"
2. Сборка "чистая", либо изменения никак нас не касаются:
Выбираем пункт Phone and Tablet (разработка для телефонов и планшетов) -> "Empty Activity" (это, практически, пустая заготовка для приложения. Пока что принимайте все наставления как данность, со временем мы вместе со всем разберёмся)
1568740968096.png

-> Next

В следующем окне задаём:
1. Имя для нашего проекта. (рекомендую указать так же как у меня, после того, как приложение будет готово -- вы всегда сможете поэксперементировать)
2. Место хранения
3. Язык (выбираем только Java)
4. Поддерживаемая версия андроид (чем старше версию вы выберите -- тем больше устройств будут поддерживать ваше приложение. Я рекомендую выбирать android 5.0)
в данном пунке указывается сайт издателя приложения, в Java он пишется наоборот, поэтому доменная зона указана в начале. Используя стандартные данные выложить приложение в плей маркет не получится, т.к. "com.example" занят, но, пока что мы ничего не будем менять, т.к. нам важно понять все процессы. А установить приложение на наш телефон мы и так сможем
Далее жмём "finish"

1568741624786.png


После создания проекта не торопитесь -- дайте студии всё прогрузить. В месте, указнном на скрине должны быть все зелёные галочки и открыться две вкладки.
1568742199334.png
1568742285160.png



Вкладка Android содержит две основные папки: "app" и "Gradle Scripts". Вторая папка для различных настроек. Долгое время на неё мы вообще не будем обращать внимания. Папка "app" -- наше всё, она содержит все необходимые ресурсы (код, изображения, звуки и прочее), раскроем её, если она не раскрыта.
1. manifests - хранит единственный файл (AndroidManifest.xml) в нём объявлены все службы и активности, а так же разрешения (именно этот файл определяет, на что приложению нужен доступ
2. java - содержит рабочую папку и две для тестов (как ни странно, папки для тестов мы трогать не будем). Рабочая папка должна иметь название Вашего проекта и содержать файл MainActivity
3. res - содержит все ресурсы нашего приложения (изображения, карты, аудио и прочее)
drawable папка с изображениями и xml-файлами связанными с цветом и фигурами
layout собрала в себе xml-файлы отвечающие за внешний вид форм и разных элементов (там уже есть файл activity_main.xml, он отвечает за внешний вид главного окна приложения.
mipmap в основном хранит значки и иконки под разное разрешение экранов
values разместил в себе ресурсы цветов, стилей и тем.

По умолчанию в чистом проекте уже есть некоторый код. Он включает в себя и известный текст "Hello World". На самом деле этот код уже можно запустить, пусть он ничего и не выполняет, кроме вывода текста на экран. Давайте ничего не будем менять и сразу запустим эту программу, за одно разберёмся с эмулятором или тем, как запустить программу на телефоне\\

1.
Для запуска на эмуляторе достаточно выбрать установленный эмулятор и нажать зелёный треугольник или сочетание клавиш "Shift+F10"
1568744686477.png
2.
Для зупуска приложения напряму на устройстве -- Вам необходимо:
2.1.1. включить режим отладки по USB
заходим в настройки -> информация о телефоне -> пролистываем в самый низ и находим пункт "версия сборки" -> нажимаем на строчку 7 раз, после чего в настройках появится пункт "для разработчиков" входим в него и включаем "отладка по USB", для удобства разработки можно так же отключить выключение экрана во время зарядки.
2.1.2. установить все соответствующие драйвера. Для этого подключите устройство к Вашему компьютеру и установите всё, что оно предлагает. Далее отключите устройство от компьютера и поочерёдно подключите его в Fast Boot и Flash Boot режиме, так же установите драйвера для обнаруженных устройств (скачать ADB драйвер для вашего устройства можно по пролистайте вниз страницы и выбирите производителя своего устройства. После снова подключите телефон в обычном режиме.
2.2. После этого в списке устройств появится ваше устройство. Выбирайте его и нажимайте зелёный треугольник.


1568752612198.png

Дайте студии всё прогрузить (на слабых машинах до 5 минут) и вы увидите запущенное приложение!
На данном этапе, думаю, стоит закончить первый урок. Пусть в нём мы, лишь только, всё подготовили, но полученной информации итак немало. Так что можете смело пойти отдохнуть, т.к. уверяю Вас. Уже до этого момента многие бросили затею ;-)

Продолжить изучение курса >
 
Посмотри в SDK manager, возможно ты его недоустанавливал.
Если ОЗУ меньше 8 гб, то лучше пользоваться реальным устройством, так как эмулятор будет тормозить.
всё сделал как у тебя ,не помогло ,также тупит и выводит неизвестный эмулятор
 

Вложения

  • Studio.jpg
    Studio.jpg
    206,3 КБ · Просмотры: 340
в какой то не понятной кодировке

А можешь показать код ошибки? Или что там он пишет.
может из за проги какой конфликтует? у меня NOX стоит тоже эмулятор андр,может с его дровами тёрки какие?..ща удалю проверю
 

Вложения

  • Studio.jpg
    Studio.jpg
    176,8 КБ · Просмотры: 384
Прошу прощения, сдохла видеокарта на единственном ноутбуке. Подумал, что для старичка брать новую нет смысла, было решено брать новый ноут, а с работы статью писать было не вариант. Ноутбук взял, завтра к вечеру по МСК выложу продолжение!

студию установил без ошибок,но при загрузке на эмуляторе не открывается, долго думает,выскакивают ошибки,наконец открывается,но как неизвестное ус-во,хотя устройство загружено,..может есть у кого похожая проблема?
Выбери Pixel 3XL!
В твоём случае unknow device это какое-то usb устройство (может быть даже флэш шкаф на ноутбуке)
 
в какой то не понятной кодировке


может из за проги какой конфликтует? у меня NOX стоит тоже эмулятор андр,может с его дровами тёрки какие?..ща удалю проверю
У тебя в списке есть устройство Pixel 3XL. Больше ничего не устанавливай, просто выбери его и запусти ;-)
 
Приветствую. Возникла следующая проблема с уроком 1. Всё загрузилось замечательно андрои- студио выглядит так: Но после попытки запуска эмулятора выдаёт следующее-
23:00 Gradle build finished in 2 m 21 s 144 ms

23:06 Executing tasks: [:app:assembleDebug] in project D:\AndroidStudioProjekts

23:06 Gradle build finished in 26 s 318 ms
Emulator: Warning: Quick Boot / Snapshots not supported on this machine. A CPU with EPT + UG features is currently needed. We will address this in a future release.
23:00 Сборка Gradle завершена за 2 м 21 с 144 мс

23:06 Выполнение задач: [: app: assemblyDebug] в проекте D: \ AndroidStudioProjekts

23:06 Сборка Gradle завершена за 26 с 318 мс
Эмулятор: Предупреждение: быстрая загрузка / моментальные снимки не поддерживаются на этом аппарате. В настоящее время требуется процессор с функциями EPT + UG. Мы рассмотрим это в будущем выпуске.
Вообщем я понимаю, чо ничего не работает, а что делать непонятно. Простите если очень сильно туплю, но пишу как есть...

1571774711814.png
 
23:08 Emulator: Warning: Quick Boot / Snapshots not supported on this machine. A CPU with EPT + UG features is currently needed. We will address this in a future release.

23:09 Emulator: deleteSnapshot: for default_boot

23:09 Emulator: Process finished with exit code 0

23:08 Эмулятор: Предупреждение: быстрая загрузка / моментальные снимки не поддерживаются на этом компьютере. В настоящее время требуется процессор с функциями EPT + UG. Мы рассмотрим это в будущем выпуске.

23:09 Эмулятор: deleteSnapshot: для default_boot

23:09 Эмулятор: процесс завершен с кодом выхода 0
Продолжение банкета...
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!