Android-App startet Seite nicht mehr im Browser der App, sondern im vollständigen Browser

Warum ist die Android-App in Version 1.7.1 dazu übergegangen, Websites im vollständigen Browser zu öffnen, anstatt eine Browseransicht innerhalb der App zu verwenden?

Ich denke, dieser Commit ist der Grund, da er die Verwendung von ChromeCustomTab entfernt.

2 „Gefällt mir“

Die App stürzt jetzt auch in der Hälfte der Fälle beim Start ab. Ist es möglich, auf eine ältere Version zurückzugehen?

Es tut uns leid zu hören, dass die App beim Start abstürzt. Ich werde das untersuchen. Könntest du mir bitte mitteilen, welches Gerät du verwendest und welche Android-Version installiert ist?

Wie du bereits erwähnt hast, wurde die Änderung, den Standardbrowser anstelle von ChromeCustomTab zu verwenden, in diesem Commit aus dem Jahr 2020 vorgenommen. Sie sollte bereits in der vorherigen Version der App (ich glaube 1.6.0) enthalten gewesen sein. Wir haben diese Änderung vorgenommen, weil ChromeCustomTab fehlerhaft war und die Installation von Chrome auf dem Gerät erforderlich war, damit es funktionierte. (Viele Benutzer haben sich über die Chrome-Anforderung der App beschwert.)

Samsung Galaxy S9 mit Android 10 und dem Sicherheitspatch vom 1. Mai 2021 (die aktuell verfügbare Version). Ich vermute, dass der Absturz auftritt, wenn die App eine Weile im Hintergrund war und nicht explizit geschlossen wurde.

Der Commit stammt aus der Zeit nach der Veröffentlichung von Version 1.6.0 (Februar 2020, sofern https://apkpure.com/discoursehub/com.discourse/versions zutrifft). Der entfernte Code hat bereits einen Fehler abgefangen, bei dem ChromeCustomTab nicht verwendet wurde und der Link stattdessen direkt geöffnet wurde. Oder würde die App ohne installiertes Chrome gar nicht starten?

1 „Gefällt mir“

Danke, du hast recht. Die Entfernung von ChromeCustomTab wurde in Version 1.6.2 vorgenommen, die jedoch nie in die Produktion ging (sie befand sich nur im Beta-Stadium). Somit ist diese Änderung effektiv neu in Version 1.7.0. Weitere Details dazu, warum wir den Wechsel vorgenommen haben, findest du unter Discourse Hub doesn't open forums in their PWAs - #12 by md-misko. Zusätzlich zur Kompatibilität ohne Chrome ermöglicht diese Änderung auch das Starten der PWA über DiscourseHub.

Ich werde gleich eine Beta-Version mit einer Korrektur für das Absturzproblem veröffentlichen. Sobald diese bereit ist, werde ich hier einen Link dazu posten.

1 „Gefällt mir“

OK, die Lösung besteht also darin, für jedes Forum eine PWA zu installieren? Nein, das funktioniert auch nicht, es öffnet weiterhin einen Tab in Firefox (ich habe die PWA zwar mit Chrome erstellt). Ich muss sagen, ich habe das Chrome-Tab-Erlebnis nie als langsam empfunden, definitiv nicht im Vergleich zum Öffnen des vollständigen Browsers. Auch das Zurücknavigieren zum Hub war schnell – einfach nach unten ziehen, um das X des Chrome-Tabs sichtbar zu machen.

Ja, Sie können wählen, ob Sie die PWA oder einen Browser verwenden möchten. Wenn keine Eingabeaufforderung erscheint, können Sie die Standardeinstellungen zurücksetzen. Suchen Sie in Ihren Android-Einstellungen nach „Links öffnen", finden Sie die URL Ihrer Website und klicken Sie auf deren Seite auf „Standards löschen". Sobald dies erledigt ist, werden Sie beim Aufruf von DiscourseHub erneut aufgefordert. Wenn eine PWA installiert ist, sollte es ungefähr so aussehen:

Außerdem, für das Absturzproblem, bitte versuchen Sie Version 1.7.2 im Beta-Release-Kanal – https://play.google.com/store/apps/details?id=com.discourse

1 „Gefällt mir“

Ich habe kein Google-Konto und kann daher nicht auf den Beta-Kanal zugreifen (ich verwende Aurora Store, was dies anscheinend nicht unterstützt).

Ich habe die Standardwerte in Firefox zurückgesetzt und erhalte jetzt die Eingabeaufforderung, aber es werden nur Browser angezeigt, nicht die PWA.

Und die Chrome PWA sendet mir ebenfalls keine Benachrichtigungen. Egal, ein Deaktivieren/Reaktivieren hat bewirkt, dass eine gesendet wurde. Weitere Untersuchungen und das Lesen von Add to homescreen banner on Android - #62 by Falco deuten darauf hin, dass der WebAPK-Teil bei mir nicht funktioniert, da dieser die Intents für die URLs der Website bindet. Ich sehe weder ein neues Symbol im App-Drawer noch in den App-Einstellungen.

1 „Gefällt mir“

Ich habe gerade getestet, deine Website als WebAPK auf meinem Telefon hinzuzufügen, und es hat funktioniert, wenn auch etwas länger gedauert. Beim Testen mit anderen Websites scheint der WebAPK-Minting-Server von Google derzeit etwas langsam zu sein, aber ein paar Minuten Wartezeit haben bei mir funktioniert.

1 „Gefällt mir“

Version 1.7.2 der App ist jetzt im Google Play Store in Produktion (ich bin mir jedoch nicht sicher, wie schnell der Aurora Store das Update sehen wird).

Der Aurora Store nutzt den Play Store, jedoch ohne ein Google-Konto auf Ihrem Telefon zu benötigen (er verwendet ein anonymes Konto, um ein Token zu erhalten).

Vielleicht ist das auch der Grund, warum WebAPK für mich nicht funktioniert, falls dafür die Erstellung eines Google-Kontos über die Server von Google erforderlich ist.

Oder liegt es daran, dass Chrome Google Play aufruft, um das WebAPK zu installieren chromium/chrome/android/java/src/org/chromium/chrome/browser/webapps/WebApkInstaller.java at main · chromium/chromium · GitHub, was ein Google-Konto voraussetzt.

Um also Nutzerbeschwerden über die Installation von Chrome zu begegnen, wurden ChromeCustomTabs entfernt und stattdessen ein Arbeitsablauf rund um WebAPKs eingeführt, die Chrome (oder den Samsung-Browser) sowie ein Google-Konto für den bestimmungsgemäßen Betrieb benötigen. Das macht es weniger zugänglich. Zudem gibt es eine Möglichkeit, die Custom-Tab-Implementierung des Standardbrowsers zu nutzen, da etwa die Hälfte meiner Apps eine „Powered by Firefox"-Version statt der Chrome-Version erhält.

1 „Gefällt mir“

Ich habe mich etwas damit beschäftigt und bin auf Folgendes gestoßen:

https://git.tt-rss.org/fox/tt-rss-android/src/branch/master/org.fox.ttrss/src/main/java/org/fox/ttrss/CommonActivity.java#L97

Und hier ist eine Implementierung, die auf meinem Gerät korrekt benutzerdefinierte Tabs von Firefox verwendet:

Könntest du es also mit dieser zusätzlichen Erkennung wieder hinzufügen, wodurch die Abhängigkeit von Chrome ordnungsgemäß entfernt und die App wieder nutzbar gemacht wird?

Das Problem ist, dass ich den Nutzern eine Wahlmöglichkeit bieten möchte. Ein Zurück zu CustomTabs (und das Beheben der Chrome-spezifischen Einschränkung) bietet den Nutzern keine Wahl, sondern erzwingt den benutzerdefinierten Tab dauerhaft. Ein Nutzer, der die Website im Browser oder in einer PWA öffnen möchte, geht somit leer aus. Das können wir nicht wieder zulassen.

Ich werde jedoch prüfen, ob es möglich ist, den in-App benutzerdefinierten Tab als Option neben Browsern und PWAs hinzuzufügen. Das ist etwas knifflig, und ich bin mir nicht sicher, ob es zu 100 % umsetzbar ist, aber ich werde es versuchen.

Es kann etwas Zeit dauern, bis ich mich um diese Aufgabe kümmern kann, aber ich gebe Ihnen Bescheid, sobald eine testbare Beta verfügbar ist.

3 „Gefällt mir“

Ich habe am Wochenende etwas Zeit gefunden und gerade eine aktualisierte Version der Android-App (1.7.3) veröffentlicht, die es Benutzern ermöglicht, wieder auf benutzerdefinierte Tabs umzusteigen. Unten rechts auf dem Bildschirm gibt es einen neuen Button, der ein Einstellungsfenster öffnet, in dem Sie den Wechsel vornehmen können. Lassen Sie mich wissen, wie es läuft, sobald Sie die Aktualisierung durchgeführt haben.

3 „Gefällt mir“

Ich kann die aktualisierte App im Google Play Store nicht sehen. Wurde sie von Google zur Prüfung zurückgehalten oder ähnliches?

1 „Gefällt mir“

Es sollte heute dort sein, sorry dafür (die Play Store-Oberfläche setzt standardmäßig eine gestaffelte Ausrollung voraus).

Wie erwartet funktioniert es: Mit der Einstellung aktiviert, erhalte ich einen Chrome-Tab, und mit deaktivierter Einstellung wurde der vollständige Browser gestartet. Danke für das schnelle Update :slightly_smiling_face:

1 „Gefällt mir“

Diese Version hat die Abstürze behoben, aber die neue Version 1.7.3 stürzt bei mir wieder ständig ab.

Ich bin im Beta-Kanal. Sind diese Versionen zwischen Beta und dem Play Store (Produktion) synchronisiert?

[Bearbeitung]: Wenn „Seiten im In-App-Browser öffnen" eingestellt ist, öffnen sich PWA-fähige Seiten weiterhin als separate Apps (was erwartet wird), aber die Abstürze treten seltener auf (fast nie). Wenn diese Einstellung deaktiviert ist, stürzt die App jedes Mal ab.