Содержание Предисловие 14 Структура книги 15 Что вы должны знать 16 Программное обеспечение 16 Исходные коды 16 Благодарности 17 Глава 1. Знакомство с Symbian OS 18 1.1. Работа в Symbian OS 20 1.2. Навигация 22 1.3. Интернет 23 1.4. Java-приложения 25 1.5. Программы наС++ 27 1.6. Обзор программ для Symbian OS 28 1.6.1. Файловые менеджеры 29 1.6.2. Веб-браузеры 29 1.6.3. Мультимедиа 30 1.6.4. Игры 32 Глава 2. Среда программирования IDE Metrowerks CodeWarrior for Symbian OS - 33 2.1. Установка CodeWarrior for Symbian Personal v2.8.3 35 2.2. Знакомство с Metrowerks CodeWarrior for Symbian Personal v2.8.3 38 2.2.1. Меню File 40 2.2.2. Меню Edit 40 2.2.3. Меню View.. 41 2.2.4. Меню Search 42 2.2.5. Меню Project 43 2.2.6. Меню Debug 44 2.2.7. Меню Window 45 2.2.8. Меню Help 46 2.2.9. Панель инструментов 46 2.2.10. Окно Workspace 47 2.2.11. Текстовый редактор 49 2.3. Настройка Metrowerks CodeWarrior 51 2.3.1. Группа General 52 2.3.2. Группа Editor 56 2.3.3. Группа Debugger 61 2.4. Создание проекта 63 2.5. Импорт проекта 65 2.6. Компиляция проекта 67 2.7. Создание установочного пакета 69 Глава 3. IDE C++ BuilderX Mobile Studio 72 3.1. Установка IDEC++BuilderX Mobile Studio 73 3.2. Изучаем C++BuilderX 75 3.2.1. Меню File 76 3.2.2. Меню Edit 77 3.2.3. Меню Search 78 3.2.4. Меню View 78 3.2.5. Меню Project 79 3.2.5. Меню Run 79 3.2.6. Меню Team 80 3.2.7. Меню Wizards 80 3.2.8. Меню Tools 80 3.2.9. Меню Window 80 3.2.10. Меню Help 81 3.2.11. Панель инструментов 81 3.2.12. Панель Project 82 3.3. Подключение SDK 83 3.4. Создание проекта 84 3.5. Импорт проекта 86 3.6. Компиляция проекта 87 3.7. Создание установочного пакета 88 Глава 4. Инструментальные средства разработчика 89 4.1. Программные средства компании Sony Ericsson 90 4.1.1. Установка SDK 91 4.1.2. Эмуляторы телефонов Sony Ericsson 94 4.2. Программные средства компании Nokia 95 4.2.1. Серия 60 97 4.2.2. Серия 80 98 4.2.3. Серия 90 100 4.2.4. Программа SISAR 102 Глава 5. Архитектура Symbian OS 105 5.1. Аппаратная архитектура 106 5.2. Системные библиотеки 107 5.3. Программная архитектура 108 5.3.1. Ядро и аппаратная часть системы 109 5.3.2. Базовые сервисы 109 5.3.3. Сервисы операционной системы 110 5.3.4. Пользовательские сервисы 112 5.3.5. Инфраструктура пользовательского интерфейса 113 5.4. Файловая система 113 5.4.1. Диск Z 114 5.4.2. Диск С 114 5.4.3. Диски 115 5.4.4. ДискЕ 115 5.4.5. Оперативная память 116 Глава 6. Основы программирования в Symbian OS 117 6.1. Классы 118 6.1.1. КлассыС 118 6.1.2. Классы R 118 6.1.3. КлассыТ 118 6.1.4. КлассыМ 119 6.1.5. Статические классы 119 6.2. Функции 119 6.2.1. Уходящие функции 119 6.2.2. Неуходящие функции 120 6.2.3. Функции LC 120 6.2.4. Функции Set 120 6.2.5. Функции Get 120 6.3. Структуры 120 6.4. Макросы 121 6.5. Имена переменных 121 6.6. Простые типы данных 121 6.7. Рекомендации 122 Глава 7. Структура приложений в Symbian OS 124 7.1. Системные классы 124 7.1.1. ПлатформаиЮ 126 7.1.2. Серия 60 126 7.2. Базовая составляющая приложения 127 7.2.1. Класс Application 127 7.2.2. Класс Document 128 7.2.3. Класс AppUl 128 7.2.4. Класс Арр View 128 7.3. Первая программа 129 7.3.1. Работа системы 130 7.3.2. Класс CTestApplication 131 7.3.3. Класс CTestDocument 133 7.3.4. Класс CTestAppUi 136 7.3.5. Класс CTestAppView 140 7.3.6. Oan\nTest_Main.cpp 144 7.3.7. Файл Test.pan 145 7.3.8. Файл Test.hrh 145 7.3.9. Файл Test_Caption.rss 146 7.3.10. Файл Test.rss 147 7.3.11. Файл bld.inf 149 7.3.12. Файл Test.mmp 149 7.3.13. Файл Test.pkg 151 7.4. Уникальные идентификаторы UID 154 7.4.1. Идентификатор UID1 155 7.4.2. Идентификатор UID2 155 7.4.3. Идентификатор UID3 155 7.4.5. Идентификаторы платформы 156 7.5. Добавляем иконку в приложение 157 7.5.1. Добавление AIF ресурсов в C++ BuilderX 162 7.6. Сборка проекта компилятором 163 7.7. Создание установочного пакета SIS 166 Глава 8. Интерфейс пользователя 167 8.1. Платформа UIQ 167 8.1.1. Панель Application Picker 167 8.1.2. Панель Menu bar 167 8.1.3. Клиентская область экрана 168 8.1.4. ПанельТоо1Ьаг 168 8.1.5. Панель Status bar 168 8.2. Серия 60 168 8.2.1. Панель Status Pane 168 8.2.2. Панель Main Pane 169 8.2.3. Панель Control Pane 169 8.3. Ресурсы 169 8.4. Меню 170 8.5. Локализация 181 8.6. Получение данных от пользователя 186 8.7. Списки 187 8.7.1. Вертикальный список 188 8.7.2. Список Grid 192 8.7.3. Список Setting 193 8.7.4. Демонстрационный пример Setting List 199 Глава 9. Программирование графики 223 9.1. Рисование линий 224 9.2. Рисуем прямоугольник 230 9.3. Рисуем эллипс 235 9.4. Рисуем часть круга 238 9.5. Текст и шрифт 242 9.6. Работа с изображениями 251 Глава 10. Программирование Java приложений 255 10.1. Платформа Java 2 ME 255 10.1.1. Конфигурация CLDC 256 10.1.2. Профили MIDP 257 10.2. Мидлет 258 10.2.1. Структура работы мидлета 259 10.2.2. Экранная навигация 263 10.3. Высокоуровневый пользовательский интерфейс 265 10.3.1. Класс TextBox 265 10.3.2. Класс List 265 10.3.3. Класс Alert 266 10.3.4. Класс Form 266 10.3.5. Класс ChoiceGroup 267 10.3.6. Класс Stringltem 267 10.3.7. Класс TextField 267 10.3.8. Класс DateField 267 10.3.9. Класс Spacer 268 10.3.10. Класс Imageltem 268 1.20. Bluetooth Security Manager 296 1.21. Bluetooth Service Discovery Agent 296 1.22. Bluetooth Service Discovery Database 297 1.23. Bluetooth Sockets 298 1.24. Bluetooth Ul 300 1.25. Calendar Conversion 301 1.26. Certificate Manager 302 1.27. Character Conversion 306 1.28. Character Conversion Plug-In Provider 306 1.29. Character Representation of Real Numbers 306 1.30. Circular Buffers 307 1.31. Client/Server 307 1.32. Clipboard 307 1.33. Clock 307 1.34. Command Line Parsing 308 1.35. CommDb 309 1.36. Connection Management 310 1.37. Contacts Model 311 1.38. Contact Views 314 1.39. Converter Architecture 315 1.40. Cookies Support 316 1.41. Critical Sections 317 1.42. Data Application Model 317 1.43. Date and Time Handling 319 1.44. DBMS Columns, Column Sets and Keys 320 1.45. DBMS Database Incremental Operations 321 1.46. Interface to DBMS Databases 321 1.47. DBMS Rowsets 322 1.48. DBMS Sharing Databases 323 1.49. Descriptor Arrays 323 1.50. Descriptors 324 1.51. Device drivers 326 1.52. Dial 327 1.53. Dynamically Loading Link Libraries 328 1.54. Dynamic Arrays 328 1.55. Dynamic Buffers 330 1.56. ECom Plug-in Architecture 330 1.57. Embedding 331 1.58. Encrypted Streams and Stores 332 1.59. Environment Change Notifier 332 1.60. ETel Core 332 1.61. Extended Notifier Framework 332 1.62. Fax Client 333 1.63. Fax Client MTM... 333 1.64. Fax Header Line 334 1.65. Fax Store 334 1.66. File Logging 335 1.67. File Server Client Side 335 1.68. Writing a file system 337 1.69. Filestores 339 1.70. Fixed Size Arrays 339 1.71. Fonts 340 1.72. Fonts and Bitmaps 341 1.73. Front End Processors 341 1.74. FTP Engine 342 1.75. Graphics 343 1.76. Graphics Foundations 344 1.77. Grid Foundations 345 1.78. Grid 345 1.79. Hardware Abstraction Layer (HAL) 346 1.80. Handles 346 1.81. Hardware Accelerator 347 1.82. Help Model 349 1.83. HTTP Client 350 1.84. HTTP Message 353 1.85. HTTP Transport Layer 353 1.86. Image Converter 354 1.87. Incremental Matcher 355 1.88. Interface to Resource Files 355 1.89. Internet Mail 356 1.90. Internet Protocol Utility 360 1.91. Interrupt architecture 364 1.92. IPSec 364 1.93. IrDA Sockets 365 1.94. InfraRed Transfer Picture Protocol 365 1.95. Lexical Analysis 366 1.96. Literal Descriptors 366 1.97. Locale Settings 367 1.98. Log Engine 369 1.99. Maths Services 370 1.100. Media Server Common Classes 370 1.101. Memory Streams 371 1.102. Message Scheduled Sending 371 1.103. Message Window 373 1.104. MMS MTM Client 373 1.105. MMS Utilities 374 1.106. MultiMediaCard 376 1.107. NetDial 379 1.108. Notification Services 379 1.109. Onboard Camera 379 1.110. Open Font System 379 1.111. Package Buffers 380 1.112. PC Connect Device-side BAL 380 1.113. PhoneBook Synchroniser 381 1.114. Power management framework 381 1.115. Print Framework 381 1.116. Print Preview 382 1.117. Printing 382 1.118. Raw Memory 383 1.119. Recognizers 383 1.120. Reference counting objects 384 1.121. Security 384 1.122. Semaphores 385 1.123. Serial Protocol Module 385 1.124. SIM Application Toolkit 385 1.125. SMS GSM Utilities 386 1.126. SMS Utilities 388 1.127. Sockets Client 389 1.128. Sound Device 390 1.129. Stores 391 1.130. Store Streams 392 1.131. System Agent 392 1.132. System Sounds 393 1.133. TCP/IP 393 1.134. Test Console 395 1.135. Text and Text Attributes 395 1.136. Text Views 397 1.137. Timers and Timing Services 399 1.138. Transfer Buffer 399 1.139. To-do List 399 1.140. UID Manipulation 400 1.141. Ul Control Framework 400 1.142. Ul Graphics Utilities 403 1.143. Uikon Core 404 1.144. Uikon Resources 406 1.145. USB Client 408 1.146. WAP Messaging 410 1.147. WAP SMS Protocol Module 411 1.148. WAP Stack 411 1.149. 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
|