97

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

  • Upload
    bozica

  • View
    52

  • Download
    3

Embed Size (px)

DESCRIPTION

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

Citation preview

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

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

Стас Павлов[email protected]@stasus

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

платформа

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

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

800

480

Аппаратные кнопки | Назад, Старт, Поиск

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

API

Kernel Hardware BSP

App Model UI Model Cloud Integration

Приложения

App managementLicensingChamber isolationSoftware updates

Shell frame Session managerDirect3DCompositor

Xbox LIVEBingLocationPush notificationsWindows Live ID

Ваше приложение

A-GPS Accelerometer Light Compass ProximityMedia Wi-Fi Radio Graphics Gyro

SecurityNetworkingStorage

FrameworksSilverlight XNA HTML/JavaScript

CLR (.NET CF)

Hardware

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

CloudDevice

Phone EmulatorSamples DocumentationGuides Community

Packaging and Verification Tools

NotificationsLocation Identity Feeds

MapsSocial

App Deployment RegistrationValidation

CertificationPublishing

MarketplaceMO and CC Billing

Business IntelligenceUpdate Management

СервисыTools

Publishing ServicesPlatform Services

Sensors Media DataXbox LIVE Notifications

.NET Framework managed code sandbox

LocationPhone

Runtime

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

Инструменты 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

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

ВозможностиКамера

Прямой доступ к изображению и вспышке

Фото и видео

Сеть

Сокеты

Информация о соединении

Сенсоры

GPS

Акселерометр

Компас

Гироскоп

Сенсор движения

Данные

SQL CE

Контакты

Календарь

Запуск и Выбор

Bing Maps

E-mail

Номер телефона

Адрес

Элементы управления

Базовые элементы

Silverlight Toolkit

Еще больше – от сообщества

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

Расширение базовых приложенийУведомления

Tile, Toasl, Raw

Deep Toast

Расширения

Search

Music

Photos

Тайлы

Заголовок, текст, обратная сторона

Обновление программно и через веб-сервис

Множественные тайлы

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

разработка

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

Платформа – 2 типа приложений

Современные приложения, управляемые событ-ми.Быстрое создание богатых графических приложенийHTML/JavascriptУстоявшаяся, надёжная, популярная технология

Высокопроизводительная игровая платформаБыстрое создание многоэкранных 2D и 3D игрБогатая content pipelineУстоявшаяся технология для Xbox, Windows, и Zune / WP7Игры

(и приложения)Приложения

(и игры)

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

Silverlight

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

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

13

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

Что такое Silverlightв Windows Phone

XAML .NET CFC#, VB.NET, F#

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

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

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

Silverlight Controls

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

Silverlight Toolkit

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

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

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

Декомпозиция экрана

App Bar

SIP

App Page

Incoming Call

System TrayNotification

Volume

Direct3D Surface

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

Навигация Frame

Контейнер верхнего уровня PhoneApplicationFrame class

Page Управляет содержимым экрана Потомок PhoneApplicationPage

class Кнопка «Назад»

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

Ориентация

Можно ограничивать Можно обрабатывать

В большинстве случаев достаточно автоматической обработки

SupportedOrientations="Portrait"

SupportedOrientations="PortraitOrLandscape"

21

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

Input Scope

<TextBox InputScope="Number" ...

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

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

дополнительном меню помните о текущем

контексте приложения

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

XNA

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

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

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

Frameworks designed for performance

Производительность

Frameworks designed for performance

Разработаны с требованием

производителностиFrameworks designed

for performanceОпробованный успех

на игровых сценарияхВ будущее WP7 – с

управляемым кодом!

Нет лишней сборки мусора

Оптимизированные мат.библиотеки

API с переходом на нативный код

4+ года профилирования и оптимизации Эффективная работа на WP7

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

XNA Framework

Core FrameworkGraphics Audio Input Math Storage

Networking Gamer Services

Extended FrameworkApplication Model Content Pipeline

Игры

Starter KitsВаш код Ваш контент Компоненты

ПлатформаDirectX .NET CF

Networking Gamer Services*

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

XNA для разработчика Использует .NET Framework как основу Игры пишутся на C#

Generics LINQ И т.д.

Игры запускаются как управляемый код Безопасное исполнение кода Управление памятью Поддержка Windows, Xbox, Windows Phone 7

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

3D Полноценная поддержка 3D на

уровне платформы Аппаратное ускорение для всего,

что нужно и можно ускорять аппаратно

29

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

Игровой цикл«Все игры делают это»

Загрузка контентаОбновление состояния сценыОтрисовка сцены

Управление ресурсами – критично на мобильной платформе даже для небольших приложений

Инициализация

Загрузка ресурсов

Освобождение ресурсов

Обработка событий

Вычисление сцены

Определение хода игры

Обратная связь

Типичный игровой цикл

30

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

Игровой цикл«Все игры делают это»

Load content when they startUpdate the game worldDraw the game world

XNA: 30 кадров в секунду на Windows Phone

Initialize() LoadContent()

UnloadContent()

Update()

Draw()

Игровой цикл XNA Framework

31

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

Пример Game LoopИгровой цикл

protected override void Update(GameTime gameTime){ // 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);}

protected override void Draw(GameTime gameTime){ GraphicsDevice.Clear(Color.CornflowerBlue);

// TODO: Add your drawing code here

base.Draw(gameTime);}

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

Content Pipeline Унифицированная платформа для хранения, обработки и

извлечения игровых ресурсов Набор “importers” для стандартных типов ресурсов

Разработчики могут создавать свои importers Ресурсы хранятся в специальном репозитории

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

Типы файлов

Названиеимпортера

Класс импортера

Выходной класс

.bmp, .dds, .dib, .hdr, .jpg, .pfm, .png, .ppm, .tga.

XNA Texture Importer

TextureImporter TextureContent

.fx XNA Effect Importer

EffectImporter EffectContent

.x XNA X File Importer

Ximporter NodeContent

.fbx XNA Autodesk FBX Importer

FbxImporter NodeContent

.xml XNA XML Importer

XmlImporter Object

.xap XNA XACT Project Importer

- -

Content PipelineImporters

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

5 эффектов

BasicEffect SkinnedEffect EnvironmentMapEffectAlphaTestEffectDualTextureEffect

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

Windows Phone

Интеграция XNA и Silverlight1. «Обычная» страница2. SharedGraphicsDeviceManager3. UIRenderElement

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

Internet Explorer HTML5

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

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

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

3 базовые возможности

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

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

3 базовые возможности

Navigate / NavigateString window.external.Notify WebBrowser.InvokeScript

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

ФреймворкиPhoneGap

http://phonegap.com

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

PhoneGap

Plugins

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

Фреймворки

http://jquerymobile.com/

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

jQuery

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

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

jQuery Mobile + PhoneGap• Работает

• Есть проблемы с

совместимостью разных версийhttp://wiki.phonegap.com/w/page/36868306/UI%20Development%20using%20jQuer

yMobile

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

IE9Media & Graphics

HTML5 VideoHTML5 Canvas

SVGHTML5 Audio

Cascading Style Sheets (CSS3)

Background/Borders

2D Transforms

Fonts ModuleMedia Queries

NamespacesColors Module

Values & UnitsSelectors

Additional Standards & Web Applications Support

Traversal & Range

DOM Core Level 2/.3

DOM Events Level 2/3L2 HTML & Style

ECMAScript 5Geolocation

Selector APIs Level 2ICC Color Profiles

XML Parse/Serial

Semantic Elements

DataURIsCSSOM View

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

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

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

Жизненный цикл: состоянияRunning

DormantTumbstoned

в памяти; потоки остановлены,ресурсы освобождены

выгружено из памяти; сохранены специальныесловари

FAS (Fast Application Switching)

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

Жизненный цикл: события и методы

Running

Lunching EventApplication

OnNavigateTo MethodPage

OnNavigateFrom Method

Page

Closing EventApplication

Dormant

Deactivated EventApplication

Tumbstoned

Activated EventApplication

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

Восстановление состояния Dormant

приложение в памяти потоки остановлены ресурсы освобождены

Tumbstoned приложение не в памяти сохранены специальные словари

PhoneApplicationService.State PhoneApplicationPage.State

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

Демосохранение и восстановление состояния

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

многозадачность

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

Подходы к многозадачности «Честная» и прожорливая- Работаем, пока можем- Система сложных правил выгрузки приложений

Desktop, Windows Mobile, Android

Мнимая и экономная- Приложение выгружается при деактивации UI- Ключевой фактор – сохранение состояния

Ранние iPhone, Windows Phone 7

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

Подходы к многозадачности Умная-Похожа на мнимую-Фоновые агенты

iPhone 4, Windows Phone codename “Mango”-Возможны уведомления из агентов в приложения

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

Жизненный цикл: состоянияRunning

DormantTumbstoned

в памяти; потоки остановлены,ресурсы освобождены

выгружено из памяти; сохранены специальныесловари

FAS (Fast Application Switching)

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

Fast Application Switching• Мультизадачность• Быстрое переключение• Быстрое восстановление

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

Другие варианты?Задача РеализацияПереключение задач пользователем

Fast App Switching

Уведомления и сигналы Background Notification

Загрузка фалов Background Transfer

Уведомления о событиях Push Notifications

Регулярные действия по расписанию; toast/tile updates; data pre-caching; etc.

Periodic Background Agent

Проигрывание музыки Background Audio Player

Синхронизация данных Resource-Intensive AgentGPS-tracking Run under the lock screen

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

Background Notification Serviceusing Microsoft.Phone.Scheduler;

private void AddReminder(object sender, RoutedEventArgs e){ Reminder reminder = new Reminder("CompanyMeeting"); reminder.BeginTime = DateTime.Now.AddSeconds(15); reminder.Content = "Soccer Fields by The Commons"; reminder.Title = "Microsoft Annual Company Product Fair 2009"; reminder.RecurrenceType = RecurrenceInterval.Yearly; reminder.NavigationUri = new Uri("/Reminder.xaml", UriKind.Relative);

ScheduledActionService.Add(reminder);}

AlarmsRemindersusing Microsoft.Phone.Scheduler;

private void AddAlarm(object sender, RoutedEventArgs e){ Alarm alarm = new Alarm("Long Day"); alarm.BeginTime = DateTime.Now.AddSeconds(15); alarm.Content = "It's been a long day. Go to bed."; alarm.Title = "Alarm";

ScheduledActionService.Add(alarm);}

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

Демоnotifications

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

Background Transfer Service

downloadsMy WP Book App

Cheese & WinGreat MysterieWP Tips & Tric

Great Mysteries o

CloudBackground Transfer Service <2 GB

<20 MB

<~3.0 MB

GET

POST

void DownloadWithBTS(Uri sourceUri, Uri destinationPath){ btr = new BackgroundTransferRequest(sourceUri, destinationUri); btr.TransferStatusChanged += BtsStatusChanged; btr.TransferProgressChanged += BtsProgressChanged; BackgroundTransferService.Add(btr);}

void BtsProgressChanged(object sender, BackgroundTransferEventArgs e){

DrawProgressBar(e.Request.BytesReceived);

}

using Microsoft.Phone.BackgroundTransfer;

void GetCurrentProgress(){ DrawProgressBar(btr.BytesReceived);}

completed

My WPBook App

ISO Store

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

Демоbackground file transfer

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

Background Audio – HTML5

CloudBrowser

www.html5audio.

<audio id="audio_tag" controls="controls" src="http://html5audio.com/Demo1.mp3" onplay="StartPlayback()" onended="NextTrack()"</audio>

Zune Service

function NextTrack() { musicPlayer = document.getElementById("audio_tag"); musicPlayer.src = 'http://html5audio.com/Demo2.mp3'; }

++

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

Демоhtml5 audio

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

Background Audio – По URL

current

Ode to WPBy MSFTMan

0:09

fav0:100:110:12

Player = BackgroundAudioPlayer.Instance;player.PlayStateChanged += new eventHandler(PlayStateChanged);

AudioTrack track = new AudioTrack(new Uri("/audiofile.mp3"),…);

void PlayStateChanged(object sender, EventArgs e){ switch (player.PlayerState) { case PlayState.FastForwarding: // Move to next track break; }}

CloudZune ServiceMy Music

App

ISO Store

player.Play();

++

++Buffer

Buffer

Background Audio – Streaming

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

Демоbackground audio agent

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

Приложения + Агенты

Системные

сервисыISO StoreCloud

Разные процесс

ы

LogicUX

myapp.dllПриложение ОС

Logicmyappagent.

dll

Единое приложени

е

Разработка

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

Жизненный цикл агента

Создан Работает

Нечего делать

Неактивен

Приоста-

новлен

«Убит»Ошибка!

stoppingАгенту пришло

время поработать

Система вызывает код

агентаОтсутствие работы

- NotifyCompleteАгенту больше нечего делать

Система приостанавлива

ет агент, а возможно, и

убивает

Фатальная ошибка: Abort() и

«убийство»

Если системе необходимо завершить

агента: OnCancel(); агент должен быстро

завершить работу

Агенты могут быть «убиты» из-за

нехватки ресурсов

Приостановленные агенты могут быть

выгружены

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

Агенты: общие правила Метод выполнения

Периодически On Idle Можно комбинировать

Инициализируются всегда приложением Сохраняют состояние между перезагрузками

Управляемы через настройки До 18 агентов

Агент «живет» не более 14 дней (но можно делать renew)

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

Агенты: общие правилаПериодические агенты Выполнение

Каждые 30 минут Длительность

15 секунд Сценарии

Синхронизация данных

Трекинг местоположения

On Idle агенты Выполнение

Внешнее питание, Wi-Fi или USB

Длительность 10 минут

Сценарии Загрузка данных Синхронизация больших

объемов …

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

Демоbackground agents

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

использование возможностей платформы

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

ИнтеграцияКамера

Захват видео

«Прямой» доступ к камере и вспышке

Networking

Сокеты

HTTP

Сенсоры

GPS

Accelerometer

Compass

Gyro

Motion

Data

SQL CE

Phone Contacts

Phone Calendar

Launchers & Choosers

Bing Maps

E-mail

Phone Number

Address Chooser

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

Демовозможности платформыlaunchers & choosers

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

Доступ к пользовательским данным Chooser Tasks

EmailAddressChooserTask PhoneNumberChooserTask AddressChooserTask

Microsoft.Phone.UserData для прямого доступа Contacts Appointments

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

Демопрямой доступ к контактам и встречам

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

Расширения

Push Notifications

App Connect

Search

Music

Photos

Тайлы

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

Демовозможности платформыlive tiles

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

Push Notifications Raw Tile Toast

Deep Toast Связь уведомлений и страниц приложения страницами

<wp:Notification xmlns:wp="WPNotification">

    <wp:Toast>

        <wp:Text1>World News Updates</wp:Text1> <wp:Text2>Egypt braces for march in palace square</wp:Text2> <wp:Param>/detailsPage.xaml?storyid=186435</wp:Param>    </wp:Toast>

</wp:Notification>

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

Демовозможности платформыpush notification

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

Локальное хранилищеIsolated StorageПриложения хранят данные в Isolated Storage неструктурированные данные Обычные файлы и папки Настройки

Настройки

AppУправление

файлами

Файлы приложения

App Data Folder

WP7 Isolated Storage APIs

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

Демовозможности платформыWebClient &IsolatedStorage

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

Локальное хранилищеБаза данных

ПриложениеCustom

Data Context

App Objects

System.Data.Linq

Identity Manageme

ntChange Tracking

Update Processing

Object Materializatio

n

Microsoft.Phone.Data.Internal

Core ADO.NET (System.Data)SQLCE ADO.NET Provider

(System.Data.SqlServerCe)

SQL CE DB

.Call System.Linq.Queryable.Select( .Call System.Linq.Queryable.Where( .Constant(Table(Wines)), '(.Lambda #Lambda1)), '(.Lambda #Lambda2)) .Lambda #Lambda1(db.Wines $w) { $w.Country == “USA" } .Lambda #Lambda2(w.Country $w) { $w.Name }

var query = from w in db.Wines where w.Country == “USA" select w.Name;

select Namefrom Wineswhere Country = “USA”

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

Демовозможности платформыSQL CE

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

Геолокация Отдаёт географические координаты, высоту, скорость и направление

при инициализации можно указать стандартная или высокая точность

GeoCoordinateWatcher myGeoWatcher = new GeoCoordinateWatcher(); myGeoWatcher.MovementThreshold = 100.0f;

myGeoWatcher.StatusChanged += new EventHandler<GeoPositionStatusChangedEventArgs>(…); myGeoWatcher.PositionChanged += new EventHandler<GeoPositionChangedEventArgs<GeoCoordinate>>(…);

ThreadPool.QueueUserWorkItem(startMyGeoWotcher, myGeoWatcher);. . . . static void startMyGeoWotcher(object GeoWatcher) { ((GeoCoordinateWatcher)GeoWatcher).TryStart(false, TimeSpan.FromSeconds(60)); }

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

Акселерометр Отдаёт вектор ускорения устройства в гравитационных единицах

включает гравитацию сориентирован относительно устройства

Accelerometer myAccel = new Accelerometer(); myAccel.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<AccelerometerReading>>(…);

myAccel.Start();

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

Гироскоп Скорость вращения устройства вокруг каждой из осей

в радианах/сек

Gyroscope myGyro = new Gyroscope(); myGyro.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<GyroscopeReading>>(…);

myGyro.Start();

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

Компас (магнитометр) Точность измерения в градусах Направление на магнитный полюс (в градусах, против часовой стрелки) Направление на географический полюс (в градусах, против часовой стрелки) Данные магнитометра в виде вектора в микротеслах

Compass myCompass = new Compass(); myCompass.CurrentValueChanged += new EventHandler<SensorReadingEventArgs<CompassReading>>(…);

myCompass.Start();

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

ДемоИспользование геолокационных данных, акселерометра и карты

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

Motion sensor

Motion Sensor

[cos γ .cos α −cos β .sin α+sin β .sin γ .cosα sin β . sin α +cos β . sin γ . cos α

cos γ . sin α cos β .cos α+ sin β . sin γ .sin α − sin β .cos α+cos β . sin γ .sin α

− sin γ sin β .cos γ cos β .sin γ ] Акселерометр

Компас

Гироскоп

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

Windows Phone

Поддержка motion sensor Motion.IsSupported

API доступно и без гиросокопа Специфичные данные для каждого физического

сенсора Accelerometer (g) Gyro (рад/сек) Compass (градусы)

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

Camera APISilverlight 4 WebCam APIПростая запись видеоМожно использовать существующий кодЗапись аудио и видео в файл

PhotoCameraФотоКнопки камерыВспышка и фокус

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

ДемоИспользование камеры

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

ресурсы

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

С чего начать http://create.msdn.com

http://go.microsoft.com/?linkid=9772716 http://msdn.microsoft.com/ru-ru/windowsphone/

http://www.techdays.ru/?Tag=Windows Phone 7 http://windowsteamblog.com/windows_phone/ http://aka.ms/ruwp7dev - презентация и примеры

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

спасибо

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

© 2011 Microsoft Corporation. All rights reserved. Microsoft, Windows, Windows Vista and other product names are or may be registered trademarks and/or trademarks in the U.S. and/or other countries.

The information herein is for informational purposes only and represents the current view of Microsoft Corporation as of the date of this presentation. Because Microsoft must respond to changing market conditions, it should not be interpreted to be a commitment on the part of Microsoft, and Microsoft cannot guarantee the accuracy of any information provided after the date of this presentation. MICROSOFT MAKES NO WARRANTIES, EXPRESS, IMPLIED OR STATUTORY, AS TO THE INFORMATION IN THIS PRESENTATION.