Plugin-System
ReadAware-Plugins kombinieren Fähigkeiten, die der Desktop-Host bereitstellt. Sie können mit Büchern, Lesestatus, Annotationen, Unterhaltungen und Gedächtnis arbeiten, Aktionen und Anbieter hinzufügen und begrenzte Host-Dienste verwenden.
Diese Referenz folgt dem Entwicklungsstand. Gleiche die Anforderungen der Fähigkeiten mit deiner installierten App ab, bevor du ein Plugin erstellst oder veröffentlichst.
Eine Fähigkeitsfamilie auswählen
| Familie | Zweck | Beispiele |
|---|---|---|
| Domänen | Daten und Verhalten im Besitz von ReadAware | Bibliothek, Lesen, Annotationen, Unterhaltungen, Einstellungen, Gedächtnis |
| Contributions | Neue Aktionen, Auswahlmöglichkeiten oder Anbieterimplementierungen | Befehle, Kontextaktionen, Stimmen, Inhaltsquellen, Assistentenwerkzeuge, Designs |
| Dienste | Host-Operationen und Plugin-private Einrichtungen | Ressourcen, Netzwerk, Inferenz, Speicher, Zeitpläne, Jobs, Transaktionen |
| Schemas | Daten, die der Host rendert oder interpretiert | Ansichten, Einstellungsformulare, Designs |
Nutze den Capabilities Explorer, um echte Methoden zu suchen, Grenzen zu verstehen und ein Manifest zu beginnen. Die API-Referenz erklärt, wie die Familien zusammenspielen.
Von der Aufgabe der lesenden Person ausgehen
- Finden und navigieren: Verwende die Quellsuche und Bereichsabfragen der Library und danach die Reading-Navigation mit der aktuellen Sitzungssperre.
- Notizen sammeln und prüfen: Frage Annotations ab oder beobachte sie; bedingte Änderungen bewahren neuere Bearbeitungen.
- Mit Lesegedächtnis arbeiten: Verwende Memory-Abfragen und autorisierte Befehle für Erinnerungen, Klassifikation, Profile, Entitäten, Graphen und Context Bundles.
- Eine Unterhaltung unterstützen: Lies autorisierte Transkripte und Zusammenfassungen, schlage eine Runde zur Genehmigung durch den Host vor oder registriere ein Assistentenwerkzeug.
- Einen Ablauf automatisieren: Kombiniere Zeitpläne, eingegrenzte Änderungscursor, unterstützte dauerhafte Jobs und lokale Transaktionen.
- Externe Inhalte einbringen: Nutze origin-begrenzten Netzwerkzugriff, Inhaltsanbieter und versiegelte Ressourcen statt Auswegen über Dateisystem oder Browser.
Berechtigungen, Versionen und Objektfreigaben
Dies sind getrennte Prüfungen:
requiresdeklariert kompatible Fähigkeitsversionen.permissions,settingsAccessundnetworkAccessdeklarieren Autorität.- Die Buchfreigabe der nutzenden Person beschränkt den Akteur auf alle Bücher, das aktuelle Buch oder ein bestimmtes Buch.
- Lebenszyklus und aktuelle Laufzeitbedingungen bestimmen, ob eine bestimmte Operation jetzt verfügbar ist.
Ein Dienst ohne Berechtigung kann für eine bestimmte Methode trotzdem eine weitere Domänenfreigabe benötigen. Eine erfolgreiche Verfügbarkeitsabfrage ist ein Hinweis, aber keine Erlaubnis, die Ausführungsprüfung zu umgehen.
Vom Host gerenderte Oberflächen
Plugins liefern strukturierte Ansichten und Callbacks zurück. ReadAware besitzt Rendering, Fokus, Navigation, Lade- und Fehlerzustände, Designs und Bereinigung. Ansichten können Listen, Formulare, Detail-Layouts und begrenzte Blöcke enthalten und über den öffentlichen View-Vertrag live aktualisiert werden.
Plugins binden weder React noch beliebiges HTML, CSS, Iframes oder ein DOM ein. Verwende für neues UI-Verhalten einen unterstützten Contribution-Punkt.
Isolation und Lebenszyklus
Jedes Plugin läuft in einem Modul-Worker. Es erhält keinen direkten Zugriff auf Tauri, SQLite, Dateisystem, Prozesse oder DOM. Netzwerk und Speicher werden über den vom Host vermittelten Kontext verwendet.
Bei der Aktivierung werden Registrierungen vorbereitet und unterstützte Lesevorgänge erlaubt; geschäftliche Schreibvorgänge und externe Nebenwirkungen beginnen erst in aktiven Handlern. Eine Migration privater Daten läuft ausschließlich mit Speicherberechtigung. Eine fehlgeschlagene Aktivierung oder Migration wird zurückgerollt, bevor ein Kandidat die aktuelle Laufzeit ersetzt.
Die Installation bleibt eine Vertrauensentscheidung für Software. Prüfe Paketquelle, angeforderte Autorität, Netzwerkziele und Datenverarbeitung.
Von First-Party-Plugins lernen
Der Quellbaum enthält neben gebündelten Plugins funktionierende Beispiele wie Jumper, Dictionary und Sentence Reader. Quellbeispiele sind keine Zusage, dass jedes Paket in jedem Release ausgeliefert wird.