Большинство новых функций, которые появятся в обновлении Windows Phone 7.5, были продемонстрированы на открытии MIX11. Остановимся на основных нововведениях.
Как вам наверняка известно WP7 телефоны оборудованы чипами AMRv7 Qualcomm QSD8250 SoC, которые имеют поддержку инструкций NEON. Текущая версия операционной системы, к сожалению, не умеет использовать эти SIMD функции. В Mango такая поддержка должна появится (только для XNA приложений):
ARM процессоры поддерживают инструкции SIMD (Single Instructions Multiple Data) благодаря технологии ARM NEON, которая реализована в ARMV7 ISA. SIMD позволяет распараллелить и использовать аппаратное ускорение для некоторых операций, вследствие чего достигается увеличение производительности. Спецификация Windows Phone 7 требует установку ARMV7-A, поэтому технология NEON уже доступна на всех смартфонах WP7. Однако исполняющая среда (CLR) на Windows Phone 7 (NETCF) не умеет использовать этот функционал и поэтому он пока не доступен для разработчиков, пишущих управляемый код. Только что на MIX11 мы объявили, что следующая версия мобильной операционной системы начнет поддерживать все возможности SIMD.
Различные операции над некоторыми типами данных в XNA могут быть ускорены при помощи расширений NEON/SIMD. Например, Vector2, Vector3, Vector4, Matrix из состава Microsoft.Xna.Framework. Примечание: точный состав типов данных и операций над ними пока не утвержден и может измениться. Также обратите внимание на то, что пользовательские типы данных не получать ускорения.
Подробнее о поддержке NEON читайте в блоге Microsoft.
Вернемся к нововведениям:
В обновление Mango будут включены порядка 1500 новых функций API, а также поддержка Silverlight 4 вместо Silverlight 3.
Команда Microsoft несколько улучшила контрол Listbox, теперь все приложения могут использовать список с плавный прокруткой без изменения кода. Обработка пользовательского ввода была вынесена в фоновый поток, чтобы она не оказывала влияния на основной поток интерфейса и не влияла на производительность приложений.
Приложения загружаются гораздо быстрее и потребляют меньше памяти:
В обновлнении Mango также будет некая фунция под названием Search Extras.
Благодаря этой функции у пользователей появилась возможность поиска по установленным приложения. Более того поиск теперь имеет связь с Marketplace и Bing. Так например, если вы ищите фильм с помощью Bing, на дополнительной вкладке результатов вы обнаружите установленное у вас приложение, которое имеет отношение к видео. А судя по следующему изображению в Mango станет доступен поиск картинок.
Результаты поиска по Marketplace разделены по отдельным вкладкам. Добавился новый раздел — подкасты.
Адпейт Mango будет включать поддержку 16 языков (а не 14 как сообщалось ранее):
В Mango у разработчиков наконец появится доступ ко всем сенсорам телефона (включая гироскоп, который должен появится в будущих смартфонах на базе WP7) посредством Motion Sensors API.
На домашнем экране в Mango будут обновленные живые плитки (с улучшенной анимацией) и уведомления (live agents), которые могут быть использованы совместно с новыми функциями многозадачности. У пользователей появится возможность закреплять на Home Screen отдельные функции приложений (на примере это функция распознования штрих-кодов приложения Amazon).
На MWC11 вновь показали Internet Explorer 9 Mobile с поддержкой HTLM5 и использованием аппаратного ускорения.
IE9 Mobile в ландшафтном режиме:
Еще одно важное дополнение: появилась поддержка TCP IP сокетов. В связи с этим Skype собирается представить свое приложение на WP7 этой осенью. Разработчики приложений смогут использовать сокеты в своих программах благодоря SL4. Кроме того, в Mango появится база SQLite Database.
Mango SDK и Developer Tools будут включать эмуляторы сенсоров. Увеличаться возможности утилит, предназначенных для отслеживания проблем с производительностью и поиска ошибок. Ожидается, что инструменты будут представлены уже в следующем месяце.
В Mango появится поддержка загрузки собственных рингтонов, фоновая пересылка файлов, множество уже объявленных (Silverlight, XNA) и еще не известных возможностей для разработки приложений.