2016-04-13 21 views
0

Ich bin neu beim Erstellen von Xamarin-Projekten.
Was ist der Unterschied zwischen portablen und freigegebenen Projekten?
Ich denke, man ist tragbar und die andere ist geteilt, aber was ist das Ziel dieser
und welche sollte ich für meine Cross-Plattform-Formulare mobile Anwendung verwenden?Tragbare und freigegebene Projekte von Xamarin

Portable and Shared projects on Xamarin

Vielen Dank im Voraus

+1

Mögliche Duplikate von [Xamarin Shared Library und PCL] (http://stackoverflow.com/questions/32043793/xamarin-shared-library-and-pcl) – Wosi

+0

Sie können eine bessere Antwort hier erhalten: [Unterschied zwischen tragbaren Klassenbibliothek und gemeinsame Klassenbibliothek in Xamarin Cross-Plattform] (https://stackoverflow.com/questions/28470778/difference-between-portable-class-library-and-shared-class-library-in-xamarin-cr) –

+0

Sie kann hier eine bessere Antwort erhalten: [Unterschied zwischen der tragbaren Klassenbibliothek und der freigegebenen Klassenbibliothek in der Xamarin-Cross-Plattform] (https://stackoverflow.com/questions/28470778/difference-betwide-portable-class-library-and-shared- class-library-in-xamarin-cr) –

Antwort

1

direkt von Xamarin website Genommen:

Gemeinsame Projekte - das Shared Asset-Projekttyp Verwenden Sie Ihren Quellcode zu organisieren, und #if Compiler-Direktiven verwenden je nach Bedarf um plattformspezifische Anforderungen zu verwalten.

Portable Klassenbibliotheken - Erstellen Sie eine Portable Class Library (PCL) für die Plattformen, die Sie unterstützen möchten, und verwenden Sie Schnittstellen, um plattformspezifische Funktionen bereitzustellen.

1

Portable bedeutet PCL und Shared ist Shared Asset Project. Im Wesentlichen können beide verwendet werden, um Code plattformübergreifend zu teilen. Sie können den Unterschied finden, der von Xamarin in ihrem documentation erklärt wird.

In meinen eigenen Worten, wenn Code-Sharing mit einem PCL erfolgt, wird der gemeinsame Code zunächst kompiliert und dann von Android-und iOS-Projekten referenziert. Daher kann nur der Code, der von allen Plattformen kompiliert werden kann, in den PCL-Typ aufgenommen werden. Im Gegensatz dazu werden die Code-Dateien in einem Projekt mit gemeinsamem Asset zu einzelnen Plattformen hinzugefügt und dann kompiliert. So können wir plattformspezifische Codes unter Verwendung von Pre-Prozessor-Direktiven einbeziehen. Jede Methode hat ihre eigenen Vor- und Nachteile. Sie können entscheiden, welche ausgewählt werden soll, nachdem Sie alle berücksichtigt haben.