3 Stimmen

Wie werden Drittanbietersteuerelemente in Xamarin-Anwendungen verwendet?

Da ich nur begrenzte Erfahrung mit Xamarin habe, bin ich mir nicht sicher, ob es sich um eine einfache oder komplexe Frage handelt ...

Wenn ich eine App für Android, iOS und Windows Phone erstellen möchte, aber eine Fremdsteuerung oder Bibliothek einbinden muss, wie wird das gemacht?

Zum Beispiel, wenn ich das SuperPicture-Control der Firma XYZ verwenden möchte, das einige Funktionen wie das Laden von Bildern, zuschneiden usw. hat.

  • Muss dieses Control oder diese Bibliothek von XYZ für jedes Betriebssystem implementiert werden?
  • Oder muss XYZ ein Xamarin-aktives Control/Bibliothek bereitstellen?
  • Oder muss ich es selbst auf gewisse Weise einbinden?
  • Was ist, wenn die Funktionen auf jedem Betriebssystem leicht variieren, entweder vom Namen oder von der Funktionalität her?
  • Erleichtert Xamarin 3 (mit Xamarin Forms) dies?

3voto

Jason Punkte 78121

Es gibt viele Möglichkeiten, wie dies gemacht werden kann:

  • Ein Komponente kann im Komponenten-Store von Xamarin für eine oder mehrere Plattformen verfügbar sein
  • Eine Komponente kann über nuget in einer pro-Plattform-DLL oder plattformübergreifenden PCL verfügbar sein
  • Eine native (Java JAR oder iOS-Bibliothek/Framework) muss für die Verwendung in Xamarin gebunden werden. Einige Unternehmen bieten Xamarin-Bindings an, oder Sie können eine bereits vorhandene Binding finden, die von jemandem in der Community geteilt wurde, oder Sie müssen es selbst tun
  • Wenn die API nicht für jede Plattform gleich ist, müssen Sie plattformspezifischen Code schreiben, um damit zu arbeiten, oder eine gemeinsame Fassade-Schicht erstellen, usw.
  • Xamarin 3 ändert dieses Problem grundsätzlich nicht, obwohl es Unterstützung für Shared Projects eingeführt hat, was eine weitere Möglichkeit ist, plattformübergreifenden Code zu erstellen

1voto

Michael Cook Punkte 1658

Xamarin-Komponenten werden plattformweise entwickelt. Wenn es plattformübergreifend ist, wurde es auf jeder Plattform unabhängig entwickelt.

Wenn es eine vorhandene Steuerelement gibt, das Sie für eine Plattform verwenden möchten, bietet Xamarin die Möglichkeit, einen Wrapper zu schreiben (sofern keiner vorhanden ist), um ihn in einem Xamarin-Projekt zu verwenden.

Mit Xamarin.Forms (in Xamarin 3) könnten Sie eine plattformübergreifende Komponente entwickeln, solange sie die verfügbaren X.Forms-Komponenten verwendet (und implementierte Eigenschaften). Realistischerweise werden Sie jedoch immer noch eine gewisse Menge an benutzerdefiniertem Code für jede Plattform benötigen, da die begrenzten Steuerelemente und Eigenschaften, die X.Forms Ihnen bietet.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X