0

저는 현재 Windows Phone 8.1 Silverlight 응용 프로그램을 가지고 있습니다. Microsoft는 WINRT 및 Universal Apps에 대한 모든 관심을 기울이고 있으므로 Windows 10의 Silverlight Apps는 제한적이거나 지원되지 않을 것으로 판단됩니다.Silverlight에서 WINRT 또는 Silverlight에서 Universal으로

Google에서 출시 할 수있는 태블릿 프로젝트가있을 수 있습니다. 미래의 동일한 프로젝트. 그래서 저는 솔루션에서 Silveright 프로젝트를 WINRT로 변환하거나 유니버설 앱으로 변환하는 딜레마에 빠져 있습니다. 또한 유니버설 프로젝트로 변환하는 것이 꽤 어렵다고 들었습니다. 그리고 작업의 대부분이 UI를 허브 스타일 UI로 이식합니다.

아이디어가 있으십니까? 여기에 대한 최선의 접근 방식에 대한 의견.

답변

1

WinRT 앱은 전화 전용이 아닌 Windows 전용 앱입니다. 그것 이외에, WinRT와 보편적 인 앱은 꽤 비슷하다. 그들은 같은 네임 스페이스, 클래스, 컨트롤 ... 거의 모든 것을 가지고 있습니다. 유니버설 애플 리케이션에서 아무 문제없이 많은 WinRT 라이브러리를 사용할 수 있습니다. 그래서 그들에게 이식하는 것은 일반적으로 마찬가지입니다.

Windows 스토어 및 Windows Phone 앱은 일반적으로 어쨌든 다른 UI을 필요로하므로 사용자가 무엇을 하든지 관계없이 작업해야합니다.

한 가지 차이점은 WinRT 응용 프로그램은 윈도우 8.0과까지 일하는 것이, 그리고 유니버설 응용 프로그램은 윈도우 8.1 (또는 휴대 전화에 대한 WP 8.1)를 필요로한다는 것이다. 사실 Windows 8.1 앱은 Universal 앱입니다. Silverlight 변형이 아닌 Windows Phone 8.1 앱과 마찬가지로 Universal 응용 프로그램입니다.

이 앱을 익숙하게 사용하면 범용 앱으로 포팅하는 것이 좋으며 두 플랫폼 (Windows 및 전화)에서 모두 작동합니다. 미래의 프로젝트라면 그 길을 갈 것입니다.

내가 일하는 회사에서 우리는 몇 달 전에 Universal 응용 프로그램으로 전환했습니다. 두 플랫폼에서 사용하는 UI와이를 제대로 수행하는 방법을 파악하고 기존 라이브러리를 이식하는 데는 다소 시간이 걸리지 만 새로운 앱을 만들고 두 플랫폼을 모두 지원하는 것은 매우 쉽습니다. 그래서, 저를 위해, 그것은가는 길입니다.

+0

감사합니다. 내 잘못은 좀 더 정확해야 했어. 내가 WINRT라고 할 때, 나는 플랫폼의 유형이 아닌 프로젝트의 유형에 대해 이야기하고 있습니다 (전화, 태블릿). 솔루션에 많은 네이티브 프로젝트가 있습니다. 그래서 내가 범용 애플 리케이션에 전체 솔루션을 포팅해야한다면 너무 많은 것이 될 것이다. 너 생각 안해? – golldy

+0

@ golldy Windows 런타임 구성 요소 프로젝트 유형을 의미합니까? 또는 다른 것? 또한 "네이티브"프로젝트 인 Silverlight 프로젝트가 있습니까? – yasen

+0

실버 프로젝트와 함께 사용하는 기본 프로젝트. 어쨌든 유니버설 프로젝트로 프로젝트를 이식하는 것이 최선의 방법이라고 생각합니다. – golldy

1

Microsoft에서 휴대폰 용 Windows 10 버전에서 Silverlight 응용 프로그램을 지원하는 것을 거의 중단하지는 않을 것입니다. WP8.1도 WP7.0 시대의 XNA 게임을 계속 지원합니다.

라이브러리에서 사용하는 API에 따라 Silverlight에서 WinRT로 변환 할 때의 대부분의 변경 사항은 UI 측에 표시됩니다 (예 : Silverlight App이 변경하지 않아도되는 IsolatedStorage-API 대신 LocalStorage-API를 이미 사용하는 경우

  • 당신이 (일부 기능은 실버 라이트 애플 리케이션 현재에서만 사용할 수 있습니다)
  • 이 사용중인 실제 API가 어떠했는지를 평가하는 유니버설 앱에서 지원됩니다 필요한 모든 기능 어떠했는지를 평가 :

    내 조언은 다음이 될 것입니다 Universal Apps에서 지원되거나 대체해야합니다 (IsolatedStorage => LocalStorage 등)

지식으로 무장하면 내가 새로운 API로 언제 응용 프로그램을 포팅해야하는지 더 잘 계획 할 수있을 것입니다. . 앞으로 태블릿 버전이 필요할 것이며 필요한 모든 API가 범용 앱 모델 포팅에서 더 빨리 지원된다면 나중에 포팅하는 것보다 노력이 덜 필요할 것입니다.