Direkt zum Hauptinhalt

Eine Studio-App eigenständig ausführen

Ziel​

Die App, die Sie gezeichnet haben, als eigenständige App öffnen – aus der Liste der Shell, mit nichts drumherum außer der oberen Leiste der Plattform.

Warum es das gibt​

Eine Studio-App ist keine Seite innerhalb von etwas anderem. Sie enthält ihre eigenen Bildschirme und wechselt zwischen ihnen, sie braucht also keine Navigationsleiste, keine Sitemap und keine modellgesteuerte App, um etwas Ganzes zu sein. Das macht sie später als Front eines Portals verwendbar, und deshalb erscheint sie in der App-Liste neben Ihren anderen Apps und nicht nur innerhalb einer davon.

Beide Wege, sie zu erreichen, sind echt, und Sie wählen pro App:

ErreichtSieht aus wieVerwenden, wenn
Eigenständig, aus der App-ListeIhre Zeichnung, volle Breite, keine Navigationsleistedie App besteht aus den gezeichneten Bildschirmen
In der Navigation einer modellgesteuerten Appeine Leiste mit Tabellen neben Ihrer Zeichnungdie Zeichnung eine Landingpage über Datensätzen ist – siehe Eine Studio-App aus einer modellgesteuerten App öffnen

Voraussetzungen​

  • Eine Studio-App, die Sie gezeichnet und gespeichert haben – siehe Eine Studio-App zeichnen.
  • Die Umgebung, in der sie gebaut wurde, oder eine, in die ihre Lösung importiert wurde.

Schritte​

  1. Öffnen Sie die Plattform-Shell, und prüfen Sie, ob das Auswahlfeld für die Umgebung auf der Umgebung steht, in der Ihre App liegt.
  2. Suchen Sie Ihre App in der App-Liste. Auf ihrer Kachel steht unter dem Symbol Studio-App.
  3. Drücken Sie darauf. Die App öffnet sich auf ihrem Startbildschirm – dem, der im Designer unter Öffnet mit genannt ist.
  4. Bewegen Sie sich mit den Schaltflächen, die Sie gezeichnet haben, darin. Jedes navigate("…") bringt Sie zu diesem Bildschirm.

Die Adressleiste gehört dazu​

Jeder Bildschirm hat seine eigene Adresse: /apps/<your app>/<screen name>. Das ist keine Dekoration –

  • Zurück im Browser führt zum vorherigen Bildschirm, statt die App zu verlassen;
  • ein Neuladen kehrt zu dem Bildschirm zurück, auf dem Sie waren;
  • ein Link, den Sie kopieren, öffnet sich dort für die Person, der Sie ihn schicken.

Der Bildschirmname in der Adresse ist der Name auf dem Rahmen, ein Bildschirm namens Order details erscheint also als Order%20details – so schreibt der Browser ein Leerzeichen.

Was ein Link nicht transportieren kann, ist ein Wert, der mit navigate("Details", { id }) übergeben wird. Solche Werte reisen im Moment, zwischen zwei Bildschirmen; wer über Zurück, Neuladen oder einen eingefügten Link ankommt, öffnet den Bildschirm mit nichts in screen.params. Wenn ein Bildschirm über das erreichbar sein muss, was er zeigt, ist das eine Portalseite mit einer entworfenen Adresse, keine Übergabe.

Wer sie öffnen kann​

Eine App zu öffnen ist eine Berechtigung, die geprüft wird, wenn das Dokument abgerufen wird – dieselbe Berechtigung, ob die App eigenständig oder aus einer modellgesteuerten App heraus geöffnet wird. Einem Benutzer ohne Berechtigung wird gesagt, dass er sie nicht öffnen darf, statt ihm einen leeren Bildschirm zu zeigen.

Beachten Sie, dass eine Berechtigung pro App gilt, nicht pro Bildschirm. Zwei Bildschirme, die verschiedene Personen sehen sollen, sind zwei Apps oder eine App, die verbirgt, was eine Person nicht sehen darf – und Verbergen in einer Zeichnung ist eine Höflichkeit, keine Sicherheit: Was einen Datensatz tatsächlich schützt, ist die Berechtigung auf dem Datensatz.

Eine App steht nur in der App-Liste von Personen, die sie öffnen dürfen. Um eine App weiterzugeben, wählen Sie sie unter Studio-Apps aus und klicken Sie auf Freigeben. Es ist dasselbe Fenster wie bei einer modellgesteuerten App: Haken Sie die Rollen an, für die die App gedacht ist, und Personen mit Zugriff nennt, wen das erreicht. Siehe Eine App den Personen geben, die sie nutzen.

Das Fenster füllen: die Leiste der Plattform ausblenden​

Eine App kann die Shell bitten, nichts von ihrem eigenen Rahmen anzuzeigen – keine obere Leiste, keinen Umgebungswechsler, keine Sprach- oder Designsteuerung und kein Benutzermenü. Aktivieren Sie Plattformleiste ausblenden bei der App (Studio-Apps → Ihre App → Bearbeiten). Die Option ist aus, solange Sie sie nicht einschalten.

Zeichnen Sie diese Dinge zuerst in die App. Was das Häkchen entfernt, ist der einzige Weg aus dem Produkt hinaus, eine gezeichnete App, die die Leiste ersetzt, muss also mitbringen, was die Leiste mitbrachte:

Was die Leiste der Plattform hatWas ein Bildschirm zeichnen kann
Wer angemeldet ist, und das Fotouser.name, user.email und ein Bild, dessen Bindung Bild user.photo ist
Hell und dunkelsetTheme("dark") / setTheme("light") und ui.theme, um zu lesen, welches gerade gilt
AbmeldensignOut()
Die Umgebungsauswahlnichts – und genau deshalb sollten Sie die Leiste für alles eingeschaltet lassen, was ein Ersteller benutzt

Das Beispiel Support desk tut all das; öffnen Sie es, und sehen Sie sich seine obere Leiste an.

Verwenden Sie es für eine Anwendung, die nicht offensichtlich Teil einer Suite ist – ein Kiosk, ein Bildschirm an der Wand, ein Werkzeug für einen einzigen Zweck – oder wenn Ihre eigene obere Leiste direkt unter der der Plattform sitzt und die beiden wie dasselbe Ding zweimal wirken.

Sie in eine andere Umgebung verschieben​

Eine App reist in ihrer Lösung, wie jede andere Komponente. Exportieren Sie sie aus der Umgebung, in der Sie sie gebaut haben, und importieren Sie sie in die nächste; die App erscheint ohne weiteren Schritt in der App-Liste dieser Umgebung. Links funktionieren über den Umzug hinweg weiter, denn eine App wird über ihren logischen Namen adressiert und nicht über eine ID, die sich ändert.

Fehlerbehebung​

  • Die App steht nicht in der Liste. – Sie sind in der falschen Umgebung, oder ihre Lösung wurde hier nicht importiert. Prüfen Sie zuerst die Umgebungsauswahl.
  • Sie öffnet sich auf dem falschen Bildschirm. – Öffnet mit im Designer nennt den Startbildschirm. Öffnen Sie die App im Designer, prüfen Sie es, und speichern Sie dann.
  • Eine Schaltfläche meldet, diese App habe keinen Bildschirm mit diesem Namen. – Der Rahmen wurde umbenannt, nachdem der Handler geschrieben wurde. Die Meldung nennt, wonach gefragt wurde; benennen Sie den Rahmen zurück, oder korrigieren Sie den Handler.
  • Die App meldet, sie könne nicht geöffnet werden. – Ihre Rolle hat keine Berechtigung dafür. Eine App zu öffnen ist eine Berechtigung wie jede andere; fragen Sie die Person, die Ihre Sicherheitsrollen verwaltet.
  • Zurück verlässt die App, statt zum letzten Bildschirm zu gehen. – Sie sind direkt auf diesem Bildschirm angekommen (ein eingefügter Link, ein Neuladen), es gibt also im Verlauf dieser App nichts davor.
  • Es gibt keinen Weg aus der App hinaus. – Plattformleiste ausblenden ist eingeschaltet, und die App zeichnet kein eigenes Abmelden. Schalten Sie es aus, oder fügen Sie eine Schaltfläche hinzu, deren Handler signOut() aufruft.
  • Das Foto in meiner oberen Leiste ist leer. – Die Person hat kein Foto in ihrem Profil, und das ist der Normalfall. Binden Sie Angezeigt des Bildes an user.photo != "", und zeichnen Sie dahinter einen farbigen Kreis, wie es das Beispiel tut.

Verwandte Szenarien​