Программирование для карманных компьютеров - [11]
ActiveSync Remote Display
Эта утилита позволяет вывести экран Pocket PC в окно настольного компьютера. В это окно передаются все движения мыши, при помощи чего имитируется работа стилуса, и клавиатурный ввод. Несмотря на то что при работе Remote Display происходит замедление работы, это очень полезная утилита, без которой иногда просто не обойтись. Утилита имеет режимы масштабирования изображения, поэтому экран Pocket PC отображается корректно даже на больших мониторах. Внешний вид окна программы показан на рис. 2.8.
Рис. 2.8. Окно ActiveSync Remote Display.
CECopy
Эта утилита командной строки предназначена для копирования файлов и каталогов на устойство, подключенное в данный момент к ActiveSync. Учитывая то, что сам пакет ActiveSync имеет средство для визуального копирования файлов, эта утилита вряд ли может быть названа самой полезной из состава Mobile Developer Power Toys.
Синтаксис запуска утилиты приведен ниже.
CeCopy [ключи командной строки] <источник> <приемник>
Ключ командной строки /is указывает утилите, что необходимо перезаписывать имеющиеся файлы, а ключ /s заставляет в процессе копирования учитывать подкаталоги, копируя информацию с воспроизведением иерархической структуры вложенности. Так, команда cecopy /s *.dll dev: \windows копирует все файлы с расширением. dll из текущего каталога в каталог windows на Pocket PC.
Convert_PPC_DAT_to_SP_XML
Утилита Convert_PPC_DAT_to_SP_XML позволяет из текущего файла. cab для Pocket PC генерировать файл для создания установочного файла, который можно использовать на смартфонах.
Hopper
Этот инструмент позволяет воспроизвести на устройстве ситуацию эктремального пользовательского ввода в разных режимах и довести при помощи этого краш-теста устройство до зависания или перезагрузки. При этом программа ведет подробный файл отчета и в момент краха устройства снимает копию экрана и сохраняет ее. Также в лог-файле сохраняются текущие параметры распределения памяти.
Программа позволяет измерить устойчивость приложения при большом потоке сигналов пользовательского ввода и время реакции приложения на пользовательский ввод данных.
Hopper имитирует нажатия стилусом на управляющих элементах окон и ввод данных с программной клавиатуры устройства.
JShell
Это весьма полезная программа для отладки приложений на устройстве. Эта утилита выводит на экран список процессов, загруженных модулей и распределения памяти устройства. Внешний вид запущенной программы показан на рис. 2.9.
Для того чтобы запустить программу, ее необходимо скопировать на устройство и затем запустить с соответствующими ключами командной строки или без них. Ключи командной строки приведены в следующем списке.
? Ключ -r
? Ключ -f заставляет приложение выводить информацию каждые 60 с, запуская программу с приоритетом реального времени.
? Ключ -m активирует утилиту mi и выводит результаты в файл отчета каждые 4 часа. Файл отчета записывается с именем miXXX.txt в каталог \Му Documents, где XXX это номер файла-отчета.
? Ключ -w позволяет запустить команду win и записывать результаты в файл отчета каждые 4 часа. Файл отчета записывается с именем winXXX.txt в каталог \Му Documents, где XXX это номер файла-отчета.
Когда вы запускаете программу без ключей командной строки, то она запускается с графическим интерфейсом пользователя (см. рис. 2.9), и можно вручную запустить одну из команд. Для того чтобы команда была выполнена, необходимо нажать кнопку «!». Результат выполнения команды выводится в окно JShell.
Предназначение всех команд приведено в следующем списке.
? Команда win выводит список всех окон.
? Команда gi proc отображает список всех активных в системе процессов.
? Команда кр # позволяет завершить выполнение процесса с номером, указанным в качестве параметра #.
? Команда gi thrd позволяет отобразить список потоков.
? Команда gi mod позволяет вывести список модулей (DLL).
? Команда gi mod «хх» позволяет вывести список модулей (DLL), имена которых начинаются с подстроки хх.
? Команда mi отображает информацию о распределении памяти.
? Команда mi full отображает подробную информацию о распределении памяти.
? Команда s <арр>
PPC_Command_Shell
Это простой командный интрепретатор, выводящий на экран консольное окно (рис. 2.10).
Содержимое каталога arm необходимо скопировать в каталог Windows на самом Pocket PC и затем нужно запустить файл cmd.exe. Список возможных команд выводится на экран, если набрать команду help и нажать клавишу Enter.
RAPI_Debug
Эта утилита состоит из двух частей. Программу bugtrap.exe необходимо скопировать на устройство в каталог Windows, а программу RapiDbg.exe – запустить на рабочей станции. Естественно, при отладке надо установить соединение при помощи ActiveSynс. После запуска на рабочей станции программа RapiDbg.exe свяжется с устройством и отобразит на экране отладочную информацию (распределение памяти, запущенные процессы и потоки), и останется в режиме ожидания, отслеживая и отображая весь пользовательский ввод, который будет происходить на Pocket PC. Окно программы на рабочей станции показано на рис. 2.11.
Разработчику часто требуется много сторонних инструментов, чтобы создавать и поддерживать проект. Система Git — один из таких инструментов и используется для контроля промежуточных версий вашего приложения, позволяя вам исправлять ошибки, откатывать к старой версии, разрабатывать проект в команде и сливать его потом. В книге вы узнаете об основах работы с Git: установка, ключевые команды, gitHub и многое другое.В книге рассматриваются следующие темы:основы Git;ветвление в Git;Git на сервере;распределённый Git;GitHub;инструменты Git;настройка Git;Git и другие системы контроля версий.
Рассмотрено все необходимое для разработки, компиляции, отладки и запуска приложений Java. Изложены практические приемы использования как традиционных, так и новейших конструкций объектно-ориентированного языка Java, графической библиотеки классов Swing, расширенной библиотеки Java 2D, работа со звуком, печать, способы русификации программ. Приведено полное описание нововведений Java SE 7: двоичная запись чисел, строковые варианты разветвлений, "ромбовидный оператор", NIO2, новые средства многопоточности и др.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
В книге рассказывается история главного героя, который сталкивается с различными проблемами и препятствиями на протяжении всего своего путешествия. По пути он встречает множество второстепенных персонажей, которые играют важные роли в истории. Благодаря опыту главного героя книга исследует такие темы, как любовь, потеря, надежда и стойкость. По мере того, как главный герой преодолевает свои трудности, он усваивает ценные уроки жизни и растет как личность.
Python - объектно-ориентированный язык сверхвысокого уровня. Python, в отличии от Java, не требует исключительно объектной ориентированности, но классы в Python так просто изучить и так удобно использовать, что даже новые и неискушенные пользователи быстро переходят на ОО-подход.