Рынок мобильных телефонов - это, пожалуй, самый быстроразвивающийся сегмент рынка. Несколько лет назад мобильный телефон был чем-то дорогим и недосягаемым.
Оплата за связь была астрономической. Но времена меняются, связь подешевела, мобильные телефоны продаются на каждом углу и наличие телефона у человека
можно уже сравнить с наличием обычных наручных часов.
Обилие разнообразных моделей телефонов создает на этом рынке большую конкуренцию. Множество производителей стараются включить в телефоны как можно больше
различных функций. Присутствием в телефоне адресной книги, органайзера, будильника и даже счетчика калорий уже никого не удивишь, и в какой-то момент
времени возник вопрос, а чем же еще можно оборудовать телефон? Самым идеальным решением этого вопроса могла стать возможность загрузки в телефон программ
сторонних производителей. Не секрет, что основная масса телефонов работает на основе прошивки, поэтому загрузка программ в телефон не возможна. Чтобы
такая возможность появилась, производителям надо было бы решить ряд сложных вопросов. Во-первых - это язык программирования, на котором будут писаться
программы для телефонов и, соответственно,, поддержка этого языка самим телефоном. Второе - это аппаратная архитектура мобильных телефонов, которая сильно
ограничена в своих системных ресурсах, а это процессор, память, графический интерфейс. Улучшение архитектуры неизменно ведет к увеличению стоимости
телефона, поэтому идеальной в этом случае стала платформа Java 2 Micro Edition, созданная компанией Sun Microsystems.
Платформа Java 2 ME состоит из виртуальной Java машины, языка программирования Java и огромного количества библиотек, облегчающих работу программиста.
Язык программирования Java
работает на основе интерпретации, поэтому для работы программ написанных на этом
языке необходима виртуальная Java машина, встроенная в устройство, на котором планируется запускать Java программы. Наличие
виртуальной Java машины в мобильном телефоне означает, что производитель поддерживает технологию Java. В данный момент практически все производители
имеют поддержку Java технологии, что позволяет писать любые программы на этом языке и загружать их в телефон.
Введение
Глава 1. Устройство мобильных телефонов
Прежде чем приступить к изучению особенностей программирования мобильных телефонов на Java 2 ME, необходимо познакомиться с общей схемой устройства телефона.
Сейчас на рынке мобильных телефонов присутствует множество как мелких, так и крупных производителей мобильных телефонов, предлагающих широкий ассортимент продукции. По цене и по своим функциональным признакам имеющиеся устройства , можно условно разделить на три категории.
В этой главе...
1.1. Стандарт GSM
1.2. Архитектура телефонов
1.3. Прошивка и операционная система
1.4. Инфракрасный порт
1.5. Технология Bluetooth
1.6. Протокол WAP
1.7. Протокол GPRS
1.8. Карта SIM
Глава 2. Платформа Java 2 Micro Edition
История языка программирования Java насчитывает более десяти лет. Вначале, при создании Java, планировалось использовать этот язык для программирования микроконтроллеров бытовых устройств. Поэтому язык Java, тогда он, правда, имел другое название, изначально создавался независимым от архитектуры, компактным и безопасным, что в последствии сыграло решающую роль в его широком распространении. Однако, в тот момент язык программирования Java не смог обрести популярности.
В этой главе...
2.1. Конфигурация CDC
2.2. Конфигурация CLDC
2.2.1. Свойства языка Java
2.2.2. Виртуальная машина
2.3. Профиль
2.4. Профиль MIDP 2.0 и конфигурация CLDC 1.0
2.4.1. Пакет java.lang
2.4.2. Пакет java.util
2.4.3. Пакет java.io
2.4.4. Пакет javax.microedition.io
2.4.5. Пакет javax.microedition.lcdui
2.4.6. Пакет javax.microedition.lcdui.game
2.4.7. Пакет javax.microedition.media
2.4.8. Пакет javax.microedition.media.control
2.4.9. Пакет javax.microedition.midlet
2.4.10. Пакет javax.microedition.pki
2.4.11. Пакет javax.microedition.rms
Глава 3. Средства разработки мобильных приложений
Прежде чем приступить к инсталляции SUN ONE Studio 4 Mobile Edition и J2ME Wireless Toolkit 2.1, необходимо установить набор инструментальных средств Java 2 SDK, SE vl.4.2_03 (Software Development Toolkit Standard Edition). Это последняя на данный момент версия библиотеки, предоставляющая программные средства для создания приложений на Java. В состав этой библиотеки также входит Java 2 Runtime Environment, SE vl.4.2_03, которая необходима для работы приложений написанных на Java.
В этой главе...
3.1. Установка Java 2 SDK SE
3.2. Среда программирования SUN ONE Studio 4 Mobile Edition
3.2.1. Настройка SUN ONE Studio 4 Mobile Edition.
3.2.2. Создание проекта в SUN ONE Studio 4 Mobile Edition
3.2.3. Создание приложений в SUN ONE Studio 4 Mobile Edition
3.2.4. Компиляция и запуск программ в SUN ONE Studio 4 Mobile Edition
3.3. Среда программирования J2ME Wireless Toolkit 2.1
3.3.1. Установка J2ME Wireless Toolkit 2.1
3.3.2. Создание проекта в J2ME Wireless Toolkit 2.1
3.3.3. Компиляция и запуск программы в J2ME Wireless Toolkit 2.1
3.4. Упаковка программ
3.4.1. Файл манифеста
3.4.2. Файл JAD
3.4.3. Файл JAR
Глава 4. Телефонные эмуляторы
Интегрированные средства разработки приложений для мобильных телефонов рассмотренные в предыдущей главе имеют в своем составе несколько эмуляторов мобильных устройств несуществующих марок телефонов. Эмулятор телефона -это приложение, программно эмулирующее работу реального телефона, учитывая все технические характеристики этого устройства. Большинство производителей мобильных телефонов имеют в своем арсенале наборы инструментальных средств для программирования телефонов называемых SDK (Software Developer Kit) и множество встраиваемых модулей для эмуляции определенных моделей.
В этой главе...
4.1. Программное обеспечение телефонов Nokia
4.1.1. Инструментарий Nokia Developer's Suite 2.0 for J2ME
4.1.2. Программа Nokia PC Suite 5.1
4.1.3. Дополнительные пакеты Nokia
4.2. Программное обеспечение телефонов Siemens
4.2.1. Пакет Siemens Mobility Toolkit
4.2.2. Программа Siemens Date Suite
4.2.3. Дополнительные пакеты Siemens
4.3. Программное обеспечение телефонов Sony Ericsson
4.4. Программное обеспечение телефонов Motorola
4.5. Программное обеспечение телефонов Samsung
Глава 5. Механизм работы приложений Java 2 ME
В предыдущих двух главах вашему вниманию были представлены две среды программирования мобильных приложений и большое количество разнообразных телефонных эмуляторов. Полностью был разобран весь процесс установки этих средств, а так же режимы создания, компиляции кода и просмотр получившегося приложения на эмуляторе. Выберите себе понравившуюся среду разработки или работайте с теми средствами, к которым привыкли. Мы больше не будем отвлекаться на процесс написания кода, компиляции и запуска приложения на эмуляторе. Предшествующие две главы дали исчерпывающую информацию по этому поводу.
В этой главе...
5.1. Мидлет
5.1.1. Модель работы мидлета
5.2. Пользовательский интерфейс
5.3. Переход с экрана на экран
5.4. Навигация
Глава 6. Классы пользовательского интерфейса
В Java 2 ME имеется пакет javax.microedition.lcdui, определенный для классов пользовательского интерфейса. Как уже отмечалось в главе 5, классы пользовательского интерфейса разделены на высокоуровневый и низкоуровневый интерфейсы. В этой главе будут последовательно рассмотрены все классы высокоуровневого пользовательского интерфейса. Каждый из разделов содержит информацию об одном конкретном классе, предоставляющем ряд возможностей в оформлении интерфейса пользователя. Используя возможности этих классов, вы сможете создавать в приложении списки, группы элементов, загружать в программу изображения, использовать бегущую строку, назначать шрифт текста и многое другое.
В этой главе...
6.1. Класс Form
6.1.1. Методы класса Form
6.2. Класс Item
6.2.1. Класс ChoiceGroup
6.2.2. Класс DateField
6.2.3. Класс TextField
6.2.4. Класс Stringitem
6.2.5. Класс Spacer
6.2.6. Класс Imageitem
6.2.7. Класс Gauge
6.3. Класс Alert
6.3.1. Методы класса Alert
6.4. Класс List
6.4.1. Методы класса List
6.5. Класс Ticker
6.5.1. Методы класса Ticker
6.6. Класс Image
6.6.1. Методы класса Image
6.7. Класс Font
Глава 7. Программирование графики
Высокоуровневые классы, изученные в главе 6, дают возможность создавать пользовательский интерфейс приложения. По сути, эти классы выполнены в виде шаблонов, используя которые вы мoжете создавать списки, формы, шрифт, группы элементов, бегущие строки. Но использование таких классов-шаблонов несколько упрощает интерфейс программы, лишая возможности использования графики в программах на Java 2 ME. Иногда в приложении необходимо нарисовать таблицу, линию, квадрат, то есть воспользоваться графикой для создания насыщенной и красочной программы.
В этой главе...
7.1. Класс Canvas
7.1.1. Методы класса Canvas
7.2. Класс Graphics
7.2.1. Методы класса Graphics
7.3. Рисование линий
7.4. Рисование прямоугольников
7.5. Рисование дуг
7.6. Вывод текста
7.7. Механизм создания игрового цикла
7.8. Перемещение квадрата
7.9. Циклическое передвижение объекта по экрану
7.10. Столкновение
7.11. Перемещение объекта с помощью клавиш
Глава 8. Техника создания игр
Рынок мобильных телефонов развирается стремительными темпами. Все больше телефонов имеют поддержку технологии Java. Веянье игровой индустрии захватило и мобильные телефоны, поэтому платформа Java 2 ME позиционируется в большей степени как игровая платформа Для мобильных телефонов. При разработке игр под профиль MIDP 1.0 программист сталкивается с массой проблем в виде написания большого количества собственных классов для создания игрового процесса, рисование графики, уровней и так далее.
В этой главе...
8.1. Класс GameCanvas
8.2. Класс Layer
8.3. Класс TiledLayer
8.4. Класс LayerManager
8.5. Класс Sprite
8.6. Создание фонового изображения
8.7. Обработка событий с клавиш телефона
8.8. Анимация в игровом процессе
8.9. Столкновение объектов
Глава 9. Мобильная мультимедиа-библиотека
Воспроизведение звуков в играх создает более насыщенную- атмосферу. Хорошая звуковая дорожка к игре - это 30-40% успеха! Но, к сожалению, в мобильных играх, нет возможности воспроизведения мощной полноценной звуковой дорожки, как в компьютерных или приставочных играх, в виду ограничения системных ресурсов телефона. Поэтому, в основном, все звучание в играх сводится к воспроизведению так называемых тональных звуков. Каждый тональный звук соответствует определенной ноте, выстроив необходимую последовательность нот для воспроизведения можно получить определенную звуковую дорожку.
В этой главе...
9.1. Пакет javax.microedition.media
9.1.1. Интерфейс Control
9.1.2. Интерфейс Controllable
9.1.3. Интерфейс Player
9.1.4. Интерфейс PlayerListener
9.1.5. Класс Manager
9.2. Пакет javax.microedition.media.control
9.2.1. Интерфейс ToneControl
9.2.2. Интерфейс VolumeControl
9.3. Воспроизведение wav-файлов
9.4. Воспроизведение тональных звуков
Заключение
Приложение 1. Основы языка Java
Это приложение не претендует на роль полного руководства по языку Java (Ява), но данного материала будет достаточно для дальнейшего изучения книги. Предлагаемая к рассмотрению в этом разделе информация содержит основы языка Java и ориентирована на неподготовленного читателя. Также нужно иметь в виду, что обучение языку Java будет происходить в соответствии с контекстом книги, а именно, всей той части языка Java, необходимой для программирования мобильных устройств.
В приложении ...
1.1. Введение в программирование
1.2. Объектно-ориентированное программирование
1.2.1. Классы
1.2.2. Методы
1.3. Синтаксис и семантика языка Java 2 ME
1.3.1. Комментарии
1.3.2. Типы данных Java
1.3.3. Операторы
1.3.4. Метод main
1.3.5. Закрытые и открытые члены классов
1.4. Конструктор
1.5. Объекты классов
1.6. Условные операторы
1.7. Управляющий оператор
1.8. Циклы
1.8.1. Оператор while
1.8.2. Цикл do/while
1.8.3. Цикл for
1.9. Массивы
1.10. Наследование
1.10.1. Конструктор суперкласса
1.11. Интерфейсы
1.12. Пакеты
Приложение 2. Справочник по Java 2 Micro Edition
В этом приложении содержится исчерпывающий справочный материал по всем пакетам, интерфейсам, классам, конструкторам классов и константам платформы Java 2 Micro Edition.
Справочник рассматривает все пакеты, имеющиеся в составе платформы Java 2 ME. Каждый пакет содержит множество интерфейсов, классов, конструкторов и констант. Для всех имеющихся компонентов каждого пакета дается краткая характеристика, на основании которой вам будет очень легко сориентироваться в создании приложений для платформы Java 2 Micro Edition.
В этом приложении...
2.1. Пакет Java.lang
2.2. Пакет Java.util
2.3. Пакет java.io
2.4. Пакет javax.microedition.io
2.5. Пакет javax.microedition.lcdui
2.6. Пакет javax.microedition.lcdui.game
2.7. Пакет javax.microedition.media
2.8. Пакет javax.microedition.media.control
2.9. Пакет javax.microedition.midlet
2.10. Пакет javax.microedition.pki
2.11. Пакет javax.microedition.rms
Разное