Canonical ermöglicht Linux-Desktop-Apps mit Flutter (empfohlen)

Canonical ermöglicht Linux-Desktop-Apps mit Flutter (empfohlen) Dies ist das Ende dieses Artikels über Canonical, das Linux-Desktopanwendungen über Flutter aktiviert. Weitere verwandte Inhalte über Flutter, das Linux-Desktopanwendungen aktiviert, finden Sie in früheren Artikeln auf 123WORDPRESS.COM oder durchsuchen Sie die verwandten Artikel weiter unten. Ich hoffe, dass jeder 123WORDPRESS.COM in Zukunft unterstützen wird!

Das könnte Sie auch interessieren:
  • Eine einfache Möglichkeit, die QT-Anwendung in eingebettetem Linux neu zu starten (basierend auf QT4.8 qws)
  • 10 beliebte Windows-Apps, die auch unter Linux verfügbar sind
  • Detaillierte Erläuterung des Win10 Bash/WSL-Debuggens von .NET Core-Anwendungen in der Linux-Umgebung
  • So verwenden Sie Crontab zur regelmäßigen Überwachung und Wartung von Tomcat-Anwendungen unter Linux
  • Ausführen von Windows-Anwendungen unter Linux

Das Ziel von Google mit Flutter bestand immer darin, ein portables Toolkit zum Erstellen schöner Benutzeroberflächen bereitzustellen, die mit nativer Geschwindigkeit ausgeführt werden, unabhängig davon, welche Plattform Sie verwenden. Um diese Fähigkeit zu validieren, haben wir uns zunächst auf die mobilen Plattformen Android und iOS konzentriert, wo wir über 80.000 schnelle, schöne Flutter-Apps auf Google Play gesehen haben.

Um auf unserem Erfolg aufzubauen, erweitern wir seit über einem Jahr unseren Fokus auf Desktop-Erfahrungen, sowohl für das Web als auch für Desktop-Betriebssysteme (macOS, Windows und Linux). Diese Arbeit umfasste eine umfassende Umgestaltung der Engine, um Maus- und Tastatureingaben im Desktop-Stil sowie größenveränderbare Fenster der obersten Ebene zu unterstützen. Es enthält außerdem neue UI-Funktionen, die sich gut an den Desktop anpassen, wie etwa Material Density-Unterstützung und NavigationRail, sowie eine tiefe Integration mit dem zugrunde liegenden Desktop-Betriebssystem durch Experimente in Dart:FFI und Zugriff auf die Systemmenüleiste und Standarddialogfelder. All diese Arbeiten werden durchgeführt, um sicherzustellen, dass Flutter nicht nur für mobile Erlebnisse geeignet ist, sondern auch für die Verarbeitung voll funktionsfähiger Desktop-Anwendungen in voller Größe bereit ist.

Unsere langfristige Vision besteht darin, die Flutter-Plattform mit Strom zu versorgen. Bei Google konnten wir dies bereits mit Produkten wie Assistant beobachten und jetzt freuen wir uns, dass auch andere Flutter nutzen, um mehr Plattformen zu unterstützen. Wir freuen uns, heute gemeinsam mit Canonical, dem Herausgeber von Ubuntu, der weltweit beliebtesten Linux-Desktop-Distribution, die Linux-Alphaversion von Flutter bekannt zu geben.

Warum Flutter unter Linux verwenden?

Als Google im vergangenen Jahr die Unterstützung von Desktop-Apps für Flutter ankündigte, sah Canonical darin eine spannende Chance, Linux-Distributionen, darunter Ubuntu, zu einer attraktiven Zielplattform für Flutter-App-Entwickler zu machen. Die native plattformübergreifende Entwicklung von Flutter wächst rasant und Canonical möchte ganz vorne mit dabei sein. Durch die Aktivierung der Desktop-Linux-Unterstützung in Flutter hat Canonical es App-Entwicklern sehr einfach gemacht, ihre Apps für Linux-Benutzer über den Snap Store (einen Linux-App-Store) zu veröffentlichen. Indem Canonical Linux zu einer erstklassigen Flutter-Plattform macht, lädt es App-Entwickler ein, ihre Apps für Millionen von Linux-Benutzern zu veröffentlichen und erweitert die Verfügbarkeit qualitativ hochwertiger Apps, die ihnen zur Verfügung stehen.

Viele Dinge an Flutter sind für Canonical spannend:

  • Ein schnell wachsendes Ökosystem von Anwendungsentwicklern
  • Multiplattform-Unterstützung
  • Hochoptimierte native Anwendung
  • Ein modernes UI-Framework, das deklarative, reaktive und zusammensetzbare Widgets unterstützt
  • Umfangreiche Entwicklungsplattform mit Visual Studio Code, Android Studio und IntelliJ

Googles erste Ankündigung der Desktop-Unterstützung für Flutter begann mit einer Alpha-Version mit Unterstützung für macOS; Pläne für Linux und Windows sind ebenfalls in Arbeit. Canonical hat erheblich in Flutter investiert und ein Entwicklerteam zusammengestellt, das gemeinsam mit den Entwicklern bei Google daran arbeitet, das Beste von Flutter auf die meisten Linux-Distributionen zu bringen. Canonical wird weiterhin mit Google zusammenarbeiten, um die Linux-Unterstützung weiter zu verbessern und die Funktionsparität mit anderen unterstützten Plattformen aufrechtzuerhalten.

Flokk: Der Beweis, dass Flutter für den Desktop bereit ist

Um zu beweisen, dass Flutter für den Desktop bereit ist, haben wir mit Designern und Entwicklern bei gskinner zusammengearbeitet, um eine innovative, schöne Flutter-Desktop-App zu erstellen. Flokk ist eine reale Anwendung, die reale Daten verarbeitet, insbesondere Ihre Google-Kontaktliste.

Diese Videoadresse: https://www.youtube.com/watch?time_continue=120&v=cTFJcq7UTRY&feature=emb_logo

Neben der Möglichkeit, Ihre Kontakte zu verwalten (einschließlich der Suche nach Kontakten, dem Hinzufügen neuer Kontakte und dem Bearbeiten vorhandener Kontakte), können Sie mit Flokk auch Ihre GitHub- und Twitter-Handles mit Ihren Kontaktinformationen verknüpfen.

Durch die Anzeige von GitHub- und Twitter-Benachrichtigungen werden Ihre Kontakte zu Ihrem persönlichen sozialen Netzwerk. Und wenn Ihr bevorzugtes soziales Netzwerk nicht in den Flokk-Kontakten aufgeführt ist, haben wir eine gute Nachricht für Sie: Flokk ist vollständig Open Source, Sie können also einen PR senden, um Ihren Favoriten hinzuzufügen.

Neben Innovationen im sozialen Bereich nutzt Flokk auch Flutter-Funktionen, um großartig auszusehen. Nur ein Beispiel: Ein dunkles Design kann nicht nur die Farben wechseln, sondern den Wechsel auch animieren.

Das Kreativteam hinter der Flokk Contacts-App wird von Grant Skinner geleitet, der für sein herausragendes Design und die Umsetzung innovativer Benutzererlebnisse bekannt ist. Grant sagte einmal über die Verwendung von Flutter unter Linux:

„Die Entwicklung der Flokk Contacts-App war so einfach! Wir konnten unser gesamtes Flutter-Know-how auf Linux anwenden, fast ohne Anpassungen, und die App funktioniert großartig. Die Zusammenarbeit mit dem Canonical-Team war eine tolle Erfahrung. Sie sind begeistert, engagiert und leidenschaftlich dabei, Flutter zu verbessern, nicht nur für Linux, sondern für jede Plattform. Das war ein fantastisches Projekt und ich freue mich darauf, mit Flutter ein weiteres wichtiges Betriebssystem anzusprechen.“ – Grant Skinner

Wenn Sie die Flokk-App auf einem Linux-Computer verwenden möchten, können Sie die neueste Version auf GitHub herunterladen. Wenn Sie Snap verwenden, können Sie alternativ die Flokk-App aus dem Snap Store herunterladen.

Flutter ganz einfach unter Linux installieren

Nachdem Sie nun gesehen haben, wie gut Flutter bei Desktop-ähnlichen Anwendungen, insbesondere unter Linux, funktioniert, möchten Sie es sicherlich auf Ihrem eigenen Linux-Rechner zum Laufen bringen. Um dies so einfach wie möglich zu machen, stellen wir das Flutter SDK für Linux gerne im Snap Store zur Verfügung. Der Flutter SDK-Snapshot bietet alles, was Sie zum Entwickeln von Flutter-Anwendungen auf Ihrer bevorzugten Linux-Distribution benötigen. Sie müssen nicht eine Menge Entwicklungsabhängigkeiten installieren; installieren Sie einfach den Flutter SDK-Snapshot und Ihre bevorzugte IDE, und Sie haben alles, was Sie zum Erstellen, Erstellen und Veröffentlichen von Linux-Apps benötigen.

Wenn Sie beispielsweise mit der Entwicklung von Flutter-Apps für Linux beginnen möchten und Visual Studio Code als IDE verwenden, müssen Sie in einem Linux-Terminal nur Folgendes tun:

$ Snap-Installation - klassisches Flutter
$ Snap-Install - klassischer Code
$ code --install-extension dart-code.flutter

Wenn Sie auch mobile Apps mit Linux entwickeln möchten, können Sie dies tun, indem Sie das Android SDK oder Android Studio (das das Android SDK enthält) installieren. Weitere Informationen zum Flutter SDK finden Sie unter https://snapcraft.io/flutter

Flutter für Linux-Desktop

Nachdem Sie das Flutter SDK auf Ihrem Linux-Computer installiert haben, müssen Sie zum Erstellen von Desktop-Apps ein Upgrade auf den Flutter-Entwickler- oder Masterkanal durchführen. Aktivieren Sie dann die Linux-Desktopunterstützung:

$ Flutter-Kanal-Entwickler
$ Flutter-Upgrade
$ Flutter-Konfiguration --enable-linux-desktop

Wenn Sie jetzt ein neues Flutter-Projekt erstellen, erhalten Sie ein Linux-Unterverzeichnis, mit dem Sie die App auf einem Linux-Desktop ausführen können:

$ Flutter erstellt Zähler
$ CD-Zähler
$ flutter run -d linux 

Sie erhalten eine brandneue Linux-App, die mit Flutter erstellt wurde und auf der neuesten stabilen Version von GTK+ läuft. Wenn Sie über ein vorhandenes Flutter-Projekt verfügen und diesem nach der Aktivierung von Linux Linux-Unterstützung hinzufügen möchten, können Sie wie folgt ein Linux-Unterverzeichnis hinzufügen:

$ cd meine_flutter_app
$ Flutter erstellen.

Dadurch wird das Linux-Unterverzeichnis mit dem Runner-Projekt erstellt, das zum Erstellen und Ausführen von Flutter-Apps auf dem Linux-Desktop erforderlich ist.

Von Flutter aus auf nativen Code in Linux zugreifen

Zusätzlich zur Unterstützung des Desktops durch das Schreiben von Dart zum Erstellen von Flutter-Widgets können Ihre Linux-Desktop-Apps über Plattformkanäle oder die Dart-Fremdfunktionsschnittstelle von C/C++ aus auf alle nativen Linux-Betriebssysteme zugreifen. Wenn Sie vorhandenen Code wiederverwenden möchten, finden Sie ihn auf den Paketmanager-Websites von pub.dev, Dart und Flutter. Die meisten Pakete, die Sie auf pub.dev finden, sind reines Dart und die meisten funktionieren in einer Linux-Anwendung einwandfrei. Einige Softwarepakete, sogenannte Plug-Ins, enthalten nativen Code, der für eine oder mehrere Plattformen spezifisch ist. Als Teil dieser Veröffentlichung haben wir drei Plugins auf pub.dev veröffentlicht, die native Linux-Funktionen verwenden:

  • url_launcher: Startet den Standardbrowser unter der angegebenen URL
  • shared_preferences: Benutzereinstellungen, die zwischen Anwendungssitzungen geteilt werden
  • path_provider: Pfadinformationen zu speziellen Verzeichnissen, wie Downloads, Bilder usw.

Sie können jedes dieser Plugins in Ihren Anwendungen verwenden und als Beispiele dafür, wie Sie von Flutter-Code aus nativ auf Linux zugreifen können, etwa die Linux-Implementierung von url_launcher.

Im Snap Store bereitstellen

Um Ihre Flutter-App im Snap Store bereitzustellen, müssen Sie zuerst Snapcraft installieren, ein Tool, mit dem Sie Ihre App schnell erstellen und veröffentlichen können:

$ sudo snap installiere snapcraft --classic

Um das Snapcraft-Tool auszuführen, müssen Sie im Projektverzeichnis Ihrer Anwendung eine Datei snapcraft.yaml erstellen. Hier ist beispielsweise die snapcraft.yaml-Datei von Flokk:

Name: Flokk-Kontakte
Version: 1.0.1
Zusammenfassung: Flokk-Kontakte
Beschreibung: Ein frischer und moderner Google-Kontakte-Manager, der sich in GitHub und Twitter integrieren lässt.
Beschränkung: streng
Basis: core18
Klasse: stabil
Apps:
Flokk-Kontakte:
Befehl: Flokk-Kontakte
Erweiterungen: [flutter-master]
Stecker:
- Netzwerk
Teile:
Flokk-Kontakte:
Quelle: .
Plugin: Flutter
flutter-target: lib/main.dart # Haupteinstiegspunktdatei der App

Jetzt können Sie im Verzeichnis mit der Datei snapcraft.yaml Snapcraft ausführen, um einen Snapshot Ihrer Anwendung zu erstellen.

$ Schnapphandwerk

Wenn alles gut geht, wird eine Datei in Ihrem aktuellen Arbeitsverzeichnis generiert, zum Beispiel flokk-contacts_1.0.1_amd64.snap.

Nachdem Sie Ihr Konto für die Veröffentlichung im Snap Store eingerichtet haben, können Sie Ihren Snap veröffentlichen:

$ Snapcraft-Anmeldung
$ Snapcraft-Register Flokk-Kontakte
$ Snapcraft-Upload: flokk-contacts_1.0.1_amd64.snap --release edge

Dieser Befehl lädt die App in den Snap Store hoch und versucht, sie im Edge-Kanal zu veröffentlichen. Sobald eine App im Edge-Kanal veröffentlicht ist, kann sie über den Snap Store-Desktop-Client oder mithilfe der Befehlszeile installiert werden:

$ snap install --edge flokk-contacts

Weitere Einzelheiten zum Erstellen Ihres ersten Snaps und zum Veröffentlichen im Snap Store finden Sie im geführten Tutorial unter https://snapcraft.io/first-snap.

Flutter Linux Desktop-Gehäuse

Die Flokk-App ist ein hervorragendes Beispiel für eine reale Flutter-App für den Linux-Desktop. Ein einfacheres Beispiel ist die App „Photo Search“, die ebenfalls speziell dafür entwickelt wurde, die Funktionen des Desktops zu demonstrieren.

Photo Search ist eine einfache Online-Fotosuchanwendung, die mehrere Plug-Ins verwendet, um auf native Plattformfunktionen zuzugreifen und sowohl macOS als auch Linux zu unterstützen.

Für ein Beispiel einer Linux-Desktop-App mit Schritt-für-Schritt-Anleitungen empfehle ich das Codelab „Write Flutter Desktop App“, das Sie durch die Erstellung eines GitHub-Clients in Flutter mit OAuth und GraphQL führt.

Für eine App mit umfassenderem Funktionsumfang, die mehr von der Oberfläche von Flutter nutzt und mehrere Applets bietet, empfehle ich die Flutter Gallery, die letztes Jahr neu gestaltet wurde und sowohl Desktop- als auch Mobilgeräte unterstützt. Wenn Sie es in Aktion sehen möchten, können Sie es auch im Snap Store ausprobieren.

Eine weitere Desktop-App, die zeigt, wie viel Spaß Flutter machen kann, ist ein Multiplayer-Spiel namens Batufo von Thorsten Lorenz. Das Spiel spielt vor wunderschönen Kulissen und ermöglicht es Spielern aus der ganzen Welt, in Echtzeit gegeneinander anzutreten.

Thorsten hat das Spiel entwickelt, um mehrere Flutter-Plattformen zu unterstützen, darunter Linux, macOS, Android und iOS. Wenn Sie sehen möchten, wie er arbeitet, und über zukünftige Updates auf dem Laufenden bleiben möchten, stellt er seine Codierungssitzungen als Videos und den Code auf GitHub zur Verfügung. Um das Spiel unter Linux zu installieren, können Sie es aus dem Snap Store herunterladen.

Zusammenfassung

Mit dieser Alpha-Version und der engen Zusammenarbeit zwischen Google und Canonical können Linux-Entwickler Flutter-Unterstützung für das Betriebssystem ihrer Wahl erhalten. Installieren Sie das Flutter SDK per Snap. Erstellen und testen Sie Ihre Desktop-Apps unter Linux mit Visual Studio Code oder Android Studio. Stellen Sie Ihre App im Snap Store bereit. Die neuesten Einzelheiten finden Sie auf der Desktop-Seite von flutter.dev. Geben Sie uns vor allem Feedback, damit wir weiter daran arbeiten können, Flutter für jede unterstützte Flutter-Plattform so gut wie möglich zu machen.

Linux Flutter vom Canonical-Team stellt einen großen Schritt vorwärts in unserem Traum dar, Flutter zur besten Möglichkeit zum Erstellen von Apps zu machen, unabhängig von der Zielplattform. Durch die Ausrichtung auf Desktops lässt sich die Flutter-Engine besser an die große Zahl von Geräten anpassen, die Google selbst nicht direkt unterstützen kann. Wir planen jedoch, zu diesem Zweck weiterhin Partnerschaften aufzubauen und Ökosysteme zu ermöglichen.

Geräte auf der ganzen Welt benötigen schnelle, schöne Apps, und genau dafür wollen wir Flutter bereitstellen.

<<:  Win10 Installation von MySQL 5.7 MSI-Version des Tutorials mit Bildern und Text

>>:  Skin-Change-Lösung basierend auf Vue kombiniert mit ElementUI

Artikel empfehlen

So legen Sie in Linux eine feste IP fest (getestet und effektiv)

Öffnen Sie zunächst die virtuelle Maschine Öffnen...

MYSQL 5.6 Bereitstellung und Überwachung der Slave-Replikation

MYSQL 5.6 Bereitstellung und Überwachung der Slav...

JS verwendet Canvas-Technologie, um Echarts-Balkendiagramme zu imitieren

Canvas ist ein neues Tag in HTML5. Sie können js ...

UCenter-Homepage fügt Statistikcode hinzu

UCenter Home ist ein von Comsenz veröffentlichtes ...

Vue implementiert einen Scrollbar-Stil

Zuerst wollte ich den Stil der Bildlaufleiste des...

Vue-Anfängerhandbuch: Erstellen des ersten Vue-cli-Scaffolding-Programms

1. Vue – Das erste Vue-CLI-Programm Die Entwicklu...

Grafisches Tutorial zur Installation und Konfiguration von MySQL 5.7.23

Dieser Artikel zeichnet das Installationstutorial...

So migrieren Sie den MySQL-Speicherort auf eine neue Festplatte

1. Bereiten Sie eine neue Festplatte vor und form...

So finden Sie langsame MySQL-Abfragen

Vorwort Ich glaube, dass jeder in seiner tägliche...

HTML-Tabellen-Tag-Tutorial (46): Tabellenfußzeilen-Tag

Mit dem Tag <tfoot> wird der Stil der Tabel...