Msdevcon.ru#msdevcon. Современные устройства и форм- факторы Windows 8 - как максимально охватить этот рынок Ромуальд Здебский Руководитель направления.

Презентация:



Advertisements
Похожие презентации
Msdevcon.ru#msdevcon. ПРОФИЛИРОВАНИЕ WINDOWS STORE ПРИЛОЖЕНИЙ Филипп Панфилов Mail.Ru Group.
Advertisements

Microsoft TechDays Заграничнов Александр Microsoft.
Microsoft TechDays Людмила Шайкина Quarta Consulting
Microsoft TechDays Евгений Марченков Эксперт по технологиям разработки ПО Microsoft.
Microsoft TechDays Николай Миляев консультант Microsoft.
Ромуальд Здебский Microsoft.
Microsoft TechDays Павел Маслов MVP, Directory Services.
Microsoft TechDays Иван Андреев Microsoft TechDays Игра состоит из: Графика Управление AI Звук.
Microsoft TechDays Евгений Марченков Эксперт по технологиям разработки ПО Microsoft.
Новые продукты Microsoft для повышения качества и эффективности образования Амит Миталь Старший вице-президент Microsoft по развитию социальных проектов.
Microsoft TechDays Марат Бакиров Эксперт по разработке ПО Microsoft
Msdevcon.ru#msdevcon. OPEN SOURCE РЕШЕНИЯ В ОБЛАКЕ WINDOWS AZURE Воркачёв Владимир.
Microsoft TechDays Золотовицкий Аркадий Директор по производству «Интеллектуальные системы»
Microsoft TechDays Константин Трещев MCITP: Enterprise Administrator
Microsoft TechDays Черкас Дмитрий Специалист по технологиям Microsoft.
На примере одного дня из жизни руководителя. Поездка в Милан.
Innovation Day. 12 основных фактов о SaaS-бизнесе Оценка стоимости размещения в Azure.
Microsoft TechDays Леонид Шапиро MCT ЦКО «Специалист»
Microsoft TechDays Богомолов Алексей MCP
Будущее режима /hosting в Exchange Иван Макаров Менеджер по маркетингу Exchange Microsoft Россия.
Транксрипт:

msdevcon.ru#msdevcon

Современные устройства и форм- факторы Windows 8 - как максимально охватить этот рынок Ромуальд Здебский Руководитель направления по технологической стратегии Microsoft

Цели доклада Систематизация понимания рынка Windows 8 устройств и форм-факторов Знание и понимание минимального обязательного набора функционала в приложении, чтобы охватить максимум рынка.

Что вы знаете (или легко можете узнать) Платформа разработки Windows 8 Разработка приложений под Windows 8: жизненный цикл приложений, контракты, тайлы и оповещения Создание приложений на XAML/C# Windows 8: Из веб-страницы в приложение

Содержание трека Windows 8 в этом году D01: Современные устройства и форм-факторы Windows 8 - как максимально охватить этот рынок С03: От простого к прекрасному: опыт (ре)дизайна приложений для Windows 8 С05: Профилирование Windows Store приложений С06: Expression Blend как инструмент скоростной интеграции дизайна Windows Store приложений D07: Лучшие практики обеспечения производительности Windows Store приложений E08: Переиспользование кода и компонентов при разработке Windows 8 и Windows Phone 8 приложений D09: Разработка в асинхронной парадигме в Windows Runtime – лучшие практики D10: Windows Runtime – взгляд внутрь реализации (deep dive) E10: Тык-тык, жмак-жмак, или как адаптировать сайт под Windows 8 D11: Windows Runtime приложения в корпоративной среде и сценариях - как это работает F11: Монетизация и продвижение приложений – наши секреты для российских разработчиков

Содержание Что происходит с рынком Windows 8. Где запускают приложения - устройства и их классы Ошибки и лучшие практики Адаптация под форм-факторы - клавиатуры, мыши и тачпады Адаптация под размеры экранов Различия в сенсорах Производительность – оптимизация и тестирование Мобильные сценарии

Состояние рынка Windows 8

Top 50 US Windows Store

1 млн загрузок ~100% кода Windows Phone Стабильный рост пользователей на 30% каждый месяц

Рынок Windows 8 сегодня в России Данные liveinternet.ru

Где запускают ваши приложения - устройства и их классы

Магазин Windows – устройства на Windows 8 Tablets Dockable tablets Convertibles UltrabooksFlipbooks Laptops Convertible all-in-ones DesktopsAll-in-ones

DEMO Типы Windows 8 - устройств Устройства, под которые разрабатываете, надо знать в лицо.

Классы устройств с точки зрения управления Сенсорный экран без клавиатуры/тачпада Сенсорный экран с клавиатурой/тачпадом Несенсорный экран с клавиатурой/тачпадом Высокое разрешение: высокая плотность пикселей, большой экран

DEMO Примеры, которые можно улучшить или перенять Чтобы охватить больше пользователей

Что важно учитывать Интеллектуальная поддержка клавиатуры и сенсоров Несенсорные экраны – ноутбуки, десктопы Трансформеры – очень популярный формат Даже чистый планшет с USB/Bluetooth Правильное масштабирование интерфейса Экраны большого разрешения/высокой плотности пикселей Ультрабуки, планшеты высокого разрешения, All-in-one Тестирование и оптимизация производительности Особое внимание - планшеты на базе SoC (System on Chip) – Atom (CloverTrail), ARM

Поддержка клавиатуры и сенсоров

Работа с клавиатурой Навигация по приложению с помощью Tab TabIndex = 1,2,3… IsTabStop = True/False IsHitTestVisible = True/False Shortcuts ToolTipService.ToolTip – для визуальной идентификации AutomationProperties.AcceleratorKey – для Accessibility (Narrator)

Работа с клавиатурой Поддержка Delete и других клавиш включая Shortcuts Используется routed events Для ряда событий Event Bubbling Нужно отслеживать нажатие Ctrl

DEMO Поддержка клавиатуры Продуктивность работы

Сенсоры ВстряхиваниеПоворот Переворачивание В темнотеВ помещенииНа улице Акселерометр Гироскоп Компас Наклон Свет Ориентация в пространстве

Наличие сенсоров Windows.Devices.Sensors.OrientationSensor _sensor; _sensor = Windows.Devices.Sensors.OrientationSensor.GetDefault(); if (_sensor == null) { ; // сценарий без использования сенсора } else { ; // основной сценарий }; Поддержку сценариев мыши и клавиатуры следует реализовывать всегда Проверка наличия сенсора и выбор сценария Лучше параллельно поддерживать несколько сценариев (с сенсором и без)

DEMO Проверка наличия сенсоров На различных устройствах

Масштабирование интерфейса

Используйте эмулятор для тестирования

Основные подходы Fixed Layout Игры (Доска) Битмапы фиксированных пропорций Adaptive layout Работа с контентом (включая просмотр, создание, управление) Множественные объекты

Fixed Layout Начинайте с базовых разрешений x768 и 1366x768 Используйте ViewBox для контента фиксированного размера Fill – заполнение пространства Uniform – сохранение пропорций без обрезания UniformToFill - сохранение пропорций с обрезанием Не помещайте во ViewBox адаптивные контролы (AppBar) Продумайте цвет рамки (Page.Background) в случае Uniform стиля Черный под цвет устройства или цвет приложения Используйте векторную графику и битмапы минимум вдвое большего разрешения Помните, что расположение для Snapped/Portrait лучше задавать отдельным Layout (Expression Blend – ApplicationViewStates)

DEMO Магический ViewBox На различных разрешениях

Adaptive Layout - структура Определите регионы приложения и стратегию масштабирования для каждого Пропишите для каждой ячейки в Grid/GridLayout

Adaptive Layout – отображение контента Используйте автомасштабируемые контролы ListView для коллекций Multi-column Layout для текста Canvas для изображений

Рекомендация для Snap View (и Portrait) Пользователь ожидает рабочее приложение, а не заглушку Используйте LayoutAwarePage Меняйте структуру UI в VisualStateManager.VisualStateGroup s С горизонтального на вертикальное: С помощью показа нового Layout и скрывания старого С помощью изменения привязки контролов к ячейкам грида.

DEMO Adaptive Layout На различных разрешениях

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

Скорость запуска и возобновления – требование сертификации – запуск 5 сек, возобновление – 2 сек. Проверяется Windows App Certification Kit (WACK) Минимизация времени старта, загрузка данных Визуализация (виртуализация UI) Анимации – используйте стандартные контролы: ListView, App bar, FlipView, Flyout, Dialog, Context menu

Профилирование Visual Studio Performance Analyzer PerfView – проблемы потребления процессора и памяти Windows Performance Analyzer

Асинхронность Ключевые методы требуют асинхронных вызовов Языковые конструкции, упрощающие асинхронное программирование

Тестирование на различных устройствах

Процессоры новых Windows 8 - устройств Intel Core i3/5/7 4 ядра + Hyper- Threading - до 3.5 ГГц Около 4 часов работы + 4 часа док/клавиатура Intel Atom Z2760 (Clover Trail) 2 ядра + Hyper- Threading ГГц Около 8 часов работы + 8 часов док/клавиатура ARM 2 ядра Qualcomm Snapdragon APQ ГГц или 4 ядра NVIDIA Tegra 3 – 1.3 ГГц Около 8 часов работы + 8 часов док/клавиатура Connected Standby

В Connected Standby поддерживаются: Обновление живых плиток Получение почты Скачивание или закачивание файлов на веб-сайт Публикация контента (фото) на веб- сайт Распечатывание на принтере Синхронизация контента со связанным устройством (синхронизация фото) Получение мгновенных сообщений Получение VoIP звонков Общение в реальном времени Проигрывание фоновой музыки и звуков Используйте BackgroundTask !

DEMO Connected Standby Мобильные сценарии на PC-устройствах.

Windows Store приложения – это мобильные приложения!

Результаты Состояние рынка Популярные форм-факторы и сценарии Как сделать ваше приложение удобным на максимальном числе устройств Работа с клавиатурой Проверка наличия сенсоров Масштабирование UI Производительность и плавность Мобильные сценарии

Содержание трека Windows 8 в этом году D01: Современные устройства и форм-факторы Windows 8 - как максимально охватить этот рынок С03: От простого к прекрасному: опыт (ре)дизайна приложений для Windows 8 С05: Профилирование Windows Store приложений С06: Expression Blend как инструмент скоростной интеграции дизайна Windows Store приложений D07: Лучшие практики обеспечения производительности Windows Store приложений E08: Переиспользование кода и компонентов при разработке Windows 8 и Windows Phone 8 приложений D09: Разработка в асинхронной парадигме в Windows Runtime – лучшие практики D10: Windows Runtime – взгляд внутрь реализации (deep dive) E10: Тык-тык, жмак-жмак, или как адаптировать сайт под Windows 8 D11: Windows Runtime приложения в корпоративной среде и сценариях - как это работает F11: Монетизация и продвижение приложений – наши секреты для российских разработчиков

Контакты Ромуальд Здебский Microsoft & blogs.msdn.com/roman

© 2013 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.