Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438




НазваниеМобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438
страница1/45
Дата02.11.2012
Размер5.64 Mb.
ТипКнига
  1   2   3   4   5   6   7   8   9   ...   45






Горнаков С. Г.

SYMBIAN OS

ПРОГРАММИРОВАНИЕ

МОБИЛЬНЫХ ТЕЛЕФОНОВ

НА C++ И JAVA 2 ME

Москва, 2005

УДК 004.438

ББК 32.973.26-018.2

Г26

Горнаков С. Г.

Г26 Symbian OS. Программирование мобильных телефонов на C++ и Java 2 ME. — М: ДМК Пресс, 2005. - 448 с: ил.

ISBN 5-94074-030-8

Создание мобильных приложений для операционной системы Symbian -сложная и трудоемкая задача. Эта книга познакомит вас с основами про­граммирования для Symbian OS на языке программирования C++, а одна из глав посвящена программированию Java 2 ME приложений. Темы, рас­сматриваемые в книге весьма разносторонние - это интегрированные среды программирования CodeWarrior for Symbian, C++ BuilderX Mobile Studio, инструментальные средства разработчика SDK от Symbian, Sony Ericsson и Nokia для платформ UIQ, серии 60, серии 80 и серии 90. Большой объем информации освящает вопросы, связанные с программной архитектурой операционной системы, основными идиомами программирования в Sym­bian OS, структурой и созданием GUI приложения, локализацией, работой с меню, элементами пользовательского интерфейса, графикой, изображе­ниями, созданием инсталляционного пакета.

Книга будет интересна широкому кругу читателей, желающим самосто­ятельно изучить программирование для операционной системы Symbian на языке C++.

УДК 004.438

ББК 32.973.26-018.2

Все права защищены. Любая часть этой книги не может быть воспроизведена в какой бы то ни было форме и какими бы то ни было средствами без письменного разрешения вла­дельцев авторских прав.

Материал, изложенный в данной книге, многократно проверен. Но поскольку вероятность технических ошибок все равно существует, издательство не может гарантировать абсолютную точность и правильность приводимых сведений. В связи с этим издательство не несет ответ­ственности за возможные ошибки, связанные с использованием книги.

© Горнаков С. Г., 2005
ISBN 5-94074-030-8 © Оформление, ДМК Пресс, 2005

Содержание

Предисловие 14

Структура книги 15

Что вы должны знать 16

Программное обеспечение 16

Исходные коды 16

Благодарности 17

Глава 1. Знакомство с Symbian OS 18

  1. Работа в Symbian OS 20

  2. Навигация 22

  3. Интернет 23

  4. Java-приложения 25

  5. Программы наС++ 27

  6. Обзор программ для Symbian OS 28




  1. Файловые менеджеры 29

  2. Веб-браузеры 29

  3. Мультимедиа 30

  4. Игры 32

Глава 2. Среда программирования IDE Metrowerks
CodeWarrior for Symbian OS - 33

  1. Установка CodeWarrior for Symbian Personal v2.8.3 35

  2. Знакомство с Metrowerks CodeWarrior for Symbian

Personal v2.8.3 38

  1. Меню File 40

  2. Меню Edit 40

  3. Меню View.. 41

  4. Меню Search 42

  5. Меню Project 43

  1. Меню Debug 44

  2. Меню Window 45

  3. Меню Help 46

  4. Панель инструментов 46




  1. Окно Workspace 47

  2. Текстовый редактор 49

2.3. Настройка Metrowerks CodeWarrior 51

  1. Группа General 52

  2. Группа Editor 56

  3. Группа Debugger 61




  1. Создание проекта 63

  2. Импорт проекта 65

  3. Компиляция проекта 67

  4. Создание установочного пакета 69

Глава 3. IDE C++ BuilderX Mobile Studio 72

  1. Установка IDEC++BuilderX Mobile Studio 73

  2. Изучаем C++BuilderX 75




  1. Меню File 76

  2. Меню Edit 77

  3. Меню Search 78

  4. Меню View 78

  5. Меню Project 79




  1. Меню Run 79

  2. Меню Team 80

  3. Меню Wizards 80

  4. Меню Tools 80

  5. Меню Window 80




  1. Меню Help 81

  2. Панель инструментов 81

  3. Панель Project 82




  1. Подключение SDK 83

  2. Создание проекта 84




  1. Импорт проекта 86

  2. Компиляция проекта 87

  3. Создание установочного пакета 88

Глава 4. Инструментальные средства разработчика 89

4.1. Программные средства компании Sony Ericsson 90

4.1.1. Установка SDK 91

4.1.2. Эмуляторы телефонов Sony Ericsson 94

4.2. Программные средства компании Nokia 95

  1. Серия 60 97

  2. Серия 80 98

  3. Серия 90 100

  4. Программа SISAR 102

Глава 5. Архитектура Symbian OS 105

  1. Аппаратная архитектура 106

  2. Системные библиотеки 107

  3. Программная архитектура 108




  1. Ядро и аппаратная часть системы 109

  2. Базовые сервисы 109

  3. Сервисы операционной системы 110

  4. Пользовательские сервисы 112

  5. Инфраструктура пользовательского интерфейса 113

5.4. Файловая система 113

  1. Диск Z 114

  2. Диск С 114

  3. Диски 115

  4. ДискЕ 115

  5. Оперативная память 116

Глава 6. Основы программирования в Symbian OS 117

6.1. Классы 118

  1. КлассыС 118

  2. Классы R 118

  3. КлассыТ 118

  4. КлассыМ 119

  5. Статические классы 119

6.2. Функции 119

  1. Уходящие функции 119

  2. Неуходящие функции 120

  3. Функции LC 120

  4. Функции Set 120

  5. Функции Get 120




  1. Структуры 120

  2. Макросы 121

  3. Имена переменных 121

  4. Простые типы данных 121

  5. Рекомендации 122

Глава 7. Структура приложений в Symbian OS 124

7.1. Системные классы 124

  1. ПлатформаиЮ 126

  2. Серия 60 126

7.2. Базовая составляющая приложения 127

  1. Класс Application 127

  2. Класс Document 128

  3. Класс AppUl 128

  4. Класс Арр View 128

7.3. Первая программа 129

  1. Работа системы 130

  2. Класс CTestApplication 131

  3. Класс CTestDocument 133

  4. Класс CTestAppUi 136

  5. Класс CTestAppView 140

  6. Oan\nTest_Main.cpp 144

  7. Файл Test.pan 145

  8. Файл Test.hrh 145

  9. Файл Test_Caption.rss 146




  1. Файл Test.rss 147

  2. Файл bld.inf 149

  3. Файл Test.mmp 149

  4. Файл Test.pkg 151

7.4. Уникальные идентификаторы UID 154

  1. Идентификатор UID1 155

  2. Идентификатор UID2 155

  3. Идентификатор UID3 155

7.4.5. Идентификаторы платформы 156

7.5. Добавляем иконку в приложение 157

7.5.1. Добавление AIF ресурсов в C++ BuilderX 162

  1. Сборка проекта компилятором 163

  2. Создание установочного пакета SIS 166

Глава 8. Интерфейс пользователя 167

8.1. Платформа UIQ 167

  1. Панель Application Picker 167

  2. Панель Menu bar 167

  3. Клиентская область экрана 168

  4. ПанельТоо1Ьаг 168

  5. Панель Status bar 168

8.2. Серия 60 168

  1. Панель Status Pane 168

  2. Панель Main Pane 169

  3. Панель Control Pane 169




  1. Ресурсы 169

  2. Меню 170

  3. Локализация 181

  4. Получение данных от пользователя 186

  5. Списки 187




  1. Вертикальный список 188

  2. Список Grid 192

  3. Список Setting 193

  4. Демонстрационный пример Setting List 199

Глава 9. Программирование графики 223

  1. Рисование линий 224

  2. Рисуем прямоугольник 230

  3. Рисуем эллипс 235

  4. Рисуем часть круга 238

  5. Текст и шрифт 242

  6. Работа с изображениями 251

Глава 10. Программирование Java приложений 255

10.1. Платформа Java 2 ME 255

  1. Конфигурация CLDC 256

  2. Профили MIDP 257

10.2. Мидлет 258

  1. Структура работы мидлета 259

  2. Экранная навигация 263

10.3. Высокоуровневый пользовательский интерфейс 265

  1. Класс TextBox 265

  2. Класс List 265

  3. Класс Alert 266

  4. Класс Form 266

  5. Класс ChoiceGroup 267

  6. Класс Stringltem 267

  7. Класс TextField 267

  8. Класс DateField 267

  9. Класс Spacer 268

10.3.10. Класс Imageltem 268

  1. Bluetooth Security Manager 296

  2. Bluetooth Service Discovery Agent 296

  3. Bluetooth Service Discovery Database 297

  4. Bluetooth Sockets 298

  5. Bluetooth Ul 300

  6. Calendar Conversion 301

  7. Certificate Manager 302

  8. Character Conversion 306

  9. Character Conversion Plug-In Provider 306

  10. Character Representation of Real Numbers 306

  11. Circular Buffers 307

  12. Client/Server 307

  13. Clipboard 307

  14. Clock 307

  15. Command Line Parsing 308

  16. CommDb 309

  17. Connection Management 310

  18. Contacts Model 311

  19. Contact Views 314

  20. Converter Architecture 315

  21. Cookies Support 316

  22. Critical Sections 317

  23. Data Application Model 317

  24. Date and Time Handling 319

  25. DBMS Columns, Column Sets and Keys 320

  26. DBMS Database Incremental Operations 321

  27. Interface to DBMS Databases 321

  28. DBMS Rowsets 322

  29. DBMS Sharing Databases 323

  30. Descriptor Arrays 323

  31. Descriptors 324

  32. Device drivers 326

  33. Dial 327

  34. Dynamically Loading Link Libraries 328

  35. Dynamic Arrays 328

  36. Dynamic Buffers 330

  37. ECom Plug-in Architecture 330

  38. Embedding 331

  39. Encrypted Streams and Stores 332

  40. Environment Change Notifier 332

  1. ETel Core 332

  2. Extended Notifier Framework 332

  3. Fax Client 333

  4. Fax Client MTM... 333

  5. Fax Header Line 334

  6. Fax Store 334

  7. File Logging 335

  8. File Server Client Side 335

  9. Writing a file system 337

  10. Filestores 339

  11. Fixed Size Arrays 339

  12. Fonts 340

  13. Fonts and Bitmaps 341

  14. Front End Processors 341

  15. FTP Engine 342

  16. Graphics 343

  17. Graphics Foundations 344

  18. Grid Foundations 345

  19. Grid 345

  20. Hardware Abstraction Layer (HAL) 346

  21. Handles 346

  22. Hardware Accelerator 347

  23. Help Model 349

  24. HTTP Client 350

  25. HTTP Message 353

  26. HTTP Transport Layer 353

  27. Image Converter 354

  28. Incremental Matcher 355

  29. Interface to Resource Files 355

  30. Internet Mail 356

  31. Internet Protocol Utility 360

  32. Interrupt architecture 364

  33. IPSec 364

  34. IrDA Sockets 365

  35. InfraRed Transfer Picture Protocol 365

  36. Lexical Analysis 366

  37. Literal Descriptors 366

  38. Locale Settings 367

  39. Log Engine 369

  40. Maths Services 370

  1. Media Server Common Classes 370

  2. Memory Streams 371

  3. Message Scheduled Sending 371

  4. Message Window 373

  5. MMS MTM Client 373

  6. MMS Utilities 374

  7. MultiMediaCard 376

  8. NetDial 379

  9. Notification Services 379

  10. Onboard Camera 379

  11. Open Font System 379

  12. Package Buffers 380

  13. PC Connect Device-side BAL 380

  14. PhoneBook Synchroniser 381

  15. Power management framework 381

  16. Print Framework 381

  17. Print Preview 382

  18. Printing 382

  19. Raw Memory 383

  20. Recognizers 383

  21. Reference counting objects 384

  22. Security 384

  23. Semaphores 385

  24. Serial Protocol Module 385

  25. SIM Application Toolkit 385

  26. SMS GSM Utilities 386

  27. SMS Utilities 388

  28. Sockets Client 389

  29. Sound Device 390

  30. Stores 391

  31. Store Streams 392

  32. System Agent 392

  33. System Sounds 393

  34. TCP/IP 393

  35. Test Console 395

  36. Text and Text Attributes 395

  37. Text Views 397

  38. Timers and Timing Services 399

  39. Transfer Buffer 399

  40. To-do List 399

  1. UID Manipulation 400

  2. Ul Control Framework 400

  3. Ul Graphics Utilities 403

  4. Uikon Core 404

  5. Uikon Resources 406

  6. USB Client 408

  7. WAP Messaging 410

  8. WAP SMS Protocol Module 411

  9. WAP Stack 411

  10. Window Server Client Side 412

Приложение 2. Техническая документация

телефонов Symbian OS 413

ArimaU300 413

BenQP30 414

FomaF880iES 414

FomaF900i 415

FomaF900it 415

FomaF901ic 416

FomaF2051 416

LenovoP930 417

Motorola A920 417

Motorola A925 418

Motorola A1000 418

Motorola A1010 419

Nokia N-Gage 419

Nokia N-Gage QD 420

Nokia 3230 420

Nokia 3650/3600 421

Nokia 3660/3620 421

Nokia 6260 422

Nokia 6600 422

Nokia 6620 423

Nokia 6630 423

Nokia 6670 424

Nokia 6680 424

Nokia 6681 425

Nokia 6682 425

Nokia 7610 426

Nokia 7650 426

Nokia 7710 427

Nokia 9210 427

Nokia 9290 428

Nokia 9300 428

Nokia 9500 429

Panasonic X700 429

Panasonic X800 430

SendoX 430

SendoX2 431

Siemens SX1 . 431

Sony Ericsson P800 432

Sony Ericsson P900 432

Sony Ericsson P900i 433

Nokia N70 -....433

Nokia N90 434

Nokia N91 434

Приложение З. Интернет ресурсы 435

Компания Symbian Ltd 435

Инструментальные средства разработчика 435

Интегрированные средства разработки приложений 436

Компании 436

Тематические сайты 437

Русскоязычные сайты 437

Приложение 4. Обзор компакт-диска 438

Список используемых источников 439

Предметный указатель 440

Предисловие

Человечество не стоит на месте и развивается, внедряя в жизнь все новые и новые технологии. Буквально три-четыре года назад мы радовались простенькому теле­фону с монохромным дисплеем, весом и размером далеким от своего названия — мобильный телефон. А сейчас удивить телефоном с цветным дисплеем и боль­шим разрешением экрана сложно, да и это уже не роскошь, а обычное средство для связи с другими людьми. Технологии развиваются быстрыми темпами и кро­ме своего прямого назначения, в мобильные телефоны встраиваются камеры, ра­дио-, видео- и МРЗ-проигрыватели, появилась возможность просмотра офисных документов. Словосочетание «мобильный офис», вошедшее в наш обиход, очень ярко и красочно рисует ситуацию, сложившуюся на мобильном рынке. Человек хочет одно небольшое по весу и размеру устройство, с хорошим разрешением эк­рана и с возможностями настольной компьютерной системы среднего уровня. Возможно ли это? Жизнь показывает, что да - ведущие компании мира, произво­дящие телефоны, придумывают различные дизайны, пытаясь какими-то неимо­верными способами совместить полноценную клавиатуру, большой экран и при этом оставить телефон действительно мобильным устройством. Кому-то удается сделать это лучше, кому-то хуже, но движение идет в этом направлении и именно такой вариант развития, скорее всего, и определит будущее мобильных технологий.

Все телефоны делятся на две категории - это устройства, работающие на основе прошивки и устройства, работающие под управлением операционной сис­темы. Телефоны с прошивкой несколько ограничены в своих дополнительных возможностях, но поддержка технологии Java 2 ME значительно улучшает обста­новку, делая возможной загрузку в телефон программ сторонних производите­лей, тем самым, дополняя устройство функциями, которые изначально в этом те­лефоне не были предусмотрены. Телефоны с операционной системой намного мощнее и имеют много встроенных программ с возможностью инсталляции на устройство дополнительных программ написанных на языках программирова­ния C++, Java 2 ME, OPL и даже Visual Basic.

На мировом рынке в сегменте операционных систем для мобильных уст­ройств сейчас два потенциальных конкурента - Windows Mobile и Symbian OS. Операционная система Windows Mobile менее распространенная и более доро­гая. Телефоны под управлением этой операционной системы стоят достаточно дорого и рассчитаны скорее на корпоративных клиентов, чем на рынок массового потребления. Но ситуация может резко измениться - рынок КПК (карманные персональные компьютеры) начинает медленно, но верно, сдавать свои позиции. Не даром даже такой монстр как компания Sony собрала свои вещички и ушла с рынка КПК. Компании, выпускающие КПК, со временем могут оказаться у раз­битого корыта и массовый переход к телефонам с функциями КПК не за горами,

что уже и происходит. Тем более что за границей перестраивать производство умеют хорошо. Это только у нас до сих пор выпускается автомобиль квадратной формы - ВАЗ-2109, запущенный в производство очень давно.

Операционная система Symbian изначально создавалась для работы на теле­фонах, в отличие от Windows Mobile, которая оптимизирована под мобильные устройства. Компания с одноименным названием - Symbian Ltd. — является со­здателем этой операционной системы. Пакет акций Symbian Ltd. уже давно поде­лен между компаниями производящими основной поток мобильных телефонов. По сведениям на 1 января 2005 года процентное соотношение владением акций выглядит следующим образом:

  • Nokia-47,9%;

  • Ericsson- 15,6%;

  • Sony Ericsson - 13,1%;

  • Panasonic - 10,5%;

  • Siemens - 8,4%;

  • Samsung - 4,5%.

Мобильные устройства под управлением операционной системы Symbian де­лятся на два вида: коммуникаторы и смартфоны.

В самой Symbian OS телефоны делятся еще по платформам, представляю­щим определенный интерфейс пользователя, - это платформы UIQ, серия 60, се­рия 80 и серия 90. Все они имеют общий принцип работы, поэтому если вы знако­мы, скажем, с серией 60, то вы знаете где-то 80% возможностей платформы UIQ. Рассмотреть все платформы в одной книге невозможно, поэтому за основу взята серия 60, а это около 70-80% мобильных устройств в мире, но мы обязательно будем уделять внимание и другим платформам.

Структура книги

  1   2   3   4   5   6   7   8   9   ...   45

Похожие:

Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconКашина о. А., Андрианова а. А. Практикум по программированию на языке java удк 004. 43
Практикум по программированию на языке Java.: Учебное пособие/ О. В. Пинягина, О. А. Кашина, А. А. Андрианова – Казань: Казанский...
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconОбщие представления о языке Java 6
Виртуальная Java-машина, байт-код, jit-компиляция. Категории программ, написанных на языке Java 9
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 icon1 Союзное строительство в торгово-экономической сфере
Способы и средства самозащиты от противоправных посягательств, ответственность правонарушителей, правовые последствия для потерпевшей...
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconАрхитектура компьютера (Часть 2) Луганск 20 11 удк 004. 031., 004. 032. 8
Архитектура компьютера (часть 2): учебное пособие. – Л.: Лну имени Тараса Шевченко, 2011. – 190 с
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconЕгэ по математике советы и рекомендации
Егэ по математике – сложный и ответственный экзамен. Это четыре часа напряженной самостоятельной работы. Без мобильных телефонов,...
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconОтчёт по прессе 4 августа
Компания lg представила в рамках смены "Технологии добра" Всероссийского молодежного инновационного форума "Селигер-2010" свои новейшие...
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconТрансляция кода из Groovy в Java в Intellij idea
Это Scala [10], Clojure [11], Groovy [12], Jruby [13] и Jython [14]– портированные версии Ruby и Python. Все они появились как альтернатива...
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconВ. В. Кулямин Лекция Язык программирования Java и технологии Java
После разработки архитектуры можно переходить к разработке отдельных компонентов будущей системы
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconПроблемы и перспективы павлодар 2008 удк 004: 37. 02
Рекомендовано ученым советом Павлодарского государственного университета им. С. Торайгырова
Мобильных телефонов на c++ и java 2 me м осква, 2005 удк 004. 438 iconМетодические указания к лабораторным работам для студентов экономических специальностей Могилев 2012 удк 004. 42: 004. 43 Ббк 32. 97 Рекомендовано к опубликованию учебно-методическим управлением гу впо «Белорусско-Российский университет»
Методические указания к лабораторным работам для студентов экономических специальностей
Разместите кнопку на своём сайте:
Библиотека


База данных защищена авторским правом ©lib.znate.ru 2014
обратиться к администрации
Библиотека
Главная страница