sonyps4.ru

Как создать мобильное приложение самому. Как создать мобильное приложение для Аndroid самостоятельно

В наши дни разработка приложений под Android - это одна из наиболее перспективных областей ведения бизнеса, построения карьеры. Можно работать в офисе, можно - удаленно, а можно и вовсе быть «свободным художником», получая и сдавая заказы через Интернет, здесь же получая заработную плату. Если выбрать для себя разработку приложений под Android, можно работать хоть на мальдивском пляже - мечта, да и только! Правда, к этому нужно уметь прийти, добиться этого, ведь не каждый может стать разработчиком. Возможна ли такая карьера с нуля и как ее правильно начать?

Программирование - это интересно

Чтобы создать хорошее приложение, нужно разбираться и в той платформе, для которой оно предназначается, и в ресурсах, которые необходимо реализовать в проекте. Конечно же, нужно в совершенстве обладать всеми инструментами в выбранной сфере программирования, чтобы код был качественным, чистым, без ошибок, недочетов и «букашек». Зачастую новички спрашивают: «Что нужно для разработки приложений под Android?». В первую очередь - общие представления о правилах программирования, а также особенностях выбранной операционной системы.

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

Начинаем правильно

Начинается разработка приложений под Android с изучения ООП - объектно-ориентированных языков программирования. При этом владеть ими нужно не на уровне общего представления, а глубоко, чтобы разрабатывать качественный код. Этот навык необходим любому программисту, не важно, под какую платформу он собирается писать.

Высокое значение языка программирования - базовая способность для разработки приложений под Android. В совершенстве владея техническим языком, можно включиться в сложный проект, взять на себя задачи тим-лидера и (закономерно!) получать большое финансовое вознаграждение за труды. А вот человеку, только-только начинающему с ООП, рассчитывать на существенные деньги не приходится. Впрочем, и ответственность на него обычно возложена несерьезная.

Читать - не перечитать!

Чтобы освоить разработку мобильных приложений под Android, iOS, необходимо начать с освоения логики технического языка. На помощь приходят специализированные издания, созданные профессионалами специально для новичков. Обычно они называются «Разработка для чайников», «Введение в основы», «Разработка мобильных приложений под Android: уровень 1» или наподобие. Придется очень внимательно изучить выбранное издание (скорее всего, не одно), чтобы освоить самые базовые понятия, логику технического языка. Эти книги формируют у начинающего программиста представление о процессе разработки ПО в общих чертах.

Следующий шаг - это более глубокое погружение в среду. В магазинах можно найти большое разнообразие книг а-ля «Разработка мобильных приложений под Android: уровень 2», «Программирование для продолжающих» и «Как начать писать свои приложения?». Чем больше литературы удастся изучить, освоить, понять, тем эффективнее получится работать.

На чем пишем?

С чего начать разработку приложений под Android? Как говорят опытные программисты, для начала нужно понять, с каким языком программирования проще и легче работать, что больше подходит для воплощения в жизнь поставленных перед новичком задач. В настоящее время активно используются Java, C++, Visual C#. Преимущественно останавливаются на «Джаве» как оптимальном варианте для создания разнообразного софта - вплоть до довольно интересных игр. Важное преимущество этого языка - возможность реализации кроссплатформенных приложений, то есть таких, которые одновременно могут функционировать под разными ОС. Да и, как известно, зарабатывают на разработке приложений под Android больше всех те, чьи приложения на этапе публикации подходят не только для этой ОС, но и iOS, Windows Phone. С другой стороны, воплотить в жизнь такой проект будет посложнее, чем под одну платформу.

Если через книги разработку приложений под Android Eclips было решено осваивать с использованием языка программирования Visual C#, тогда можно рассчитывать на поддержку мирового сообщества программистов. Дело в том, что специалистами были созданы огромные базы данных, библиотеки, содержащие дополнительное программное обеспечение. Это означает, что программист пишет код так, как ему удобнее, а специальные алгоритмы перевода позволяют перекодировать результат в инструкции конкретной операционной системы.

С чего начать?

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

  • Среда разработки.
  • Эмулятор ОС.
  • Сборщик кода.

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

Новейшие технологии для нового проекта

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

В то же время разработка мобильных приложений под Android - это не гонка вооружений, нет необходимости постоянно осваивать новинки мира программирования, толком не разобравшись с тем, что было выпущено, изобретено, сконструировано ранее. Новичкам лучше писать приложения, пользуясь теми новыми решениями, к которым уже есть обучающий материал, накоплен опыт решения проблем, возникающих при работе в среде программирования. Многие начинающие программисты нуждаются в подсказке и совете, и по самым передовым технологиям получить их зачастую просто неоткуда. Но и пренебрегать новыми изданиями тоже нельзя - важно отслеживать веяния в выбранной сфере, чтобы успешно прогнозировать, на что будет спрос на рынке программирования в ближайшем и отдаленном будущем. Это позволит задать для себя правильный курс совершенствования в качестве программиста приложений.

Инструментарий - первая необходимость

Невозможно представить себе плотника без молотка, строителя без мастерка и водителя без машины. Точно так же и программист не может работать без среды разработки. Есть несколько вариантов, нет универсального рецепта по выбору оптимального для себя. Чаще всего прибегают к вариантам «Эклипс» (разработка «Нетбинс») и «Визуал Студио» (авторство «Майкрософт»). Есть и пакеты помельче, имеющие свои положительные и отрицательные стороны. Чтобы понять, где работать легче, а процесс получается более продуктивным, стоит попробовать сначала два самых известных варианта, а затем - другие, более экзотические, если первые два не подходят.

Определившись со средой программирования, приступают к выбору эмулятора "Андроид". Это такое программное решение, в котором можно быстро посмотреть, что уже запрограммировано, насколько это успешно работает, какие ошибки выдает. Словом, эмулятор позволяет увидеть промежуточный результат работы. Эмулятором называют надстройку среды, в которой ведется программирование. Он предназначается для тестирования и показывает, как приложение поведет себя, если будет поставлено на реальный девайс под управлением ОС "Андроид". Основное преимущество эмулятора - защищенность устройства при крахе приложения. Если что-то запрограммировано ошибочно, система оповестит об этом, но техника не пострадает. Как говорят профессионалы в своей области, для новичков особенно важно освоить использование эмулятора, чтобы не рисковать рабочей техникой без необходимости.

А нужно ли мне это?

Уже из описанного (а это лишь верхушка айсберга под названием «Разработка мобильных приложений») у многих новичков может возникнуть впечатление, что «овчинка выделки не стоит», проще говоря, слишком много усилий нужно приложить, да и сама работа слишком сложна, поэтому не стоит даже и браться за нее. Но на самом деле все совсем не так. Действительно, начать писать хорошие приложения непросто, зато результат того стоит.

В настоящее время спрос на профессионалов в области программирования мобильных приложений растет изо дня в день. Это связано и с распространением смартфонов, и с политикой крупных компаний («Гугл», «Майкрософт»), поощряющих лучших разработчиков. Став действительно высококлассным профессионалом, можно попытаться попасть в штат даже этих всемирно известных фирм! Но для этого нужно приложить усилия и начинать нужно уже сейчас. Впрочем, если говорить о реальных перспективах, то тут лучше вспомнить о тенденции последних лет - почти каждая более-менее крупная фирма хочет иметь собственное мобильное приложение, так как считается, что это позволяет удержать клиента. Должен же кто-то разрабатывать эти приложения! А потом обновлять их, поддерживать, улучшать. Словом, работы непочатый край, если уметь делать свое дело.

Задачи специфические, требования общие

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

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

Стабильность и развитие

Как показывают проведённые исследования, преимущественно разработчики выбирают наиболее удобную для себя среду программирования и в будущем все время работают в ней, отслеживая все новейшие тенденции, методики и инструменты, словом, не распыляются. Во многом, из-за такого подхода многие считают, будто бы слова Android и Eclipse являются синонимами, ведь чаще всего именно к «Эклипс» прибегают, когда пишут приложения для "Андроид". Студия «Нетбинс» создала уникальный программный инструмент, подходящий для совсем небольших и очень крупных, масштабных проектов. Его универсальность и спровоцировала такую популярность.

Привет, мир!

Разработка программного обеспечения для смартфонов, управляемых ОС "Андроид", - это не просто создание заглавной странички с приветствием. Это довольно большой объем работ по проектированию, оформлению, программированию, продвижению и сопровождению объекта. При этом надежный исполнитель всегда заранее оговаривает сроки, к которым работу нужно завершить, и тщательно их придерживается. Конечно, если предупредить, что фирма-заказчик имеет дело с новичком, возможно, просрочки будут прощены, но это губит репутацию.

Чтобы не столкнуться с неприятными последствиями собственной непунктуальности, необходимо исключить ее с первого рабочего дня. Профессионалы рекомендуют при получении заказа сразу разбить проект на мелкие шаги и по каждому определить временные границы исполнения. Удается опережать установленные рамки - отлично. Наблюдается отставание - значит, нужно работать активнее, больше, продуктивнее. Возможно, нужно обратиться за помощью и советом. Самое важное - не срывать поставленные сроки, ведь это не только испортит карьеру в рамках текущего проекта, но и может стать причиной отказа от сотрудничества в будущем со стороны других потенциальных заказчиков.

Через тернии - к звездам!

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

Помните, что фирменное приложение для любой современной компании является элементом престижа, а значит, задания по разработке подобных проектов будут актуальны довольно долгое время. Это та область, в которую перспективно вкладывать силы, время и средства. В то же время нельзя насиловать себя. Если новичок попробовал программирование под "Андроид" и осознал, что ему эта область не интересна, совершенно непонятна и не дается, стоит попробовать поискать себя в чем-то еще. Программирование требует специфической системы мышления, и она, действительно, дана не всякому. Поэтому главное - не сдаваться и продолжать искать свое призвание.

У вас есть идея по созданию мобильного приложения, но сомневаетесь, хватит ли вам знаний и навыков, чтобы его создать? Даже если вы ничего не понимаете в создании мобильных приложений, вы все равно можете его создать и даже заработать на этом.

Идея

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

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

Много известных приложений не сосредоточены вокруг особых интересов, но они всегда в первых тройках рейтингов – это игры. Вы, наверное, уже загрузили в свой смартфон – Temple Run, Minecraft. Игровые приложения имеют тенденцию зарабатывать больше денег, поскольку пользователи охотнее готовы платить за них, особенно если они очень популярны среди ваших друзей.

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

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

Вот некоторые важные моменты, которые необходимо учитывать пока вы размышляете над вашим приложением:

Варианты монетизации

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

  • Бесплатное приложение. Обычно используется крупными компаниями, и приложение помогает продавать их товары или услуги.
  • Бесплатное приложение с рекламой. Используется в популярных приложениях, активно взаимодействующих с пользователем
  • Платное приложение. Самый популярный и доходный вид монетизации. С каждой продажи вашего приложения Apple берет комиссию в размере 30%.
  • Lite и Pro. Lite приложение бесплатно, но с ограниченным набором функций. Покупая Pro вы разблокируете весь функционал
  • Покупки внутри приложения - вы можете продавать новый функционал или новые уровни игры прямо из приложения

Разработка

Теперь у вас есть идея. Здорово, это уже полдела! Но что теперь? Мы предполагаем, что у вас, как и большинства людей, нет никакого опыта в программировании. И это прекрасно! Есть куча вариантов.

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

Хороший список отечественных разработчиков можно посмотреть здесь – ratingruneta .

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

Вот несколько вопросов, которые стоит задать вашему будущему разработчику:

Стоимость их работы?

На кого они работали в прошлом?

Являются ли их приложения успешными?

Буду ли я обладать всеми правами на приложение?

Есть ли у них опыт и знания, чтобы воплотить вашу идею в жизнь?

Под какие платформы (IOS, Android и т.д.), они могут создавать приложения?

Стоимость разработки

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

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

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

Чтобы приблизительно узнать, сколько будет стоить разработать приложение можно воспользоваться калькулятором howmuchtomakeanapp . Его создала канадская компания ooomf.com. Полученную цену можно смело делить на 2, и вы узнаете цену разработки у нас. Можно посмотреть также примеры уже созданных ими приложений с ценами – crew.co .

Размещение уже готового приложения на App store обойдется вам $99.9 в год. Размещение приложения на Android Market стоит $25.

Как создать приложение бесплатно

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

Сколько можно заработать?

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

Исследование, проведенное в GigaOM Pro показало, что более половины их 352 опрошенных разработчиков зарабатывают менее $500 в месяц.

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

Конечно, вы можете сделать еще один хит на подобии Angry Birds, которые будут зарабатывать для вас $100 000 в месяц!

Для того чтобы хорошо зарабатывать на своем приложении, прочтите несколько советов:

  • ваше приложение должно быть интересно широкой аудитории
  • исследуйте самые популярные приложения на рынке
  • Оцените статью Проголосовало: 1152 Средняя оценка: 3.3

    Этот урок научит вас основам того как написать приложение для Android используя среду разработки Android Studio. Устройства Андроид становятся всё более распространенными, спрос на новые приложение все время только увеличивается. Android Studio бесплатная, простая в использовании среда разработки.

    Для этого урока лучше всего, если у вас есть хотя бы поверхностные знания языка Java так как это язык используемый Android. В уроке не будет слишком много кода так как я исхожу из того что вы немного знакомы с Java или готовы найти то что вы еще не знаете. Создание приложения займет 30-60 минут, зависит от того как быстро вы скачаете и установите все необходимые программы. После знакомства с этим уроком по созданию своего первого приложения для Андроид, возможно вы найдете себе новое веселое хобби или даже начнете карьеру многообещающего разработчика мобильных приложений.

    Этап 1: Устанавливаем Android Studio

    1. Необходимо установить JDK (Java Development Kit ) и JRE (Java Runtime Environment). Скачать можно по этой ссылке . Выбираете там версию для вашей ОС, принимаете лицензионное соглашение, скачиваете и устанавливаете.
    2. Теперь идем сюда http://developer.android.com/sdk/index.html и скачиваем (осторожно, придется скачать около 3 гигабайт).
    3. Запускаем установку и следуем инструкциям.

    Этап 2: Создаем новый проект

    1. Откройте Android Studio.
    2. В меню «Quick Start », выберите «Start a new Android Studio project ».
    3. В окне «Create New Project » (окно которое открылось), назовите ваш проект «HelloWorld ».
    4. Название компании по желанию.*
    5. Нажмите «Next ».
    6. Убедитесь, что галочка стоит только на «Phone and Tablet ».
    7. Если вы планируете тестировать своё первое приложение на вашем телефоне, то убедитесь, что выбрана правильная версия Андроид (не старше той, что на телефоне).
    8. Нажмите «Next ».
    9. Выберите «Blank Activity ».
    10. Нажмите «Next ».
    11. Оставьте все остальные поля как они есть.
    12. Нажмите «Finish ».

    *Типовое название компаний для андроид проектов «example.name.here.com».

    Этап 3: Редактируем приветствие

    1. Перейдите на вкладку activity _main .xml , скорее всего она уже активна.
    2. Убедитесь, что внизу экрана активна вкладка Design (скорее всего это так).
    3. Перетащите мышкой фразу «Hello , World ! » из левого верхнего угла телефона в центр экрана.
    4. В левой части экрана находится дерево папок. Откройте папку под названием «values ».
    5. В этой папке дважды щелкните на файл «strings .xml ».
    6. В этом файле найдите строчку содержащую текст «Hello world! » и добавьте к этому тексту «Welcome to my app ! ».
    7. Вернитесь на вкладку «activity _main .xml ».
    8. Убедитесь, что ваш текст находится по центру экрана телефона и содержит текст «Hello world ! Welcome to my app ! ».

    Этап 4: Добавляем Кнопку

    1. На вкладке «activity _main .xml » выберите внизу вкладку «Design ».
    2. В колонке слева от окна, где находится телефон, найдите папку под названием «Widgets ». Там находятся различные кнопки.
    3. Возьмите кнопку «Button » и перетащите её на экран телефона. Она должна находиться по центру экрана прямо под вашим текстом.
    4. Убедитесь, что кнопка все еще выбрана (синяя рамка вокруг неё).
    5. В нижнем правом углу есть окошко со свойствами выбранного объекта. Промотайте вниз и найдите строчку под названием «text ».
    6. Поменяйте текст «New Button » на «Next Page ».

    Этап 5: Создаём Second Activity

    1. В верхней части дерева файловой системы проекта, щелкните правой кнопкой мыши на папке под названием «app ».
    2. Выберите New > Activity > Blank Activity .
    3. В появившемся окне в верхней строчке введите «SecondActivity ».
    4. Нажмите «Finish ».
    5. Перейдите на вкладку «activity _second .xml » и убедитесь, что внизу выбрана вкладка «Design ».
    6. Переместите текст из верхнего левого угла телефона в центр экрана, как мы делали на предыдущих шагах.
    7. Убедитесь, что текстовый блок все еще выбран (синяя рамка) и в нижнем правом углу свойств объекта найдите строчку «id » и введите туда «text 2 ».
    8. В верхнем левом углу (в дереве проекта) снова выберете двойным нажатием «strings .xml ».
    9. Под строчкой Hello world! Welcome to my app!

      добавьте следующую строку

      Welcome to the second page!

    10. Вернитесь на вкладку «activity_second.xml ».
    11. Снова выберите текстовый блок.
    12. В нижнем правом углу в свойствах объекта найдите строчку «text » и введите туда «@ string /second _page ».
    13. Убедитесь что в текстовом поле теперь написано «Welcome to the second page ! » и блог располагается в центре экрана.

    Этап 6: Прописываем действие для кнопки


    Этап 7: Тестируем приложение

    1. На панели инструментов в верхней части окна Android Studio нажмите на зеленый символ воспроизведения.
    2. В окне «Choose Device » выберите пункт «Launch emulator » и выберете устройство.
    3. Нажмите на кнопку «OK ».
    4. Когда эмулятор запустится (это может занять длительное время) приложение автоматически откроется на виртуальном устройстве.
    5. Убедитесь что весь текст отображается правильно и нажатие на кнопку приводит вас к следующей странице.

    Внимание : Если вы получаете сообщение «HAX kernel module is not installed! », то тут возможны два варианта. Дело в том, что данную виртуализацию поддерживают лишь современные процессоры Intel и вам необходимо лишь включить её в BIOS. Если же у вас процессор, который не поддерживает данную функцию, вам придется протестировать приложение на реальном телефоне или воспользоваться не встроенным, а сторонним эмулятором.

    Как получить файл.apk в Android Studio

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

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

    Этап 8: Результат

    Поздравляю! Вы только что завершили написание своего первого Android-приложения с некоторыми основными функциональными возможностями. Готовое приложение должно иметь страницу приветствия пользователя и кнопку, которая приведет пользователя на вторую страницу.

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

    Разработка мобильного программного обеспечения может стать интересным и полезным занятием. В этой статье мы расскажем, как создать приложение для Android .

    Android Studio

    Чтобы написать приложение, нужно будет загрузить и установить Android Studio . В комплект поставки входит пакет разработки программного обеспечения со всеми библиотеками и кодами Android , необходимыми для разработки приложения. А также эмулятор Android , позволяющий сначала протестировать приложение на своем ПК, не устанавливая его на реальном мобильном устройстве.

    Но сначала нужно загрузить и установить Java Development Kit (JDK ) от Oracle . Найдите раздел «Java SE Development Kit 7u79 » и загрузите версию для своего ПК. Важно загрузить правильную версию (32-разрядную или 64-разрядную ), иначе Android Studio не сможет найти Java Runtime Environment (JRE ).

    Примечание: Oracle не будет публиковать на своих общедоступных сайтах какие-либо обновления Java SE 7 , и предполагается, что пользователи массово перейдут на Java 8 . Но в настоящий момент Android Studio требует наличия Java 7 . Это может измениться в будущем.

    После того, как вы установили JDK , нужно инсталлировать Android Studio . Во время установки необходимо указать, сколько памяти зарезервировать для эмулятора Android . Он запускает Android в виде виртуальной машины, как смартфон с процессором Intel . Это быстрее, чем эмуляция процессора ARM на ПК. Но для запуска этой виртуальной машины эмулятор должен выделить некоторый объем памяти. Но перед тем как создать приложение для Андроид самому, имейте в виду, что сочетание Android Studio , Java и эмулятора будет довольно ресурсоемким, и компьютер может подтормаживать.

    Google говорит, что необходимо как минимум 2 ГБ оперативной памяти, а рекомендуется 4 ГБ. Но мой основной ПК имеет 8 ГБ, и все равно иногда тормозит:

    При первом запуске Android Studio выполнит первичную инициализацию, включающую в себя загрузку и установку актуальной версии Android SDK . Это может занять несколько минут.

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

    Создаем новый проект

    Нажмите «Start a new Android Studio project » и введите название своего приложения в поле «Application name ». В поле «Company Domain » введите официальный домен вашей компании. Если вы независимый разработчик или любитель, введите собственный домен. Если вы просто экспериментируете с Android и не собираетесь в ближайшее время публиковать свои приложения в Google Play , просто оставьте пример домена, только измените «user » на ваше имя (без пробелов ):


    В следующем диалоговом окне проверьте, чтобы у вас выбрана опция «Phone and Tablet », а для «Minimum SDK » установлено — API 15: Android 4.0.3. Для опций «Wear » и «TV » флажки не должны быть установлены.

    В диалоговом окне «Add an activity to Mobile » оставьте значение по умолчанию «Blank Activity » и нажмите «Next ». В диалоговом окне «Customize the Activity » оставьте все значения и нажмите «Finish »:


    Интегрированная среда разработки (IDE ) запущена. Это может занять несколько минут (особенно, если вы впервые создали проект ). Если при запуске IDE увидите сообщение об ошибке «Rendering Problems: Rendering failed with known bug », нажмите ссылку «rebuild », которая отображается рядом с сообщением об ошибке.

    По умолчанию, рабочее пространство среды IDE делится на три основные части (не считая панели инструментов и т. д. ). Слева сверху находится дерево проекта. Справа от него — редактор кода, а под ними сообщения.

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

    Дерево проекта

    Дерево проекта содержит все файлы и ресурсы, необходимые для создания Android-приложения . Если вы знакомы с написанием простых программ на Java , C , Python и т. д., то могли бы подумать, что все будет содержаться только в одном или двух файлах. Но разработка Android-приложений немного сложнее:


    В узле «app » дерева проектов содержится несколько узлов (например, папки ), которые можно развернуть. Узлами верхнего уровня являются “manifests ”, “java ” и “res ”. Последний — это сокращение от “resources ”.

    В “manifests ” располагается файл «AndroidManifest.xml », каждое приложение должно содержать его. Это XML-файл с информацией о приложении, включая его название. Часто добавляемым в этот файл элементом является список разрешений, необходимых для приложения. Для этого простого приложения не нужно здесь ничего менять.

    В разделе «java » располагается Java-код приложения. Он будет находиться в подкаталоге, с именем com.example.user.myfirstapp . Это имя домена компании, которое вы ввели ранее, только наоборот, плюс название приложения. В этой папке находится файл MainActivity.java . Это точка входа в приложение и единственный файл Java , который нам понадобится.

    Продолжаем создавать простое приложение для Андроид . В разделе «res » есть несколько папок для графики, меню и элементов пользовательского интерфейса. Нас интересуют «layout » и «values ». В папке «layout » находится файл под названием «activity_main.xml ». Это XML-файл , описывающий пользовательский интерфейс. Редактировать его можно двумя способами. Первый — непосредственное редактирование XML-кода , второй — использование встроенного дизайнера пользовательского интерфейса:


    В папке «values » содержатся несколько XML-файлов . В данный момент наиболее важным для нас является strings.xml . Вместо того чтобы задавать в Java-коде строковые значения их принято помещать в файл «strings.xml », и мы можем ссылаться на них через идентификаторы. Преимущество заключается в том, что если строка используется несколько раз, ее можно изменить только один раз, и изменения вступят в силу во всех местах. Это также упрощает поддержку нескольких языков в приложении.

    Чтобы создать приложение для Андроид самому, нужно будет изменить файлы MainActivity.java , activity_main.xml и strings.xml .

    Написание приложения

    Для нашего примера мы добавим кнопку с меткой «Tap Me! », изменим приветствие по умолчанию «Hello world! » на «Tap me if you dare! ». А также поменяем его, чтобы оно находилась в центре. И добавим код, чтобы при нажатии кнопки отображался текст «toast »!

    Начнем с изменения текста приветствия и его выравнивания. Сначала найдите в дереве проекта файл «activity_main.xml » и дважды кликните по нему. Помните, что «activity_main.xml » — это файл, который содержит определение пользовательского интерфейса. В нижней части окна кода есть две вкладки: «Design » и «Text ». Перейдите на вкладку «Design ».

    Теперь нажмите на текст «Hello world! », который показан в окне предварительного просмотра экрана смартфона. Если он слишком мал, используйте кнопку масштабирования (лупа со значком «плюс» ).

    В окне свойств, расположенном справа от изображения телефона, прокрутите экран вниз до тех пор, пока не найдете надпись «layout: centerInParent ». Кликните по пробелу рядом с ней и выберите «horizontal ». После этого текст «Hello world! » переместится в центр:


    Перед тем, как создать приложение для Android без навыков, изменим текст. Строка «Hello world! » хранится в файле «strings.xml » в разделе res-> values . Если вы дважды кликните по этому файлу, то увидите несколько строк XML , которые определяют строки, используемые приложением.

    Найдите эту строку:

    XMLSELECT ALL XMLSELECT ALL Hello world!

    И измените ее на:

    CSSELECT ALL CSSELECT ALL Tap me if you dare!

    Мы изменили выравнивание приветствия и его текст. Теперь добавим кнопку. Вернитесь на вкладку «Design » файла «activity_main.xml », найдите в списке «Palette » слева от изображения смартфона пункт «Button » и нажмите на него. Теперь кликните где-нибудь под надписью «Tap me if you dare! ».

    Дважды кликните по кнопке, чтобы изменить ее текст. В конце поля “text: ” расположена кнопка с тремя точками, нажмите на нее. В окне «Resources » нажмите «New Resource », а затем «New String Value… ». В поле «Resource name: » введите «tapme », а в поле «Resource value: » — “Tap me! ”. Затем нажмите «ОК ». Теперь у нас есть кнопка “Tap me! ”.

    Последний шаг создания простого приложения для Андроид — добавить Java-код , который реагирует на нажатие кнопки. Один из элементов пользовательского интерфейса Android — это “toast. ”. Он предоставляет простое сообщение в небольшом всплывающем окне. Вы, несомненно, видели это. Например, в Gmail при выходе из электронной почты до отправки письма выводится сообщение «Сообщение сохранено в черновики ». Спустя определенное время оно исчезает.

    Для нашего примера приложения мы будем отображать сообщение каждый раз, когда нажимается кнопка. Первым шагом является добавление Java-кода . Найдите файл «MainActivity.java » и добавьте следующий код в «onCreate «:

    JAVASELECT ALL JAVASELECT ALL public void onButtonTap(View v) { Toast myToast = Toast.makeText(getApplicationContext(), "Ouch!", Toast.LENGTH_LONG); myToast.show(); }

    Слово «View » во фразе «(View v )» будет красным, рядом с ним отображается сообщение, что вы использовали новую конструкцию (View ), не импортируя ее в разделе импорта, в верхней части Java-кода . Это легко исправить. Нажмите на слово «View », а затем ALT + ENTER . Если слово “Toast ” отмечено красным цветом, проделайте то же самое еще раз:


    Вернитесь в раздел конструктора файла «activity_main.xml », нажмите кнопку и прокрутите список свойств до пункта «onClick ». Нажмите на поле справа, и на экране появится список функций. Кликните по «onButtonTap », это функция, которую мы только что добавили.

    Теперь функция onButtonTap() будет вызываться всякий раз, когда будет нажиматься кнопка. Чтобы вывести сообщение, мы вызываем myToast.show() .

    Вот и все, что касается создания приложения для Андроид самому, теперь протестируем его в эмуляторе.

    Построение и тестирование приложения

    В меню «Tools » перейдите к Android- AVD Manager . Этот инструмент отображает список текущих настроенных виртуальных Android-устройств . У вас будет одно устройство, настроенное по умолчанию, возможно, Nexus 5 . Нажмите на значок воспроизведения (треугольник ) в столбце «actions ». Это запустит эмулятор.

    Учтите, что студия постоянно обновляется, поэтому внешний вид окон и другие детали могут отличаться от данного примера. Большинство уроков на сайте сейчас используют версию 2.3. 25 октября 2017 года вышла версия 3.0, в которой многое поменялось. В этой статье я постарался заменить все картинки под новую версию.

    В качестве языка программирования для Android используется Java. Для создания пользовательского интерфейса используется XML.

    Здесь следует сделать небольшое отступление. В Android Studio 3.0 добавлена полноценная поддержка нового языка Kotlin, разработанная котанами. Google объявила о своих планах сделать новый "кошачий" язык основным. Но вы должны понимать, что за предыдущие годы было написано огромное количество примеров на Java. Если вы новичок в программировании, то лучше в первый период обучения полностью сосредоточиться на Java, вам будет проще находить ответы на вопросы. Kotlin от вас никуда не денется, перейти потом на него будет проще, а вот обратный процесс будет проходить тяжелее. Когда немного освоитесь в Java, то можете параллельно изучать примеры на Kotlin. Google сейчас активно переписывает документацию под Kotlin, но до полного перехода ещё далеко, даже меньше 50%. Чуть позже я также буду делать уроки под Kotlin, но это будет не скоро.

    По традиции, заложенной в прошлом веке, каждый программист должен был написать «Hello World!» (Здравствуй, Мир!) в качестве первой программы. Времена меняются, и программа «Hello World!» уже встроена в среду разработки под Android в целях совместимости, а современные программисты должны писать программу Hello Kitty! (Привет, киска!). Согласитесь, что здороваться с котёнком имеет больше здравого смысла, чем с каким-то миром.

    Поэтому разобьём задачу на две части. Сначала запустим готовую программу без написания кода, чтобы убедиться, что весь инструментарий корректно установился, и мы можем создавать и отлаживать программы. А потом уже напишем свою первую программу.

    Создание нового проекта

    Запускаем Студию и выбираем File | New | New Project... . Появится диалоговое окно мастера.

    Поле Application name - понятное имя для приложения, которое будет отображаться в заголовке приложения. По умолчанию у вас уже может быть My Application . Заменим на . В принципе вы могли написать здесь и Здравствуй, мир! , но у Android есть замечательная возможность выводить нужные строки на телефонах с разными языками. Скажем, у американца на телефоне появится надпись на английском, а у русского - на русском. Поэтому в первоначальных настройках всегда используются английские варианты, а локализованные строки подготовите позже. Необходимо сразу вырабатывать привычку к правильному коду.

    Поле Company Domain служит для указания вашего сайта. По умолчанию там может появиться ваше имя как пользователя компьютера. Если сайт у вас есть, то можете ввести его адрес, либо придумайте какое-нибудь название. Введённое имя запоминается и будет автоматически подставляться в следующих новых проектах. Экономия, однако.

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

    Поле Package name формирует специальный Java-пакет на основе вашего имени из предыдущего поля. В Java используется перевёрнутый вариант для наименования пакетов, поэтому сначала идёт ru , а потом уже название сайта. Пакет служит для уникальной идентификации вашего приложения, когда вы будете его распространять. Если сто человек напишет сто приложений с названием "Cat", то будет непонятно, где приложение, написанное разработчиком Василием Котовым. А приложение с именем пакета ru.vaskakotov.cat проще найти. Обратите внимание, что Гугл в своей документации использует пакет com.example в демонстрационных целях. Если вы будете просто копировать примеры из документации и в таком виде попытаетесь выложить в Google Play, то у вас ничего не выйдет - это название зарезервировано и запрещено к использованию в магазине приложений. Кнопка Edit позволяет отредактировать подготовленный вариант. Например, вы пишете приложение на заказ и вам нужно использовать имя пакета, утверждённое заказчиком, а не ваш вариант по умолчанию.

    Ниже представлены два варианта для написания программ на C++ и Kotlin. Эти варианты мы пока не рассматриваем. Когда вы будете писать на Kotlin, то ставьте соответствующий флажок. Впрочем, вы можете сконвертировать проект с Java на Kotlin и позже средствами студии.

    Нажимаем на кнопку Next и переходим к следующему окну. Здесь мы выбираем типы устройств, под которые будем разрабатывать своё приложение. В большинстве случае мы будет писать для смартфонов и планшетов, поэтому оставляем флажок у первого пункта. Также вы можете писать приложения для Android TV, Android Wear, Android Auto и Android Things.

    Кроме выбора типа устройств, надо выбрать минимальную версию системы, под которую будет работать приложение. Выберите свой вариант. На данный момент Гугл поддерживает версии, начиная с API 7, выпуская специальные библиотеки совместимости для старых устройств. Но вы можете выбрать более современный вариант. У меня в наличии телефон с минимальной версией Android 4.4, поэтому я выставляю этот вариант.

    java

    Папка java содержит три подпапки - рабочую и для тестов. Рабочая папка имеет название вашего пакета и содержит файлы классов. Сейчас там один класс MainActivity . Папки для тестов можете не трогать. Если вы знаете, как работают пакеты в Java, то можете создавать новые папки и подпапки.

    res

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

    • drawable - в этих папках хранят графические ресурсы - картинки и xml-файлы, описывающие цвет и фигуры.
    • layout - в данной папке содержатся xml-файлы, описывающие внешний вид форм и различных элементов форм. После создания проекта там уже имеется файл activity_main.xml , который отвечает за внешний вид главного окна приложения.
    • mipmap - здесь хранят значки приложения под разные разрешения экрана
    • values - тут размещаются строковые ресурсы, ресурсы цветов, тем, стилей и измерений, которые мы можем использовать в нашем проекте. Здесь вы можете видеть файлы colors.xml , strings.xml , styles.xml . В старых проектах был ещё файл dimens.xml , сейчас от него отказались

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

    Работа с проектом - Здравствуй, Мир!

    Как уже говорилось, программа Hello, World! уже встроена в любой новый проект, поэтому вам даже не нужно ничего писать. Просто нужно запустить проект и получить готовую программу!

    Для изучения вам нужно открыть два файла - MainActivity (скорее всего он уже открыт) и activity_main.xml (res/layout ) в центральной части Студии. Если файлы не открыты, то откройте их самостоятельно двойным щелчком для редактирования (или просмотра). Таким способом вы можете открыть любой нужный вам файл.

    Не будем пока изучать код, а просто нажмём на зелёный треугольник Run (Shift+F10) на панели инструментов в верхней части студии для запуска приложения.

    Если вы не настроили эмулятор, значит вы не читали предыдущий урок. Настройте сначала эмулятор и запускайте проект снова. Либо подключайте реальное устройство.

    Если всё сделали правильно, то в эмуляторе или на устройстве загрузится ваша программа. Поздравляю!

    Итак, если программа запустилась, то увидите окно приложения с надписью . Заголовок у программы будет также . Все эти строки можно найти в файле res/values/strings.xml и отредактировать при желании.

    Теперь посмотрим на код. Сначала изучим activity_main.xml .

    Смотреть его можно в двух режимах - Design и Text .

    Откройте в режиме Text .

    Это новый код шаблона, который появился в Android Studio 2.3 в марте 2017 года. Раньше использовался другой код с RelativeLayout (а ещё раньше и другой код с LinearLayout ). Если вам будут попадаться старые примеры, то в студии есть контекстное меню, которое поможет сконвертировать старый код в новый.

    Немного о XML-коде. Имеется специальный контейнер ConstraintLayout , в котором размещён компонент TextView , предназначенный для вывода текста.

    Теперь посмотрим на Java-код (MainActivity.java )

    Package ru.alexanderklimov.helloworld; import android.support.v7.app.AppCompatActivity; import android.os.Bundle; public class MainActivity extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } }

    Перед вами открыт файл класса, где имя класса MainActivity совпадает с именем файла с расширением java (это правило, установленное языком Java). В первой строке идет название пакета - его мы задавали при создании проекта (Package Name ). Далее идут строки импорта необходимых классов для проекта. Для экономии места они свёрнуты в одну группу. Разверните её. Если однажды вы увидите, что имена классов выводятся серым цветом, значит они не используются в проекте (подсказка Unused import statement ) и можете спокойно удалить лишние строки. Также они могут удаляться автоматически (настраивается).

    Далее идёт объявление самого класса, который наследуется (extends ) от абстрактного класса Activity . Это базовый класс для всех экранов приложения. Не исключено, что у вас будет AppCompatActivity , если при создании проекта вы оставили поддержку старых устройств (флажок Backwards Compatibilty (App Compat) ). В старых версиях не было плюшек, которые появились после Android 4, поэтому для них была создана специальная библиотека совместимости, которая позволяет использовать новинки от новых версий Android в старых программах. Класс AppCompatActivity как раз и относится к библиотеке совместимости. Считайте её бедным родственником базовой Activity . У неё есть все нужные методы и вспомогательные классы, но названия могут немного различаться. И смешивать названия нельзя. Если уж используете класс из библиотеки совместимости, то методы берите соответствующие.

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

    В самом классе мы видим метод onCreate() – он вызывается, когда приложение создаёт и отображает разметку активности. Метод помечен как protected и сопровождается аннотацией @Override (переопределён из базового класса). Аннотация может пригодиться вам. Если вы сделаете опечатку в имени метода, то компилятор сможет предупредить вас, сообщив об отсутствии такого метода у родительского класса Activity .

    Разберём код метода.

    Строка super.onCreate(savedInstanceState); – это конструктор родительского класса, выполняющий необходимые операции для работы активности. Эту строчку вам не придётся трогать, оставляйте без изменений.

    Вторая строчка setContentView(R.layout.activity_main); представляет больший интерес. Метод setContentView(int) подключает содержимое из файла разметки. В качестве аргумента мы указываем имя файла без расширения из папки res/layout . По умолчанию проект создаёт в нём файл activity_main.xml . Вы можете переименовать файл или создать свой файл с именем cat.xml и подключить его к своей активности. Тогда код будет выглядеть так:

    SetContentView(R.layout.cat);

    Чтобы ваш код был аккуратным, старайтесь придерживаться стандартов. Если вы создаёте разметку для активности, то используйте префикс activity_ для имени файла. Например, разметка для второй активности может иметь имя activity_second.xml .



Загрузка...