如何使用Windows 10创建特定于设备系列的项目,如W8.1 / WP8.1?

时间:2015-08-01 09:24:38

标签: c# xaml windows-runtime win-universal-app windows-10

我打算将我的WP8.1应用程序作为通用应用程序移植到Windows 10。 我看到MS添加了创建单个Universal项目的功能,并创建了包含共享单个代码隐藏文件的XAML页面/控件的不同特定于系列的文件夹。 我不喜欢关于这种方法的一些事情:

•我只能为不同的设备使用不同的XAML文件,但使用相同的 .cs文件,因此创建一些特定于设备的UI逻辑(如动画)并不容易和东西

•由于我只有一个通用项目,我必须在运行时检查我需要的API /类的可用性,而不是能够查看是否我可以在编译时使用或不使用它们,这在我看来要好得多。

我看到了一个MVA视频,Jerry Nixon和Andy Wigley说Windows 10仍然支持经典的多头环球项目,但我不知道如何设置它们,我不能在任何地方找到文档。

每个人都在谈论这个带有共享.cs文件的单个项目,但我真的觉得更适合使用多头项目:一个用于手机,一个用于桌面/平板电脑,可能一个共享项目或某种PCL来共享两个项目之间的类和东西(像W8.1 / WP8.1这样的共享项目会很棒)。

任何想法如何做到这一点?

1 个答案:

答案 0 :(得分:1)

从技术上讲,Windows 8.1 Universal应用程序是由3个项目构建的。一个用于Windows 8.1,一个用于电话和共享CL。 虽然没有内置模板,但您可以手动执行相同的结果,或使用VS Extensibility工具创建自己的模板。 所有你需要做的是创建一个UAP解决方案,另一个UAP项目,相应地命名,让我们说MyProjectName.Phone和一个名为MyProjectName.Shared的通用CL引用另外两个共享项目,你准备摇滚......

要使用您的项目定位单个设备系列,您可以在Package.Appmanifest中指定该意图。

<TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0" />