Comments 72
Отличное руководство! Давно хотел освоить Android, займусь после НГ. Спасибо!
Тоже займусь, но для начала надо наконец получить Hero — вчера только деньги дошли)
Тоже хочу, но пока нет возможности купить аппарат на Android, а тут еще и Nokia N900 появился, теперь ломаю голову что лучше всего купить.
Лучше — Андроид. Для n900 до сих пор кот наплакал софта. И вообще, держал в руках 810ую — гадость редкостная. Медленный, занудный, да еще и подобные трубки — это не смартфоны с симбианом, по которым сообщества большие…
А что симбиан с сообществом? Ну есть у меня Е71, а чтоб под нее софтину найти — надо пол инета перегуглить. А потом после установки телефон глючтиь начинает… Ну и еще огребаешь гемморой с сертификатами. Я для себя сделал вывод, что обилие софта под симбиан — надуманно.
> Ну и еще огребаешь гемморой с сертификатами

Вы знаете, я всего один раз переводил дату. Нужно всего лишь настроить диспетчер приложений:

Установлено — Дисп. прил. — Настройки

Прогр. устан. — Все
Проверка сертиф. — Выключена

Основные минусы симбиана в медленной ява-машине и переводе на русский (неудобный перевод и смена раскладки и неработающая цифровая клавиатура в русской раскладке)
После таких манипуляций все равно не весь софт можно поставить.
Я тоже ломал голову, но потом решил — у Android'а перспективы намного лучше. Например, платформа Maemo от Nokia имеет много проприетарных частей, и используется только на телефонах Nokia. И так будет всегда — Nokia не интересна конкуренция, компания будет проталкивать свои интересы.

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

Планирую скоро купить HTC Hero.
просто Нокиа, как и Эппл, продвигает на рынок собственное комплексное решение, а Андроид — это платформа, как ВинМобайл. поэтому в арсенале НТС всегда будут смартфоны с андроидом, но никогда не будет смартфона с iPhone OS.
Именно, про это я и пишу. HTC, Samsung, Motorolla и десятки других производителей никогда не выпустят смарфон ни с iPhone OS, ни даже с Maemo.
Просто вдумайтесь: на одной стороне Apple или Nokia со своими платформами, а на другой — прорва других компаний с единой универсальной платформой. Как думаете, на чьей стороне будет успех?

Когда-то массовость и единство PC-архитектуры + единое ПО от Microsoft (DOS/Windows) породило мировое господство этой платформы. А компьютеры Apple, несмотря на армию фанатов, так и остались редкостью, менее 10% всех компьютеров мира, да и то благодаря включению США в статистику.

Поэтому я не верю ни в Nokia/Maemo даже в Apple/iPhone. Конкуренция + выбор + цена + удобство + распространённость (а значит и количество игр и прочего софта) будут в пользу Android. Мне кажется, многие производители тоже пришли к такому выводу.
Программа интересная, а как насчет важных звонков, может дать возможность пользователю создавать список контактов исключений, которым Вас можно будет будить ночью? ))
Я исхожу из того, что если что-то действительно важное, то меня разбудят. Например, по домашнему. :)
Учту ваше пожелание.
Можно еще добавить функцию включения будильника сразу после выключения режима без звука.
Нет. У меня украинский Hero, а на нем маркета нет. После НГ займусь этим вопросом.
В херо есть такие классные колёсики установки времени в будильнике и календаре. Нельзя ли их заюзать? А то кнопочки с + и — смотрятся очень архаично.
Я тоже их искал, но с первой попытки не нашел: это какие-то собственные элементы от HTC. Где-то я слышал, что они доступны. Буду искать.
это стандартные Андроидовские кнопочки, да. До сих пор не понимаю, зачем выставлять будильник с точностью до минуты.

а в Херо спёрто с айфона — там наверняка целый отдел сидел и думал над юзабилити =)
Во-во, я как раз про них и говорю.

Кстати, про ваш будильник. Он встраивается в панель управлением временем стандартную?
Я не знаю. Одной из проблем WM была как раз разрозненность интерфейса. Каждый писал кто во что горазд, настройки программ разбросаны чёрт знает где. К сожалению, андроид походу повторит этот фейл.
Я понимаю, что вы предлагаете сделать, но для этого HTC должны опубликовать исходные коды или хотя бы список своих Intent'ов.
Но из-за врождённой копирастии этого никогда не сделает. Apple коды закрывает, но хотя бы даёт прекрасный API, нокия почти вообще всё под GPL выпускает. А андроид получился ни рыба, ни мясо.
Тут не Андроида больше вина, а HTC. Можно самому написать такие контролы и выложить их в открытый доступ или вообще внести в исходники Андроида, ведь его код никто не закрывал.
Эм… та, что на Hero? это весьма сложно сделать — там закрытое приложение.
можно лишь отследить что через него выставили время, не больше.
здорово для тренировки!

кстати, просто удивительно что я для своего android-будильника (http://alarm.kosenkov.com) нарисовал точно такую же икноку:
alarm.kosenkov.com/tmp/moon.png (простите, кармы не хватает вставить картинкой)
да, и будильник тоже выключает звук на ночь =) ну и airplane mode для параноиков.

Кстати, уже 12 тысяч установок!

Нет ли желания объединить усилия? =)
Идея такого будильника классная. А какой смысл в объединении усилий? У вас вроде и так уже все готово.
А у меня ещё полтора миллиона идей и мегаватты энергии для реализации! Особенно для маньяка-фотографа-дизайнера-программиста.

Плюс, оно на hero не работает пока =( из-за бага в прошивке
Какой интересный проект! Давно ищу толковый будильник для Андроида. А скачать его ниоткуда нельзя, пока он отсутствует на маркете?
UFO landed and left these words here
Можно, но об этом не всегда помнишь. Стараюсь свести раздражающие меня факторы к минимуму.
прям-таки соблазн. с силой заставляю себя не рассматривать красивые картинки.
после глупой wince\mo похоже это будет мой второй шаг…
респект автору.
Спасибо. Я знаю. Просто очень давно пишу на .net и мне так привычнее. Постараюсь использовать общепринятые обозначения.
Спасибо за статью — впервые захотелось купить Андроид.

А отлаживать приложения как? Только на телефоне, или есть эмулятор для Eclipse?
Есть эмулятор. Кроме того, производители железа поставляют свои скины эмулятора, чтобы проверить как всё будет работать на их экранах и т. д.
Эмулятор сам по себе, отдельно от Эклипса, в общем.

С точки зрения отладки, телефон и эмулятор неотличимы; оба поддерживают полноценную step-by-step отладку.
я именно про это.

из Eclipse или Idea (моя любовь на век). про нетБинс не знаю
Эмулятор входит в Android SDK.
Есть еще плагин для Eclipse, который их связывает и позволяет отлаживать прямо в Eclipse :)
А Вы заметили, что стиль иконок в Android 2.0 будут менять. Теперь без сложной перспективы — взгляд вертикально на иконку. Довольно стильно, приложения в Market уже начали медленно переходить.
UFO landed and left these words here
UFO landed and left these words here
А у меня захотелось написать подобное для своего WinMo-аппарата ) Надо перекорректировать планы на праздники…
Отличная статья, спасибо.

А как обстоят дела с отладкой на девайсе?
Я под Андроид не писал, но для WM например Студия позволяет дебажить прямо на девайсе…
Выше уже писали. Андроид тоже можно отлаживать как на симуляторе, так и на самом телефоне.
Тем кто привык к IDEA не нужно переходить на eclipse. В IDEA 9 есть вполне удобоваримая поддержка android (запуск эмулятора, отладка, автодополнение, да и много еще чего).
+1000
Сам хотел написать такое приложение, но к сожаление пока руки не дошли (работаю в отрасли далекой от программирования)
Дам Вам дополнительную идею, установка расписания отключения, т.е. возможность задавать несколько интервалов отключения звука.
Пример применения: в моем случае маленький ребенок спит в определенные интервалы времени, когда необходимо отключать звук, а сам забываешь либо отключать звук, либо включать
Кстати руководству по иконкам не обязательно следовать, например в версии 2.0 анройда уже иконки плоские используются с небольшой тенью :)
>>Основной причиной, по которой был выбран этот телефон, а не iPhone, была возможность полноценно разрабатывать приложения под Windows.

Казалось бы, причем тут Windows… Три раза перечитал, потом еще полностью прочел и понял что таки не причем.
А с эмулятором игрался еще до выхода платформы, API понравилось, но девайс на Андроиде не купил, почему-то опасаюсь в последнее время G**gle
Всё это конечно здорово, уважаю людей, которые пишут сами подобные маленькие, но очень гордые програмки) Но проще и себе для здоровья полезнее просто выключать телефон на ночь. Вот чего-чего, а это столь близкой любви к сотовым не разделяю — ну хоть ночью-то можно от него избавляться, честное слово.
Дык любой современный сотовый звонит в режиме будильника даже когда выключен.
отчасти, бывают исключения — андройдфоны от Сасунга i7500 и i5700
Ничего себе. Это же банальная функция, которая была даже в стареньких легендарных Сименсах С-серии (которые звонили будильником даже при дохлой батарейке, лол :)
спасибо за статью! познавательно!
есть кстати замечательная программа Locale для аналогичных целей, но более функциональная и с поддержкой плагинов

Спасибо! В маркет пока не вхож, но пытаюсь это исправить.
Делал в целях саморазвития. Так что наличие подобных программ не смущает. :-)
Прошу простить меня за суровый некропостинг, но у вас в коде большая ошибка. Сам с ней столкнулся, создавая приложение по вашему посту.
Дело в том, что вызов bindService() НЕ ГАРАНТИРУЕТ, что сервис будет создан и приконнекчен мгновенно. Он лишь запускает процесс запуска сервиса (сорри за тафталогию).
Соответственно, если сразу же пытаться вызывать методы сервиса, есть риск нарваться на null pointer exception, что и происходило в моём случае.
Самый, на мой взгляд, правильный вариант — вызвать метод внутри onServiceConnected().
а есть ли какая-нибудь подобная глушилка телефона на ночь, но чтобы умела пропускать звонки от пары особо важных номеров? никто не подскажет такую?
Only those users with full accounts are able to leave comments. Log in, please.