Дион Альмаер и Памела Фокс, Google
Июнь 2007 г.
Примечание редактора: API Google Gears больше не доступен .
- Введение
- Понимание приложения
- Использование API-каналов данных Google Base
- Добавление Google Gears в приложение
- Отладка автономного приложения
- Заключение
Введение
Объединяя Google Base и Google Gears, мы покажем, как создать приложение, работающее офлайн. Прочитав эту статью, вы лучше познакомитесь с API Google Base, а также научитесь использовать Google Gears для хранения и доступа к пользовательским настройкам и данным.
Понимание приложения
Чтобы понять это приложение, вам сначала нужно ознакомиться с Google Base , который по сути представляет собой большую базу данных элементов, охватывающих различные категории, такие как продукты, обзоры, рецепты, события и многое другое.
Каждый элемент аннотируется названием, описанием, ссылкой на первоисточник данных (если есть), а также дополнительными атрибутами, которые различаются в зависимости от типа категории. Google Base использует тот факт, что элементы одной категории имеют общий набор атрибутов, например, у всех рецептов есть ингредиенты. Элементы Google Base иногда даже появляются в результатах веб-поиска Google или поиска товаров Google.
Наше демо-приложение Base with Gears позволяет сохранять и отображать распространённые поисковые запросы в Google Base, например, поиск рецептов по слову «шоколад» (вкуснятина) или персональных объявлений по слову «прогулки по пляжу» (романтично!). Его можно представить как «читатель Google Base», который позволяет подписаться на поисковые запросы и видеть обновлённые результаты при повторном посещении приложения или когда приложение каждые 15 минут отправляется на поиск обновлений.
Разработчики, желающие расширить приложение, могут добавить больше функций, например, визуально оповещать пользователя о наличии новых результатов поиска, позволять пользователю добавлять в закладки (звездочки) избранные элементы (офлайн и онлайн) и позволять пользователю выполнять поиск по атрибутам, специфичным для категорий, как в Google Base.
Использование API-каналов данных Google Base
К Google Base можно обращаться программно с помощью API данных Google Base, совместимого с фреймворком Google Data API. Протокол Google Data API обеспечивает простой протокол для чтения и записи данных в Интернете и используется многими продуктами Google: Picasa, Spreadsheets, Blogger, Calendar, Notebook и другими.
Формат API данных Google основан на XML и протоколе публикации Atom, поэтому большинство взаимодействий по чтению/записи происходит в XML.
Пример фида Google Base, основанного на API данных Google:
http://www.google.com/base/feeds/snippets/-/products?bq=digital+camera
Тип фида snippets
предоставляет нам общедоступный фид товаров. Параметр -/products
позволяет ограничить фид категорией «товары». А параметр bq=
позволяет ещё больше ограничить фид, отображая только результаты, содержащие ключевое слово «цифровая камера». При просмотре этого фида в браузере вы увидите XML-код, содержащий узлы <entry>
с соответствующими результатами. Каждая запись содержит типичные элементы автора, заголовка, содержимого и ссылки, а также дополнительные атрибуты, специфичные для категории (например, «цена» для товаров в категории «товары»).
Из-за кроссдоменного ограничения XMLHttpRequest в браузере мы не можем напрямую читать XML-канал с www.google.com в нашем JavaScript-коде. Мы могли бы настроить серверный прокси-сервер для чтения XML и его выдачи обратно в том же домене, что и наше приложение, но мы хотели бы полностью отказаться от серверного программирования. К счастью, есть альтернатива.