Image

Categories:

Изучаем андроид.

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

Сложней всего конечно начать, а там уже должно пойти легче (ну по крайней мере я так думал до сих пор). Я бы хотел по мере возможностей рассказывать здесь в своем блоге про программирование под Android

</span>

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

В первую очередь конечно нужно желание. У вас есть сомнения? Почему именно Android? Ведь есть еще Symbian, Blackberry, IPhone, Palm, Windows Mobile в конце-то концов. Ну давайте порассуждаем по поводу самой популярной на сегодняшний день Iphone OS. Да, в принципе это лидер. Самая популярная платформа, привлекательная для пользователей и программистов. Но только подумайте, число скаченных програм с App Store перевалило за два миллиарда! Хотя более семидесяти процентов всех тех программ практически представляют из себя никчемный мусор. Хотите разработать очередную гениальнейшую вещь которая затеряеться среди остальных семидесяти тысяч приложений? Вам оно надо? Популярность Android-а растет с каждым днем. Это открытая платформа, которую поддерживает и продвигает Google, так что несомненно будущее у этой платформы очень неплохое. Надеюсь я вас убедил, если нет, то можете дальше не читать, сисек как я и обещал не будет.

Во вторую очередь нужно быть программистом и знать какой либо язык программирования. В принципе все приложения на android пишуться на Java и в любом случае вам придется освоить этот язык программирования. Если Вы не знаете Java но знаете к примеру C#, то это просто здорово. Они очень похожи и проблем с изучением Java у вас не возникнет. Литературы в Сети по Java предостаточно, так что ссылок я давать не буду, ищите сами.

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

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

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

Итак программное обеспечение. В первую очередь надо скачать и установить JDK – Java Development Kit. Идите на http://java.sun.com/javase/downloads и качайте оттуда JDK. Я здесь не буду рассматривать вариант установки JDK под Linux, под windows-же оно устанавливается с полпинка.

Далее надо установить среду разработки. Здесь мы будем использовать довольно мощную штуку под названием Eclipse. Идите на http://www.eclipse.org/downloads качайте последний релиз. На момент написания поста последний релиз назывался Galileo. Устанавливать Eclipse не надо, просто разворачиваете архив и ставите ярлык на исполняемый файл, куда вам удобно – на рабочий стол или в меню «Start».

Далее надо установить Android SDK. Вот адрес: http://developer.android.com/sdk/. Там качаете последний SDK. Это тоже архив, который нужно развернуть туда, куда вам будет удобно. Единственно, надо будет добавить ссылку на папку tools в переменной PATH. Я думаю если у вас хватило ума дойти сюда,  мне нет необходимости рассказывать вам, как редактируются переменные окружения, вы знакомы надеюсь с командой SET коммандой строки.

Далее запускаем Eclipse. После запуска идем в Help -> Install new Software. Там нажимаем кнопку Add, в октрывшемся окне, в пункте Location указываем https://dl-ssl.google.com/android/eclipse. Нажимаем OK, eclipse попытается соединиться с сайтом андроида, скачать и установить плагин. Если попытка будет неудачной, попробуйте изменить https на http. После установки eclipse порекомендует перезапуск. После перезапуска идем в Window -> Preferences и если там в списке видим пункт "Android" то установка плагина была успешной, иначе что-то не так. Выбираем пункт Android и в пункте SDK Location указываем путь до папки, куда был развернут Android SDK.

Вот так вот не потратив ни копейки (не считая расходы на Интернет) мы установили все необходимое ПО, которое требуется для разработки программ под Android.

Теперь давайте попробуем запустить эмулятор среды Android. Идете в Window -> Android SDK and AVD Manager и добавляете новое вирутальное устройство. Название можете выбрать какое угодно, а Target я рекомендую выбирать Google API Lеvel 4. В итоге вы можете попробовать запустить ваше Android устройство. Советую набраться терпения, по непонятной мне пока причине эмулятор Android устройства может запускаться очень долго, даже на довольно мощных машинах, мне предстоит еще разобраться, как решить эту проблему.

ImageИтак, если все прошло успешно, в итоге вы должны увидеть вот такое окно.

Можете поиграться и посмотреть возможности эмулятора. Хотя конечно трудно будет оценить насколько на самом деле удобно работать на настоящем телефоне в отличии от эмулятора, но хочу заметить эмулятор сделан просто замечательно. Практически один в один как настоящий телефон.







Можете попробовать даже сэмулировать оптравку на телефон смс (предположим вы разрабатываете программу, которая будет обрабатывать входящие смс). Для этого нужно на компьютере запустить
telnet клиент. Если у вас в системе установлен telnet client, то в командой строке набираете telnet localhost 5554. А дальше команду для отправки смски на ваш эмулятор, в формате sms send <номер отправителя> <сообщение>. Номер отправителя должен начинаться со знака «+». К примеру вот так.

Image

ImageСмска получена!











Кстати нажимая Ctrl+F11 вы можете переключать ваш эмулятор в ландшафтный режим, эмулируя таким образом переворачивание телефона и срабатывание акселерометра. Image

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