Nearest Tube использует функции мобильного устройства (камеру, систему навигации, компас и акселерометр), предлагая целый ряд инноваций для решения достаточно простой задачи. Именно это чаще всего и позволяют делать мобильные устройства: изобретать способы удовлетворения потребностей пользователей, предоставляя им великолепные новые инструменты.
Не все из того, что предлагает приложение Nearest Tube, в настоящее время работает в мобильных веб-браузерах. Половина функций уже реализовано (например, определение местонахождения и ориентация устройства), однако на момент написания этой книги вторая половина (видеокамера и компас) пока была недоступна. Так что, как я говорил выше, для разработки нативных приложений имеются веские причины. Если вы все же склонны считать, что стакан наполовину полон, то современные веб-браузеры мобильных устройств предлагают вам множество интересных возможностей, и чуть ли не ежедневно к ним добавляются новые.
Важно отметить, что первоочередность тех или иных функций определяется потребностями пользователей, а не техническими преимуществами того или иного устройства. Технические возможности позволяют предлагать оригинальные способы решения задач, однако клиентам вряд ли понравится тот факт, что новые функции появились исключительно потому, что мы могли их предложить.
Определение местоположения.
Когда посетитель заходит на наш сайт со стационарного компьютера, в 99 случаях из 100 мы знаем, в какой стране он находится. Для кого-то эта информация наверняка будет полезной, для нас же она особой ценности не представляет.
Но и в большинстве смартфонов функция определения местоположения доступна через веб-браузер. В табл. 3.1 (созданной Рахулом Наиром) приведен краткий обзор технологий, имеющихся в нашем распоряжении.
И хотя местоположение современного мобильного телефона может быть определено по сотовым вышкам, устройства, подобные iPhone, способны делать это при помощи Wi-Fi-маяков.
Wi-Fi-маяки (привязаны к точкам доступа Wi-Fi):
а) работают внутри помещения;
б) не потребляют энергии батарей;
в) способны определить местоположение практически мгновенно.
GPS-устройства имеют проблемы по всем трем фронтам, однако их показания гораздо более точные. Поэтому, если вам нужно как можно более верно определить, где вы находитесь, следует делать ставку на GPS и сотовые вышки.
В любом случае по этому поводу сильно беспокоиться не стоит. Веб-браузеры с поддержкой локационных API получают от устройств максимально точную информацию о вашем текущем местоположении.
Определение местоположения — важная вещь, так как она позволяет мобильным приложениям предоставлять пользователю полезные сведения о близлежащих кинотеатрах или ресторанах, информацию о погоде и пробках, цифровой контент (фотографии и комментарии к ним), оставленные другими пользователями, и многое другое. Текущее местоположение может использоваться для уточнения поисковых запросов или адаптации действий и возможностей под конкретного потребителя (рис. 3.6–3.7).
Итак, возможность точно определить местоположение позволяет создавать новые услуги. Каждые две секунды пользователи мобильных устройств обращаются к сервису Yelp, чтобы связаться с компаниями, предоставляющими необходимые услуги. С помощью мобильного приложения Zillow можно за час просмотреть изображения 20 тысяч домов. Перспективы для подобных сервисов поистине безграничны.
Ориентация устройства / акселерометр.
Вряд ли у кого-то возникает желание повсюду таскать с собой свой компьютер, пусть даже это ноутбук. С мобильными устройствами дело обстоит совершенно иначе. Они помещаются на ладони, их легко перемещать, вращать или направлять в разные стороны. Акселерометры отслеживают все, что происходит с аппаратом, и дают возможность сайтам и приложениям реагировать на это соответствующим образом.
Наиболее простое использование акселерометра — определение того, как мы держим устройство: горизонтально или вертикально (http://bkaprt.com/mf/36). Эта мелочь может существенно повлиять на поведение приложения.
В нативном почтовом приложении Google для Android смена ориентации устройства применяется для увеличения окна ввода текста при создании электронного сообщения. Если устройство перевести в горизонтальное положение, текстовое поле расширяется, занимая всю свободную площадь экрана над клавиатурой, а в правом углу появляется кнопка «Отправить» (рис. 3.8).
Не будь этого небольшого изменения в дизайне, приведение мобильного устройства в горизонтальное положение значительно осложнило бы процесс создания сообщения. Текстовое поле стало бы меньше, а поля — шире. Однако Google нашел решение, при котором поле не уменьшается, а увеличивается — иными словами, он превратил потенциальное ограничение в преимущество.