2015-01-18 4 views
17

Я читал о Windows Phone 8.1 Development, потому что я уже работаю с Windows Phone 8, и я намерен начать работу с новой версией ОС.Разница между Windows Phone 8.1 и Windows Phone Silverlight 8.1

Затем я загрузил Visual Studio для Windows с обновлением 4, открыл один из моих проектов (целевой WP8) и нажал кнопку «перейти на версию 8.1».

Я видел, что мое решение сменило название на «Windows Phone SilverLight 8.1».

Затем я попытался создать новый проект таргетирования Windows Phone 8.1, и я увидел следующие параметры в Visual C# дерева (как показано изображение):

  • Универсальные приложения
  • Apps для Windows
  • Windows Phones приложения

enter image description here

Как мой цель состоит в том, чтобы разработать для телефонных устройств с Windows Phone 8.1, я выбрал «Службы Windows Phone». Но я видел, что этот проект отличен от другого (тот, который я обновил с WP8). Появляется «Windows Phone 8.1» в решении вместо «Windows Phone SilverLight 8.1». И коды тоже очень разные.

Итак, я сделал исследование об этом, чтобы понять разницу между "Windows Phone SilverLight 8.1" и "Windows Phone 8.1", прочитать некоторые сообщения, как это:

но я не мог найти ничего, что заставило меня понять.

В какой-то момент я нашел ответ, говорящий, что «Windows Phone 8.1» предназначен для универсальных приложений ... но я не согласен, если бы я хотел создать универсальное приложение, я бы выбрал «Универсальное приложение» вместо « Windows Phone Apps ".

Кто-нибудь знает, в чем разница между этими двумя проектами?

ответ

22

Основное отличие заключается в том, что Windows Phone 8.1 Хранить приложения строго использовать WinRT API, которые не доступны в Silverlight.

Прежде чем читать дальше, это короткая версия:

  • Windows Phone 8.1 Магазин App код работает на всех ОС Windows Phone 8.1+ и Windows, 8+ машины, так как он использует унифицированную WinRT API.
  • Windows Phone Silverlight Код приложения работает на всех Телефоны Windows 7+, но не на всех машинах Windows 8 (машины ARM не поддерживают все функции). Вот почему приложения Windows Store используют разные API (WinRT). Вы можете проверить эту ссылку: http://msdn.microsoft.com/en-us/library/windows/apps/jj681690%28v=vs.105%29.aspx

телефоны Windows были с помощью Silverlight приложения только до 8-й версии в то время как приложения для Windows 8 (восходящем) предложил API WinRT, а также - вы, возможно, заметили, что Windows 8 RT для процессоров ARM.

Итак - чтобы остановить бесконечный параллелизм Silverlight и WinRT, Microsoft решила объединить процесс разработки. Начиная с Windows Phone 8.1, Windows Phone также запускает WinRT (ребрендированные как Windows Runtime, я думаю) приложения.

Главное преимущество заключается в том, что теперь вы можете легко переносить код Windows Phone 8.1 на приложение Windows 8.1 и наоборот, поскольку оба используют одни и те же API. Доступ к файлам, хранилищу, сети .. все это одинаково для Windows Phone и для приложений Windows Store.

Это приложение Universal Apps вступает в игру. Вместо переноса вашего кода позже, создав новый проект, теперь вы можете легко создать универсальный проект, содержащий общий код как для Windows Phone 8.1, так и для Windows 8.1.

Однако недостатком является то, что ваше приложение не будет работать на Windows-телефонах < 8.1.

проект
+1

«Windows Phone Silverlight App код работает на всех Windows Phones 7 + "- это правильно? Я только что создал новое приложение Windows Phone Silverlight в Visual Studio 2013, и мне было предложено выбрать целевую ОС - либо WP 8.0, либо 8.1. Поэтому он не может работать на 7. +. – ondrisko

+0

Приложения все еще работают. Но поддержка была отброшена. Вы не можете добавлять новые приложения в WP7. – Fred

+0

Хорошо, когда я пытаюсь развернуть приложение WP 8.0 Silverlight для эмулятора WP7 через XapDeploy.exe, он говорит: «Невозможно развернуть это приложение на устройстве, потому что оно нацелено на версию Windows Phone, которая выше, чем поддерживает устройство». У меня нет физического WP7, но вы говорите, что такое приложение будет работать на физическом WP7? – ondrisko

2

Разница заключается в том, что приложение будет использовать.

Silverlight - это плагин как Flash, поэтому, если вы разрабатываете приложение, которое его использует, вы должны использовать его библиотеку/синтаксис. Это старый способ разработки приложений для веб-приложений и телефонов.

Universal - это новая инфраструктура, разработанная Microsoft для помощи разработчикам в создании приложений, работающих как на Windows Phone, так и в Windows Store.

Итак, что вы нашли в Интернете правильно: Phone App предназначено для Universal framework. Голоса, предлагаемые VS: - Универсальное приложение: для любого устройства (телефон/планшет/ПК) - Приложение для телефона: только для телефона (обратите внимание! Может использовать любую библиотеку, разработанную для универсального приложения, поскольку приложение Universal может работать на телефоне) - Приложение для Windows: только для планшетных ПК/ПК (без телефона).Вы можете использовать библиотеку Универсальные приложения, как телефон App может сделать

Я надеюсь, что это может помочь

-1

Silver Light имеет справочный сервис-центр, а в окне телефона он удаляется, так что вы можете использовать либо лазурные предоставляет услуги или отдых услуги при разработке для Windows Phone