До выхода Windows8 еще есть время, но уже сейчас стоит разобраться с тем, как писать приложения под новейшую операционную систему.
Мы уже наслышаны про возможности системы, наслышаны, что появился новый Framework WinRt, но мало кто его пробовал, еще меньше тех кто уже что-то написал под Win8.
На прошлой неделе вышла Bing SDK Beta (поисковый движек от Microsoft), с возможностью использования в Windows8 Metro приложениях.
Давайте посмотрим, примеры из этого SDK
- Скачать SDK
- Создать проект типа Windows8 Metro приложение
- Далее начинается не очень понятный-приятный момент. Этот SDK сейчас использует С++ Runtime, мы должны добавить сам RunTime + сборку с BingMaps SDK. Мы не можем скомпилировать проект под AnyCPU из-за C++ Runtime, по этому от нас требуется выбраться x86 или x64 версию RunTime, которую мы будем использовать. Это описано в документации на msdn, так что MS и BING честны перед разработчиками. ARM версии нет на данный момент, что объяснимо, тк это beta и планшетов на arm пока нет с win8 особо. Я думаю, к моменту выхода Windows8 они сделают возможным писать процессор-независимые приложения.
- Зарегистрироваться на Bing.Developers
- Создать ключ для приложения
Пример Проекта на картинке
Так выглядит приложение, запущенное на эмуляторе
Точность моего место положение была определена не плохо. Посмотрев в настройках, я уведет точность 350 метро. Для поисковика, который в России еще вообще не работает — очень не плохо.
Чтобы лучше разобраться с SDK, я рекомендую прочесть документацию по классам API
msdn.microsoft.com/en-us/library/hh846503.aspx
Я слегка изменил пример из SDK.
Нарисовав нем линию от
1- Моя работа в Сравни.ру
2- мой дом.
3- политехнический музей, куда я хожу на лекции открытого университета сколково
4-офис Microsoft в Крылатском.
Давайте посмотрим пример
Пример достаточно простой.
Что мы делаем в main.
Сам объект Карта объявлен в Main.Xaml с именем map.
Мы добавляем к нему слой, на котором мы рисовать будем, добавляем ЛомануюЛинию с координатами в виде долготы и широты точек.
Добавляем этот слой для отрисовки.
Вешаем обработчик на изменение позиции.
Он отрабатывает и установляет зум на текущее положение.
Задание координат на симуляторе
С помощью Эмулятора-Симуляторы мы можем задать любые координаты нашего нахождения. Это интересно, когда мы тестируем приложение.
Как Вы догадываетесь, я не могу находиться в Кремле, но я могу установить координаты Кремля в симуляторе
HTML+JS
В SDK есть примеры работы с Bing Maps из HTML+JS.
Там не требуется устанавливать build для x64,x86. Это конечно хорошо, но это все таки не C#.
Устанавливаем Ключ, добавляем на кнопки обработчики.
В общем не сложно, но лично я предпочту писать на C# + Xaml все таки. Пусть меня заклюют Евангелисты Microsoft, но я не верю (или не понимаю) в html+js сейчас. Через годик посмотрим
Мои выводы:
Выглядит не сложно sdk.
Api понятно.
Для штатов — достаточно точная карта, для Москвы — у Яндекса конечно лучше, но если мы пишем приложение не для России- то эта мелочь нас не беспокоит.
Пока это единственные карты, которые есть под Windows8 Metro. Ждем Яндекс и Гугл карта.
Ждем Выхода Release Windows8 и Bing Maps SDK для нее
P.S.
В Bing есть Api для работы с пробками, жаль, что он только в USA и Canada местами.
Автор: SychevIgor