1 / 97

Технический обзор возможностей платформы Windows Phone

Технический обзор возможностей платформы Windows Phone. Стас Павлов s tas.pavlov@microsoft.com @ stasus. платформа. Железо. Емкостной дисплей 4 или более точек контакта. 800 . Сенсоры A-GPS, Accelerometer, Compass, Light, Proximity, Gyro. Камера 5 мегапикселей или более.

bozica
Download Presentation

Технический обзор возможностей платформы Windows Phone

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. Технический обзор возможностей платформы Windows Phone Стас Павлов stas.pavlov@microsoft.com @stasus

  2. платформа

  3. Железо Емкостной дисплей 4 или более точек контакта 800 Сенсоры A-GPS, Accelerometer, Compass, Light, Proximity, Gyro Камера 5 мегапикселей или более Мультимедиа возможности Минимальная спецификация, акселерация кодеков Память 256MB RAM или более, 8GB Flash или более GPU Акселерация инструкций DirectX 9 CPU Qualcomm MSM7x30, MSM8x55 800Mhz или более Аппаратные кнопки | Назад, Старт, Поиск 480

  4. API Ваше приложение Приложения Frameworks Silverlight XNA HTML/JavaScript CLR (.NET CF) App Model UI Model Cloud Integration Xbox LIVE Bing Location Push notifications Windows Live ID App management Licensing Chamber isolation Software updates Shell frame Session manager Direct3D Compositor Kernel Hardware BSP Security Networking Storage A-GPS Accelerometer Light CompassProximity Media Wi-Fi Radio GraphicsGyro Hardware

  5. Сервисы Tools Runtime Phone Emulator Sensors Media Data Location Samples Documentation Phone Xbox LIVE Notifications Guides Community .NET Framework managed code sandbox Packaging and Verification Tools Device Cloud Publishing Services Platform Services Notifications App Deployment Registration Marketplace Validation MO and CC Billing Location Identity Feeds Certification Business Intelligence Social Maps Publishing Update Management

  6. Windows Phone SDK: Visual Studio 2010 Express Edition Expression Blend 4 for Windows Phone Windows Phone Extensions for XNA Game Studio 4.0 Windows Phone Developer Registration Tool Application Deployment Tool Windows Phone Emulator Performance and Memory Profiler Marketplace Test Kit Инструменты http://create.msdn.com

  7. Возможности

  8. Расширение базовых приложений

  9. разработка

  10. Платформа – 2 типа приложений Современные приложения, управляемые событ-ми. Быстрое создание богатых графических приложений HTML/Javascript Устоявшаяся, надёжная, популярная технология Высокопроизводительная игровая платформа Быстрое создание многоэкранных 2D и 3D игр Богатая content pipeline Устоявшаяся технология для Xbox, Windows, и Zune/WP7 Приложения (и игры) Игры(и приложения)

  11. Silverlight

  12. Типы проектов

  13. Что такое Silverlight в Windows Phone XAML .NET CF C#, VB.NET, F#

  14. XAML • Наглядный язык разметки • Поддержка включений файлов • Полная интеграция в Visual Studio и Expression Blend • Code Behind • Data Binding • Sample Data • Storyboards • Transform

  15. Silverlight Controls

  16. Silverlight Toolkit

  17. Hub`ы: панорамы и пивоты

  18. Декомпозиция экрана System Tray Direct3D Surface AppPage Notification Volume SIP Incoming Call App Bar

  19. Frame Контейнер верхнего уровня PhoneApplicationFrame class Page Управляет содержимым экрана Потомок PhoneApplicationPage class Кнопка «Назад» Навигация

  20. Можно ограничивать Можно обрабатывать В большинстве случаев достаточно автоматической обработки Ориентация SupportedOrientations="Portrait" SupportedOrientations="PortraitOrLandscape" 21

  21. Input Scope <TextBoxInputScope="Number"...

  22. Панель приложения • до 4х иконок • 48х48, ч/б и без круга • остальные пункты в дополнительном меню • помните о текущем контексте приложения

  23. XNA

  24. Мощная математическая библиотека Content Pipeline Работа с 2D графикой Полноценная 3D графика (DirectX 9) Поддержка шейдеров (встроенные) Работа совместно с Silverlight Что может XNA?

  25. Производительность Frameworks designed for performance Frameworks designed for performance Frameworks designed for performance Разработаны с требованием производителности Опробованный успех на игровых сценариях В будущее WP7 – с управляемым кодом! Нет лишней сборки мусора • 4+ года профилирования и оптимизации • Эффективная работа на WP7 • Оптимизированные мат.библиотеки • API с переходом на нативный код

  26. XNA Framework Игры Ваш код Ваш контент Компоненты Starter Kits Extended Framework Application Model Content Pipeline Core Framework Graphics Audio Input Math Storage Networking Networking Gamer Services Gamer Services* Платформа .NET CF DirectX

  27. Использует .NET Framework как основу Игры пишутся наC# Generics LINQ И т.д. Игры запускаются как управляемый код Безопасное исполнение кода Управление памятью Поддержка Windows, Xbox,Windows Phone 7 XNA для разработчика

  28. 3D • Полноценная поддержка 3D на уровне платформы • Аппаратное ускорение для всего, что нужно и можно ускорять аппаратно 29

  29. Игровой цикл «Все игры делают это» Типичный игровой цикл Инициализация Обработка событий Загрузка ресурсов • Загрузка контента • Обновление состояния сцены • Отрисовка сцены Вычисление сцены Управление ресурсами – критично на мобильной платформе даже для небольших приложений Определение хода игры Освобождение ресурсов Обратная связь 30

  30. Игровой цикл «Все игры делают это» Игровой цикл XNA Framework Initialize() Update() LoadContent() • Load content when they start • Update the game world • Draw the game world XNA: 30 кадров в секунду на Windows Phone Draw() UnloadContent() 31

  31. Игровой цикл Пример Game Loop • protectedoverridevoid Update(GameTimegameTime) • { • // Allows the game to exit • if (GamePad.GetState(PlayerIndex.One).Buttons.Back == • ButtonState.Pressed) • this.Exit(); • // TODO: Add your update logic here • base.Update(gameTime); • } • protectedoverridevoid Draw(GameTimegameTime) • { • GraphicsDevice.Clear(Color.CornflowerBlue); • // TODO: Add your drawing code here • base.Draw(gameTime); • }

  32. Content Pipeline • Унифицированная платформа для хранения, обработки и извлечения игровых ресурсов • Набор “importers” для стандартных типов ресурсов • Разработчики могут создавать свои importers • Ресурсы хранятся в специальном репозитории

  33. Content Pipeline Importers

  34. 5 эффектов BasicEffect DualTextureEffect AlphaTestEffect SkinnedEffect EnvironmentMapEffect

  35. Интеграция XNA и Silverlight • «Обычная» страница • SharedGraphicsDeviceManager • UIRenderElement

  36. Internet Explorer HTML5

  37. WebBrowser Control – наше все <Grid x:Name="LayoutRoot" Background="Transparent"> <Grid x:Name="ContentPanel"> <phone:WebBrowserIsScriptEnabled="True"IsGeolocationEnabled="True"/> </Grid> </Grid>

  38. Загрузить HTML Вызвать «хост» Выполнить скрипт на странице 3 базовые возможности

  39. Navigate / NavigateString window.external.Notify WebBrowser.InvokeScript 3 базовые возможности

  40. Фреймворки PhoneGap http://phonegap.com

  41. PhoneGap Plugins

  42. Фреймворки http://jquerymobile.com/

  43. jQuery • Знакомый • Развивающийся • Настраиваемый

  44. jQuery Mobile + PhoneGap  • Работает  • Есть проблемы с совместимостью разных версий http://wiki.phonegap.com/w/page/36868306/UI%20Development%20using%20jQueryMobile

  45. IE9 Cascading Style Sheets (CSS3) Media & Graphics 2D Transforms Colors Module HTML5 Canvas HTML5 Video Background/Borders Namespaces SVG Fonts Module Values & Units HTML5 Audio Media Queries Selectors Additional Standards & Web Applications Support DOM Core Level 2/.3 Geolocation Semantic Elements Traversal & Range ECMAScript 5 XML Parse/Serial DOM Events Level 2/3 Selector APIs Level 2 DataURIs L2 HTML & Style ICC Color Profiles CSSOM View

  46. модель исполнения приложений

  47. Жизненный цикл: состояния FAS (Fast Application Switching) выгружено из памяти; сохранены специальныесловари в памяти; потоки остановлены,ресурсы освобождены

  48. Жизненный цикл: события и методы Lunching Event Application Closing Event Application Running OnNavigateFrom Method Page OnNavigateTo Method Page Deactivated Event Application Activated Event Application Tumbstoned Dormant

More Related