问题是:为Windows 8制作了项目.当我在Visual Studio中打开解决方案时,它告诉我需要安装Windows 8 SDK才能继续.
我现在使用Windows 10 SDK,我将不再使用SDK 8,所以我宁愿不安装此SDK并使用新的一个intead.我可以以某种方式将此项目移植到Windows 10应用程序?
它现在看起来如何:
解决方法
在这个过程后我仍然有问题 – 我没有工作.appxmanifest文件,所以我无法创建.pfx文件.这会一直警告您缺少certifcate文件.
我不确定是否所有步骤都是必要的.我把它留作家庭作业;)
无论如何,在这里我向您展示了将TodoREST项目移植到UWP的步骤:
>卸载iOS和Droid项目将使这更容易
>从Portable和WinPhone81项目中卸载所有nuget包
>将便携式班级配置文件更改为Profile111(取消选中WP8 Silverlight作为目标)
>现在你可以在便携式项目上重新安装Xamarin.Forms和Newtonsoft.Json(卸载是必要的,以便更改配置文件 – 这是必要的,因为它在这里引发了一些错误)
>从WinPhone81项目中删除app.config
>将project.json文件添加到WinPhone81项目并输入以下内容:
{ "dependencies": { "Microsoft.NETCore.UniversalWindowsPlatform": "5.0.0","Xamarin.Forms": "2.0.0.6482" },"frameworks": { "uap10.0": { } },"runtimes": { "win10-arm": { },"win10-arm-aot": { },"win10-x86": { },"win10-x86-aot": { },"win10-x64": { },"win10-x64-aot": { } } }
>保存所有内容并关闭WinPhone81项目
>在文件资源管理器中,转到文件夹并编辑Package.appxmanifest
>通过以下方式交换包裹标签:
<Package xmlns="http://schemas.microsoft.com/appx/manifest/foundation/windows10" xmlns:mp="http://schemas.microsoft.com/appx/2014/phone/manifest" xmlns:m3="http://schemas.microsoft.com/appx/manifest/uap/windows10" IgnorableNamespaces="m3 mp">
<Dependencies> <TargetDeviceFamily Name="Windows.Universal" MinVersion="10.0.0.0" MaxVersionTested="10.0.0.0"/> </Dependencies>
>编辑TodoREST.WinPhone81.csproj:
>在第一个< PropertyGroup>中替换< TargetPlatformVersion>这样:
<TargetPlatformIdentifier>UAP</TargetPlatformIdentifier> <TargetPlatformVersion>10.0.10586.0</TargetPlatformVersion> <TargetPlatformMinVersion>10.0.10586.0</TargetPlatformMinVersion>
>将ProjectTypeGuids更改为
<ProjectTypeGuids>{A5A43C5B-DE2A-4C0C-9213-0A381AF9435A};{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}</ProjectTypeGuids>
>在每个具有Condition = …的PropertyGroup上,用WINDOWS_UAP替换DefineConstants中的WINDOWS_PHONE_APP
>保存
>在Visual Studio中重新加载项目
>编辑MainPage.xaml并将< forms:WindowsPhonePage更改为< forms:WindowsPage和forms命名空间使用:Xamarin.Forms.Platform.UWP(来自.WinRT)
>在这里我不得不因为任何原因重启VS2015,因为它没有注意到project.json
>启动项目并进行调试!
我希望这回答了你的问题.