Платформа Silverlight для разработки мобильных приложений для Windows Phone 7
1. Платформа Silverlight для разработки мобильныхприложений Сергей Звездин Microsoft Regional Director http://zwezdin.com/ http://twitter.com/sergun sergey@zwezdin.com
2. О чем будем говорить 2 Общие сведения Пользовательский интерфейс Сенсоры Определение местоположения Уведомления ….и много демонстраций!
3. Платформа Windows Phone 7 Единая аппаратная платформа CPU/GPU RAM Разрешение экрана Пальцевый ввод Разработка приложений Silverlight XNA 3 Платформа Windows Phone 7 800 или 480 480 или 320
4. Windows Phone 7 Framework 4 Windows Phone Frameworks Camera Device Integration Launchers & Choosers Windows Phone Controls PhoneApplicationPage PushNotification WebBrowserControl Sensors PhoneApplicationFrame Silverlight Presentation and Media XNA Frameworks for Games Controls Drawing IsolatedStorage Drawing GamerServices Navigation Shapes Markup Media Audio Media Graphics Content Input Application Object Common Base Class Library Diagnostics Reflection IO Runtime Resources Globalization Text Location Net Collections ComponentModel Configuration Security Threading ServiceModel Linq Платформа Windows Phone 7
5. Жизненный цикл приложения Tombstoning Происходит когда приложение теряет фокус Возможные причины: кнопка «Назад», кнопка «Старт», клик на Toast-уведомление, запуск системных диалогов, телефонный звонок Обработчики событий вApp.xaml.cs События Application_Launching, Application_Activated, Application_Deactivated, Application_Closing 5 Платформа Windows Phone 7
6. Пользовательский интерфейс 6 Direct3D поверхность Страница приложения Стартовый экран System Tray Уведомления SIP Входящие звонки App Bar Пользовательский интерфейс
7. Страницы приложения Frame Контейнер элементов приложения Содержит страницы и системные элементы (system tray + application bar) Класс PhoneApplicationFrame Page Заполняет содержимое страницы Отслеживает ориентацию Отслеживает события навигации Наследник класса PhoneApplicationPage 7 Frame Page Содержимое страницы Пользовательский интерфейс
8. Модель UI 8 Мобильное приложение Отображает UI страниц приложения при обращении к страницам через URI Web-приложение Отображает содержимое, используя протокол HTTP, которое адресуется через URL Shell frame Обращение к страницам, генерация UI и обработка событий навигации Web browser Обращение к HTTP-ресурсам, генерация их и обработка событий навигации Сессии и стеки возврата Группировка последовательностей обращений к страницам для пользователя История и вкладки Группировка обращений к HTTP-ресурсам Пользовательский интерфейс
9. Навигация Вперед NavigationService.Navigate(new Uri(“/MyPage.xaml”,uriKind.RelativeOrAbsolute)); Назад NavigationService.GoBack(); Обработка нажатия на кнопку «Назад» OnBackKeyPress 9 Пользовательский интерфейс
10. Состояния страницы 10 Пользовательский интерфейс Визуальное отображение страницы Сохраняется в приложении для возможности восстановления Удаляется когда сессия приостанавливается Состояние Данные, описываемые состояние страницы (куки в браузере) Пользовательский интерфейс
12. Элементы управления Богатый набор элементов управления Аналогичные элементам управления для настольных приложений Дополнительные возможности для мобильных элементов управления SIP 12 Элементы управления
13. Элементы управления Border Button Canvas CheckBox Grid HyperlinkButton Image ListBox MediaElement Messagebox ProgressBar RadioButton ScrollViewer TextBlock TextBox WebBrowser ToolKitControls(WrapPanel) 13 Элементы управления
14. Ввод информации Mouse events Уже реализованы для вас Элементы SIP иWebBrowserуже поддерживают жесты ScrollViewer Как в Silverlight Жесты FLICK иPAN бесплатно! Raw Touch.FrameRendered 14 Ввод информации
16. Жесты Обработка На системном уровне (WM_GESTURE). Tap, Double Tap, Pan, Flick, Touch and Hold * Multi-Touch Pinch, Stretch Манипуляции Все наследникиUIElementsимеют события ManipulationStarted, ManipulationData,ManipulationCompleted 16 Ввод информации
22. Application Bar Toolbar Не более 4 значков Можно задать уровень прозрачности Меню позволяет определить больше позиций Можно определить в декларативно в XAML или в коде Значки Размер – 48x48 пикс. Прозрачный фон Автоматически добавляется обводка 22 Application Bar
23. Launchers & Choosers Launcher Запускает одно из встроенных приложений, позволяющее выполнить пользователю определенную задачу Пользователю не возвращается никаких данных Пример: PhoneCallTask Chooser Запускает одно из встроенных приложений, позволяющее выполнить пользователю определенную задачу и возвращающее пользователю необходимые данные После завершения задачи полученные данные возвращаются пользователю Пример: PhotoChooserTask 23 Launchers
26. Хранение информации Isolated Storage Аналогичный механизм – в Silverlight Настройки и данные Данные защищены и изолированы API предоставляет доступ к файлам и папкам Ограничений на размер нет Windows Azure Может использоваться для хранения данных в облаке Простой доступ из Windows Phone 7 26 Хранение информации
28. Push Notifications 28 Уведомления Push-клиент Tile Toast Открытие канала Данные (app) URI для взаимодействия Данные (toast) Данные(tile) App Отправка URI на сервер Отправка данных клиенту Push-сервис Ваш сервис ! Отправка push-данныхиспользуя URI
29. Push Notifications 29 Уведомления 14 15 New photos online! Seattle, WA: Sunny and 85 degrees
31. Итоги Обзор платформы Windows Phone 7 Жизненный цикл приложения и модель UI Навигация, элементы управления Ввод информации, жесты, сенсоры Определение местоположения Application Bar, launchers, choosers Push Notifications, WebBrowser, scripting Ссылки Портал для разработчиковhttp://developer.windowsphone.com/ Ресурсы для разработчиковhttp://go.microsoft.com/?linkid=9670344 Windows Phone 7 JumpStarthttp://r.ch9.ms/WP7MSL1USBL/ Windows Phone 7 Developer Training Kithttp://channel9.msdn.com/learn/courses/WP7TrainingKit/ Silverlight for Windows Phone Toolkithttp://silverlight.codeplex.com 31 Платформа Silverlight для разработки мобильныхприложений