Начинаем работать с виджетами в Windows Mobile 6.5

Оригинал: https://blogs.msdn.com/windowsmobile/archive/2009/06/04/getting-started-with-widgets-on-windows-mobile-6-5.aspx

Так как набор инструментов разработки для Windows Mobile 6.5 уже вышел — самое время начинать разработку виджетов!

Необходимое программное обеспечение:

  1. Образы WM 6.5 для эмуляторов
  2. Среда для веб-разработки по вашему выбору
  3. Центр мобильных устройств Windows (в Windows Vista или Windows 7), либо Active Sync 4.5

Начнём с запуска эмулятора и его подключения в качестве виртуального устройства. Эмуляторы можно запускать через "Пуск" -> Windows Mobile 6 SDK -> Stand Alone Emulator Images -> . Менеджер эмуляторов располагается в следующем месте: C:\Program Files\Microsoft Device Emulator\1.0\dvcemumanager.exe.

Когда оба приложения запущены, откройте Центр мобильных устройств Windows или Active Sync, выберите в меню "Параметры подключения", в выпадающем меню под опцией "Разрешить подкл. к след. объектам" выберите "DMA" и нажмите ОК.

Теперь в менеджере эмуляторов нажмите "Обновить" и найдите в списке запущенный эмулятор. Это должен быть некий GUID в разделе "Others". Нажмите на него правой кнопкой мыши и выберите "Cradle" для подключения к ПК.

В появившемся окне выберите "Подключиться, не настраивая моё устройство". Для проверки запустите в эмуляторе Internet Explorer и попробуйте открыть любой сайт.

А теперь начинается самое интересное!

Для разработки виджета нам необходимо выполнить три простых действия.

1) Разработка код виджета
Вы можете разработать приложение любой сложности, но в моём простом примере мы остановимся на небольшом HTML-документе (widget.htm):

<html>

<head>

<title>Крутой виджет!</title>

</head>

<body>

Я крутой windows mobile 6.5 виджет

</body>

</html>

2) Создание пакета с виджетом
Раз у нас уже есть сверхфункциональный виджет, нам необходимо создать файл с манифестом (чтобы фреймворк знал, как себя вести с нашим виджетом), следуя стандарту W3C Widget Standard (В Windows Mobile 6.5 мы поддерживаем драфт от 22 декабря 2008). Для упрощения нашей задачи, воспользуемся следующим небольшим манифестом (скопируйте текст в config.xml и поместите в ту же папку, что и widget.htm):

<?xml version="1.0" encoding="utf-8" ?>

<widget version="1.0"

xmlns="https://www.w3.org/ns/widgets"

id="">

<name>мой первый виджет</name>

<content src="widget.htm" type="text/html" />

<access network="true" />

<icon src="icon.png"/>

<description>Мой первый виджет,

много денег на нём не заработать,

но зато он симпатичный!</description>

</widget>

Не забудьте также поместить в эту папку иконку под названием icon.png.

На данном этапе у вас должно быть 3 файла (config.xml, icon.png и widget.htm), которые нам необходимо запаковать. Выделите файлы в проводнике, нажмите правую кнопку мыши и выберите Отправить -> Сжатая Zip-папка. Имейте в виду, что запаковывать необходимо именно файлы, а не папку с ними, так как важно, чтобы config.xml находился в корне zip-контейнера. Полученный zip-файл просто переименуйте в widget.wgt.

3) Установка и запуск виджета
В проводнике подключенный эмулятор должен быть виден Как Pocket_PC/Мобильное устройство.

Скопируйте наш widget.wgt на устройство в Мои документы. Теперь откройте проводник в эмуляторе и кликните мышью на наш пакет.

Начнётся процесс установки, после чего вы увидите наш виджет на экране!

Чтобы не устанавливать виджет снова и снова, можно воспользоваться папкой Program Files\Widgets\User\<WidgetID> в эмуляторе.

Идентификатор виджета генерируется при установке и получается автоинкрементом последнего установленного виджета. Вы можете изменять файлы в этом каталоге по своему усмотрению. Чтобы виджет "подхватил" изменения, требуются его перезапуск.

В будущих публикациях я продолжу делиться информацией о Widget API, как расширять возможности виджет-фреймворка, советы по отладке и т.д. Сегодня я лишь хотел помочь разобраться в том, с чего начать разработку виджетов.

Также вы можете посмотреть мой доклад на TechDays, где я рассказываю об API и некоторых возможностях фреймворка. Для доступа к докладу вам будет необходимо зарегистрироваться на сайте Microsoft Tech Days и найти там MBL302 Windows Mobile Web and Widgets: Leveraging web technologies to build experiences for Windows Mobile.

Оставайтесь с нами, развлекайтесь с виджетами и не забывайте делиться своими мыслями... Кстати, пока не забыл! Вы можете загружать свои творения в marketplace :) За подробностями обращайтесь на сайт https://developer.windowsmobile.com.

Перевод: Андрей Коновалов