Создаём новый проект для Android по-новому

    Практически одновременно с объявлением о выходе новой версии Android 4.1 (кодовое имя Jelly Bean) на сайте разработчиков обновились инструменты разработки под Android — Android SDK Tools, Revision 20. Изменения оказались очень значительными, можно сказать, революционными. Так как не понаслышке знаю, что многие кодеры не спешат обновлять свои инструменты, то расскажу и покажу в картинках о новинках. Заодно расскажу о подводных камнях, с которыми я сам лично столкнулся, и о способах их решения.



    Мастер по созданию нового проекта (File | New | Android Application Project) был сильно переработан. И эти изменения сразу бросаются в глаза с первого же экрана.

    Давайте потренируемся на кошках и запустим мастер для создания нового проекта под условным названием Cats.



    Обратите внимание, что теперь уже в первом окне мы указываем имя приложения и имя проекта. А дальше уже интереснее. Появилась опция Create custom launcher icon (о ней чуть позже) и Mark this project as a library.

    Щёлкаем на кнопке Next и видим новое окно конфигурации собственного значка для приложения. Программисты со стажем узнают в ней программу для создания значков, которая была сначала доступна как онлайн-сервис (Android Asset Studio), а потом была добавлена в ADT в одной из ревизий и была в общем-то где-то на задворках.



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



    Остальные настройки понятны, для демонстрации я выбрал первые попавшие значения настроек исключительно для демонстрации, поэтому не обращайте внимание на ужасное сочетание цветов и размеров. Причем в корневой папке проекта появится дополнительный значок ic_launcher-web.png, который можно использовать в Google Play, когда будете размещать свою программу в магазине.



    На этом сюрпризы не заканчиваются. Переходим на следующее окно и видим выбор шаблонов для активностей: BlankActivity и MasterDetailFlow.



    Для меня данный экран стал неожиданностью. Раньше создавалась активность без вариантов с одним TextView с текстом Hello World. Теперь же можно воспользоваться готовыми шаблонами с использованием ActionBar (шаблон BlankActivity) или с использованием фрагментов (Fragments) — шаблон MasterDetailFlow. Причем для выбранного шаблона генерируется необходимый код.
    Сбоку можно увидеть, как примерно будет выглядеть приложение с выбранным шаблоном.



    Однако, идем дальше. На следующем экране вы можете настроить Activity по своему вкусу. Обратите внимание, что теперь для компоновки предлагается использовать имя activity_main вместо старого main (main.xml). Выше я уже сказал, для одного из шаблонов используется ActionBar и тут можно выбрать дополнительные опции. Например, когда я выбрал вариант Tabs, то были сгенерированы шесть методов и класс для фрагмента, кроме стандартного метода onCreate().



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



    Наконец, мы попадаем на последнее окно мастера. Вот здесь нас ждал облом. Помните, я обещал вам рассказать о подводных камнях? Обратите внимание, что кнопка Finish недоступна. Она не стала доступной и после установки библиотеки (кнопка Install/Upgrade) и после нажатия кнопки Check Again. Причем сама библиотека радостно скачивалась и устанавливалась.



    После нескольких безуспешных попыток я сдался и стал искать ответ на решение проблемы в интернете. Я оказался не одинок во Вселенной. Такие проблемы возникли и у других пользователей. Мне помог ответ, который нашел здесь. Суть в следующем — удалить через менеджер SDK эту злосчастную библиотеку, а потом вернуться к этому окну и снова нажать кнопку Install/Upgrade. В этом случае библиотека установится правильно и кнопка Finish станет активной и квест по созданию нового проекта будет пройден.

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

    В целом я хочу сказать, что инструменты для разработки под Android активно развиваются. Я вспоминаю, как приблизительно год с небольшим назад я только начинал изучать новую для себя область и вижу большой прогресс в этом направлении. Всех, кто до сих пор еще не решился попробовать свои силы в программировании для Android, советую не бояться и начать изучать эту платформу. Если у вас существуют трудности с английским, то можете начать с моего курса Освой Android за 30 дней. По сути это был мой путь освоения Android, который я записывал в виде уроков. Благодаря отзывам пользователей, в том числе с Хабра, некоторые статьи редактировались несколько раз. Потому что бывали ситуации, когда некоторые моменты для меня казались очевидными, а для новичков не совсем понятными. Также рекомендую ознакомиться с уроками на сайте StartAndroid.ru, в которых упор больше сделан на теоретическую часть. Ну а потом всё же вам придется изучать документацию по Android на английском — без этого никуда.
    Happy coding!
    Поддержать автора
    Поделиться публикацией

    Комментарии 17

      0
      У меня стала Android Support library стала сразу, с первого раза.
        0
        Вы ставили с нуля? Насколько я понял, проблема проявляется у тех, кто библиотеку ставил раньше.
          0
          Android SDK стоят давно и не раз обновлялись, сама эта либа кажется раньше не стояла.
        0
        Встретил точно такую же проблему, сейчас попробую через этот диалог установить, но самое странное то, что у меня уже установлена версия 9 (последняя в SDK Manager), а диалог требует 8ю, явно баг.
          +1
          Действительно, переустановка этой же 9й версии, но через этот диалог-визард, помогает. Спасибо за трюк.
            0
            Рад, что помогло. Вроде они обещали скоро пофиксить эту проблему.
        • НЛО прилетело и опубликовало эту надпись здесь
            +1
            terminal: adb logcat наше все :) советую перейти
            +1
            Спасибо за толчок к изучению этого дела! Судя по мастеру, первый старт будет простым. И туториалы есть — стоит заняться!
              0
              Да, здесь пошли по пути Visual Studio, когда предлагаются несколько готовых шаблонов и готовые методы в коде. Я думаю, что это только начало. Потом быстрый старт будет еще проще для новичков. Ведь главное — первое впечатление.
              +1
              Спасибо за информацию по проблеме с support-package. Так бы сидел, мучался.
                0
                Вот ха это спасибо. Пошёл пробовать.
                0
                > Обратите внимание, что теперь уже в первом окне мы указываем имя приложения и имя проекта.

                В первых версиях adt все настройки приложения были на одном экране:)
                  0
                  Скажите, а какое отношение новый плагин для Eclipse имеет к обновлению SDK?

                  Хотелось бы добавить, что существуют не менее удобные IDE для разработки Android приложений.
                    0
                    Понимаю, что поздно комментирую, но вот какой вопрос возник. При попытке использовать все эти красивые мастера создания Activity от меня упорно требуют выбрать минимальную версию 11 для MasterDetailFlow и 14 для BlankActivity с какой-нибудь навигацией отличной от None. Получается, что для более старых версий (коих пока еще большинство) эти навороты бесполезны?

                    Более того, даже если я пытаюсь создать совсем пустое Activity, к нему все равно прикручиваются несколько xml-файлов, туда запихиваются заготовки для меню, что-то добавляется у уже существующие файлы (strings.xml, например). И support библиотеку он прикручивает безоговорочно, что мне, например, совсем не нужно. Приходится вычищать руками.

                    Вобщем, на мой взгляд, перемудрили они с этими мастерами. Толку мало, а геморроя много.
                      0
                      А у кого-нибудь есть опыт разработки под android в emacs? Хотелось бы узнать, как оно по ощущениям? Или лучше даже не пробовать и просто использовать eclipse?

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

                      Самое читаемое