Je travaille sur un projet Xamarin Forms. Je souhaite cibler Android et Windows 10 UWP.
Lorsque j'essaie de nettoyer la PCL en supprimant "Windows 8", "Windows Phone Silverlight 8", "Windows Phone 8.1", "Xamarin.ios" et "Xamarin.ios (classique)" des cibles PCL, je reçois le méchant suivant ...
J'essaie vraiment de supprimer WP8 car je me moque de le cibler.
Les objectifs du projet ne peuvent pas être modifiés. Les cibles sélectionnées nécessitent Le projet d’adhésion à NuGet 3.0 prend toutefois en charge Visual Studio ne peut pas le faire automatiquement pour vous. Veuillez désinstaller tous les NuGet forfaits et essayez à nouveau.
Comment faire en sorte qu'un projet adhère à NuGet 3.0? Quelque chose d'autre que je devrais essayer?
environ: Xamarin Forms, VS2015
Merci....
La solution qui a fonctionné pour moi:
Désinstallez Xamarin.Forms:
Right Click Solution -> Manage NuGet Packages -> Uninstall Xamarin.Forms -> Restart VS
Puis supprimez les plates-formes de construction:
Right Click Solution -> Properties -> Build -> under Targeting select Change -> Remove platform(s) -> Restart VS
Réinstallez Xamarin.Forms:
Manage NuGet packages -> Search for Xamarin.Forms -> Install -> Restart VS
Une autre solution possible consiste à renommer temporairement packages.config, à modifier les paramètres PCL en fonction des nouvelles plates-formes cibles, puis à modifier à nouveau le nom de packages.config. Cela a fonctionné pour moi sur mon projet utilisant VS 2015. Vous ne pouvez pas prendre crédit pour cette solution, lisez-la sur un blog il y a quelque temps et publiez-la simplement au cas où elle aiderait quelqu'un. Si je rencontre à nouveau l'article du blog, je posterai le lien ici.
Pour moi, voici ce qui a été corrigé: Recherchez le fichier packages.config dans ce projet cible et désinstallez TOUS les packages installés. Ensuite, vous pourrez modifier le ciblage. Puis réinstallez vos paquets.
Selon les commentaires sur la question initiale, il existe deux itinéraires potentiels; l'une serait d'essayer de supprimer tous les packages des projets et d'apporter les modifications nécessaires avant de les rajouter à nouveau.
Pour mon prototype initial, je ne voulais pas perdre de temps sur d'autres plates-formes; alors:
Maintenant, ma solution ne cible que (vraiment) Android et iOS ....
Si votre problème concerne les options affichées partout dans la solution, vous pouvez simplement sélectionner dans la solution Explorer celles que vous ne souhaitez pas afficher, puis cliquez avec le bouton droit de la souris et cliquez sur "Décharger le projet". Ils y resteront en augmentant la taille du projet, mais ils partiront de la liste de déploiement et d’autres lieux.
Aucune des solutions ci-dessus n'a résolu mon problème ET la désinstallation de packages de nuget ou la modification du fichier de projet n'est PAS une solution (du moins pour moi - parler d'enfer de référence), mais cette méthode fonctionne:
Tout d'abord, vous ne pouvez pas supprimer une plate-forme ciblée unique telle que win8, silverlight ou asp.net core sans désélectionner également le .NET Framework.
Lorsque vous décochez la case Windows 8 et ASP.NET Core, cochez également la case .NET Framework. Ne vous inquiétez pas, il ne présentera pas le message d'erreur ci-dessus, mais VS revérifiera automatiquement le .NET Framework (souvent une version inférieure), puis une fois terminé, rajoutera Window 8.1 après avoir supprimé les autres.
Une fois que cela se produit, vous pouvez ensuite supprimer les autres par la suite. Cela m'a pris un certain temps à comprendre, car ce n'est pas évident ni expliqué ailleurs. Vous n'avez pas besoin de désinstaller Xamarin.Forms.