Введение | 12 |
|
Глава 1. Мобильные джунгли | 19 |
|
Мифы мобильного Интернета | 19 |
«Это не мобильный Интернет — это просто Интернет!» | 19 |
Веб-сайт, предназначенный для настольных компьютеров, |
не нуждается в какой-либо доработке | 20 |
Один и тот же веб-сайт можно просмотреть на любом устройстве |
(настольном компьютере, мобильном устройстве, телевизоре и т.д.) | 20 |
Разработать мобильный веб-сайт на самом деле легко; |
просто создайте файл WML | 21 |
Просто создайте HTML-файл с шириной в 240 пикселов, |
и у вас получится мобильный веб-сайт | 21 |
Мобильный Интернет впоследствии вытеснят «родные» мобильные |
приложения | 22 |
Пользователи не используют свои мобильные браузеры | 22 |
Мобильная экосистема | 23 |
Что представляет собой мобильное устройство? | 23 |
Категории мобильных устройств | 25 |
Представление о мобильном устройстве | 31 |
Экран | 31 |
Другие функции | 35 |
Брэнды, модели и платформы | 36 |
Apple | 37 |
Nokia | 39 |
BlackBerry | 43 |
Samsung | 44 |
Sony Ericsson | 44 |
Motorola | 45 |
LG | 47 |
HTC | 47 |
Android | 47 |
Windows Mobile | 48 |
Palm | 50 |
Symbian Foundation | 52 |
Другие платформы | 53 |
Техническая информация | 53 |
Статистика рынка | 55 |
|
Глава 2. Мобильные браузеры | 61 |
|
Функциональность просмотра мобильного Интернета | 62 |
Режимы навигации | 62 |
Функции масштабирования | 64 |
Механизмы перерисовки | 65 |
Браузеры с прямым подключением и браузеры на базе прокси-сервера | 65 |
Многостраничный просмотр | 66 |
Механизм WebKit | 67 |
Предустановленные браузеры | 68 |
Браузеры, устанавливаемые пользователем | 74 |
Сводная информация | 78 |
Эпохи мобильного Интернета | 79 |
WAP 1 | 79 |
WAP 2.0 | 81 |
Мобильный Интернет стандарта Web 2.0 | 85 |
|
Глава 3. Архитектура и дизайн | 87 |
|
Архитектура веб-сайта | 87 |
Навигация | 87 |
Контекст | 88 |
Прогрессивное расширение | 89 |
Подход с использованием различных версий | 91 |
Дизайн и удобство использования | 92 |
Шаблоны сенсорного дизайна | 97 |
Официальные рекомендации по созданию пользовательского интерфейса | 100 |
|
Глава 4. Настройка окружения | 102 |
|
Настройка окружения разработки | 102 |
Работа с кодом | 102 |
Эмуляторы и симуляторы | 102 |
Эмулятор операционной системы Android | 104 |
Эмуляторы устройств Nokia | 107 |
Симулятор iPhone Simulator | 109 |
Эмулятор устройств Palm | 111 |
Симуляторы устройств BlackBerry | 113 |
Эмуляторы операционной системы Windows Mobile | 115 |
Эмулятор операционной системы Windows Phone | 116 |
Симулятор языка разметки i-mode HTML | 117 |
Эмулятор браузера Opera Mobile | 117 |
Симулятор браузера Openwave | 117 |
Программа Adobe Device Central | 118 |
Сравнение | 119 |
Онлайновые симуляторы | 119 |
Операционное окружение | 121 |
Веб-хостинг | 121 |
Домен | 122 |
Управление ошибками | 122 |
Статистика | 123 |
|
Глава 5. Виды разметки и стандарты | 124 |
|
Старые стандарты | 124 |
WML | 125 |
Текущие стандарты | 132 |
Политика мобильного Интернета | 132 |
Предоставление разметки | 135 |
XHTML MP и XHTML Basic | 140 |
Доступные теги | 141 |
Официально неподдерживаемые возможности | 142 |
Создание первого совместимого шаблона | 143 |
Расширения разметки | 146 |
CSS для мобильных браузеров | 146 |
Расширения WCSS | 147 |
Затруднения в понимании | 153 |
|
Глава 6. Написание кода разметки | 154 |
|
Структура заголовка | 154 |
Значки для мобильного Интернета | 156 |
Дружественность к мобильным устройствам | 158 |
Определение области просмотра | 159 |
Тело документа | 163 |
Основная структура | 164 |
Ссылка «вверх страницы» | 166 |
Изображения | 166 |
Списки | 175 |
Ссылки | 176 |
Формы | 192 |
Таблицы | 209 |
Фреймы | 212 |
Плагины и расширения | 215 |
Adobe Flash | 215 |
Microsoft Silverlight | 219 |
Формат SVG | 219 |
Тег canvas | 224 |
|
Глава 7. CSS для мобильных браузеров | 225 |
|
Где размещать CSS-код | 225 |
Фильтрация CSS | 226 |
Селекторы | 230 |
Техники работы с CSS | 233 |
CSS-файл сброса | 233 |
Блоковая модель | 235 |
Форматирование текста | 236 |
Распространённые шаблоны | 246 |
Свойства экрана | 246 |
CSS-спрайты | 257 |
Примеры и совместимость | 258 |
Альтернативы CSS-спрайтам | 264 |
Расширения WebKit | 264 |
Обводка и заливка текста | 265 |
Изображение границы | 266 |
Расширения браузера Safari | 271 |
|
Глава 8. JavaScript для мобильных браузеров | 273 |
|
Поддерживаемые технологии | 274 |
Объектная модель документа (DOM) | 274 |
Ajax | 275 |
Формат JSON | 275 |
Программные интерфейсы HTML 5 | 276 |
Расширения платформ | 276 |
Написание JavaScript-кода для мобильных браузеров | 276 |
Выполнение кода | 278 |
Совместимость мобильного JavaScript-кода | 280 |
DOM | 300 |
Использование в сценариях CSS-стилей | 306 |
Обработка событий | 308 |
Сенсорные жесты | 323 |
|
Глава 9. Ajax, RIA и HTML 5 | 333 |
|
Поддержка Ajax | 333 |
Синтаксический анализ XML | 334 |
Синтаксический анализ JSON | 335 |
JSONP и отложенная загрузка | 336 |
Comet | 338 |
Библиотеки JavaScript | 339 |
Мобильные библиотеки | 341 |
CSS-расширения WebKit | 342 |
Функции WebKit | 343 |
Градиенты | 345 |
Эффекты отражения | 346 |
Маскирование изображений | 347 |
Переходы | 348 |
Анимации | 350 |
Преобразования | 354 |
Мобильные RIA-приложения | 360 |
JavaScript-библиотеки пользовательского интерфейса | 360 |
JavaScript-шаблоны мобильного пользовательского интерфейса | 367 |
HTML 5 | 374 |
Стандарт HTML 5 | 374 |
Редактируемое содержимое | 376 |
Новые типы полей ввода | 377 |
Списки данных | 378 |
Элемент canvas | 378 |
Офлайновый режим | 382 |
Сохранение на стороне клиента | 386 |
|
Глава 10. Распознавание браузера на стороне сервера |
и доставка содержимого | 392 |
|
Распознавание мобильных устройств | 392 |
HTTP | 392 |
Распознавание контекста | 399 |
Транскодеры | 403 |
Библиотеки устройств | 407 |
Доставка содержимого | 424 |
Определение MIME-типов | 424 |
Доставка файлов | 427 |
Доставка приложений и игр | 434 |
Java ME | 436 |
Содержимое Flash Lite | 439 |
Приложения iPhone | 440 |
Мультимедийное содержимое и потоки | 441 |
Доставка мультимедийного содержимого | 442 |
Внедрение аудио и видео | 442 |
Потоковое содержимое | 444 |
Адаптация содержимого | 446 |
Фреймворки адаптации содержимого | 447 |
mobileOK Pythia | 450 |
Yahoo! Blueprint | 451 |
Использование WordPress и других CMS для мобильных устройств | 453 |
WordPress | 453 |
|
Глава 11. Геолокация и карты | 455 |
|
Технологии определения местоположения | 455 |
Точность определения | 455 |
Определение местоположения внутри здания | 456 |
Клиентские технологии | 456 |
Серверные технологии | 458 |
Опрос пользователей | 461 |
Определение местоположения | 462 |
W3C Geolocation API | 462 |
Google Gears | 467 |
BlackBerry Location API | 471 |
API виджетов | 472 |
GSMA OneAPI | 472 |
Многоплатформенный API геолокации | 473 |
Геолокация IP-адреса | 475 |
Отображение карты | 476 |
Google Maps API vЗ | 477 |
Google Maps Static API | 480 |
Применение LBS-служб | 481 |
|
Глава 12. Виджеты и офлайновые webapp-приложения | 482 |
|
Платформы мобильных виджетов | 483 |
Плюсы и минусы | 483 |
Архитектура | 485 |
Стандарты | 488 |
Стандарты пакетов и файлов конфигурации | 488 |
Доступ к платформе | 489 |
Платформы | 494 |
Symbian/Nokia | 494 |
iPhone, iPod и iPad | 506 |
webOS | 512 |
Android | 514 |
Windows Mobile | 516 |
BlackBerry | 519 |
LG | 522 |
Samsung | 523 |
JIL | 525 |
Opera Widgets | 526 |
Платформы виджетов на базе оператора связи | 527 |
Шаблоны проектирования виджетов | 528 |
Отображение нескольких представлений | 528 |
Макет | 529 |
Метод ввода | 529 |
Виджет с одним представлением | 529 |
Механизм динамического приложения | 529 |
Многоплатформенные виджеты | 530 |
|
Глава 13. Тестирование, отладка и производительность | 531 |
|
Тестирование и отладка | 531 |
Удалённые лаборатории | 532 |
Отладка на стороне сервера | 541 |
Отладка разметки | 543 |
Отладка на стороне клиента | 545 |
Оптимизация производительности | 549 |
Оценка производительности | 550 |
Лучшие практики | 551 |
|
Глава 14. Распространение приложений и социальные сети |
стандарта Web 2.0 | 555 |
|
Оптимизация поисковых механизмов для мобильных устройств | 555 |
Пауки и обнаруживаемость сайта | 556 |
Как пользователи найдут вас | 558 |
Привлечение постоянных пользователей | 563 |
Мобильная веб-статистика | 566 |
Google Analytics | 566 |
Yahoo! Web Analytics | 566 |
AppClix | 567 |
Pion | 567 |
Мобильная Интернет-реклама | 567 |
Получение финансовой выгоды от использования веб-сайта | 567 |
AdMob | 568 |
Другие компании | 568 |
Социальные возможности для мобильных устройств | 568 |
Возможности работы с социальной сетью Facebook | 568 |
Предоставление ссылок на содержимое | 569 |
|
Приложение. MIME-типы мобильного содержимого | 571 |
|
Другие источники информации | 575 |
Благодарности | 576 |