Upload
sergey-zwezdin
View
2.668
Download
3
Embed Size (px)
DESCRIPTION
From Windows Phone 7 Workshop at Moscow (27.09.2010)
Citation preview
7
Сергей ЗвездинMicrosoft Regional Directorhttp://zwezdin.com/http://twitter.com/[email protected]
Платформа Silverlight для разработки мобильныхприложений
О чем будем говорить
Пользовательский интерфейс
Общие сведения
Сенсоры
Определение местоположения
Уведомления
….и много демонстраций!
3 Windows Phone
Платформа Windows Phone 7 Единая аппаратная платформа
CPU/GPU RAM Разрешение экрана Пальцевый ввод
Разработка приложений Silverlight XNA
Платформа Windows Phone 7
480 или 320
80
0 и
ли
48
0
4 Windows Phone
Windows Phone 7 Framework
Платформа Windows Phone 7
Windows Phone Frameworks
PhoneApplicationPage PushNotification WebBrowserControl SensorsPhoneApplicationFrame
Camera Device IntegrationLaunchers &
ChoosersWindows Phone
Controls
Silverlight Presentation and Media
XNA Frameworks for Games
NavigationShapes Markup Media
Controls Drawing IsolatedStorage
AudioMedia GraphicsInput
Drawing GamerServices
Content
Common Base Class Library
Collections ComponentModel Configuration
DiagnosticsReflection IO
Security Threading
Runtime Resources Globalization TextLocation Net
ServiceModel Linq
Application Object
5 Windows Phone
Жизненный цикл приложения Tombstoning
Происходит когда приложение теряет фокус
Возможные причины: кнопка «Назад», кнопка «Старт», клик на Toast-
уведомление, запуск системных диалогов, телефонный звонок
Обработчики событий в App.xaml.cs События
Application_Launching, Application_Activated, Application_Deactivated, Application_Closing
Платформа Windows Phone 7
6 Windows Phone
Пользовательский интерфейс
Пользовательский интерфейс
App Bar
SIP
Страница приложения
Стартовый экран
Входящие звонки
System TrayУведомления
Direct3D
поверхность
7 Windows Phone
Страницы приложения Frame
Контейнер элементов приложения
Содержит страницы и системные элементы (system tray + application bar)
Класс PhoneApplicationFrame Page
Заполняет содержимое страницы Отслеживает ориентацию Отслеживает события навигации Наследник класса
PhoneApplicationPage Пользовательский интерфейс
Frame
Page
Содержимое страницы
8 Windows Phone
Модель UI
Пользовательский интерфейс
Мобильное приложениеОтображает UI страниц приложения при обращении к страницам через URI
Web-приложениеОтображает содержимое, используя протокол HTTP, которое адресуется через URL
Shell frameОбращение к страницам, генерация UI и обработка событий навигации
Сессии и стеки возвратаГруппировка последовательностей обращений к страницам для пользователя
Web browserОбращение к HTTP-ресурсам, генерация их и обработка событий навигации
История и вкладкиГруппировка обращений к HTTP-ресурсам
9 Windows Phone
Навигация Вперед
NavigationService.Navigate(new Uri(“/MyPage.xaml”,uriKind.RelativeOrAbsolute));
Назад NavigationService.GoBack();
Обработка нажатия на кнопку «Назад» OnBackKeyPress
Пользовательский интерфейс
10 Windows Phone
Состояния страницы
Пользовательский интерфейс
Сохраняется в приложении для возможности восстановления
Удаляется когда сессия приостанавливается
Пользовательский интерфейсВизуальное
отображение страницы
СостояниеДанные,
описываемые состояние страницы
(куки в браузере)
Демонстрация
Пользовательский интерфейс и навигация
12 Windows Phone
Элементы управления Богатый набор
элементов управления
Аналогичные элементам управления для настольных приложений
Дополнительные возможности для мобильных элементов управления SIP
Элементы управления
13 Windows Phone
Элементы управления Border Button Canvas CheckBox Grid HyperlinkButton Image ListBox MediaElement
Messagebox ProgressBar RadioButton ScrollViewer TextBlock TextBox WebBrowser ToolKit Controls
(WrapPanel)Элементы управления
14 Windows Phone
Ввод информации Mouse events
Уже реализованы для вас Элементы SIP и WebBrowser уже
поддерживают жесты ScrollViewer
Как в Silverlight Жесты FLICK и PAN бесплатно!
Raw Touch.FrameRendered
Ввод информации
15 Windows Phone
SIP Стандартные раскладки
виртуальной клавиатуры для разных ситуаций
Ввод информации
16 Windows Phone
Жесты Обработка
На системном уровне (WM_GESTURE). Tap, Double Tap, Pan, Flick, Touch and
Hold * Multi-Touch
Pinch, Stretch Манипуляции
Все наследники UIElements имеют события ManipulationStarted, ManipulationData,
ManipulationCompletedВвод информации
Демонстрация
Элементы управления
19 Windows Phone
Сенсоры Акселерометр
Ввод информации
+Y
-Y
+X-X
+Z
-Z
20 Windows Phone
Местоположение
Местоположение
WiFi
+ Точность- Энергопотребление- Скорость
- Точность+ Энергопотребление+ Скорость
+/- Точность+/- Энергопотребление+/- Скорость
GPS
Сеть GSM
Демонстрация
Определение местоположения
22 Windows Phone
Application Bar Toolbar
Не более 4 значков Можно задать уровень
прозрачности Меню позволяет определить
больше позиций Можно определить в
декларативно в XAML или в коде Значки
Размер – 48x48 пикс. Прозрачный фон Автоматически добавляется
обводкаApplication Bar
23 Windows Phone
Launchers & Choosers Launcher
Запускает одно из встроенных приложений, позволяющее выполнить пользователю определенную задачу
Пользователю не возвращается никаких данных Пример: PhoneCallTask
Chooser Запускает одно из встроенных приложений,
позволяющее выполнить пользователю определенную задачу и возвращающее пользователю необходимые данные
После завершения задачи полученные данные возвращаются пользователю
Пример: PhotoChooserTaskLaunchers
24 Windows Phone
Launchers & ChoosersLaunchers EmailComposeTask MarketplaceDetailTask MarketplaceHubTask MarketplaceReviewTask MarketplaceSearchTask MediaPlayerLauncher PhoneCallTask SearchTask SMSComposeTask WebBrowserTask
Choosers CameraCaptureTask EmailAddressChooserTask PhoneNumberChooserTask PhotoChooserTask SaveEmailAddressTask SavePhoneNumberTask
Launchers
Демонстрация
Launchers
26 Windows Phone
Хранение информации Isolated Storage
Аналогичный механизм – в Silverlight Настройки и данные Данные защищены и изолированы API предоставляет доступ к файлам и
папкам Ограничений на размер нет
Windows Azure Может использоваться для хранения
данных в облаке Простой доступ из Windows Phone 7
Хранение информации
Демонстрация
Хранение информации
28 Windows Phone
Push Notifications
Уведомления
Push-клиент
Push-сервис
Ваш сервис
Tile
App
Toast
Отправка push-данныхиспользуя URI
Отправка данных
клиенту
Отправка URI на сервер
Открытие каналаURI для взаимодействияДанные (app)
Данные (toast)
Данные (tile)
!
29 Windows Phone
Push Notifications
Уведомления
New photos online!
Seattle, WA: Sunny and 85 degrees
1415
Демонстрация
Push Notifications
31 Windows Phone
Итоги Обзор платформы
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
Платформа Silverlight для разработки мобильных приложений
Вопросы?
Спасибо за внимание!
Сергей ЗвездинMicrosoft Regional Directorhttp://zwezdin.com/http://twitter.com/[email protected]