Articles

In-App-Bewertungen für Ihre Android-Apps

Saamer Mansoor

Saamer

Oktober 22, 2020

Dies ist ein Gastblog von Saamer Mansoor. Saamer ist ein Tüftler und ein App-Entwickler bei TheFirstPrototype.com. Sie finden ihn auf Twitter @saamerm, er schreibt auf Medium und trägt zu Open Source auf GitHub bei.

Als Android Play Core v1.8 im August 2020 veröffentlicht wurde, fügte es eine großartige neue Funktion hinzu, die es Nutzern ermöglicht, In-App-Bewertungen abzugeben. Patrick Getzmann hat in den letzten Monaten an einer Bindung für diese Bibliothek gearbeitet und sie kürzlich aktualisiert, um v1.8 zu unterstützen. Das bedeutet, dass du mit nur ein paar Zeilen Code diese und viele andere Funktionen in deine App bringen kannst.

In-App-Bewertungen verbessern das Nutzererlebnis, da Nutzer es nicht mögen, wenn sie aus ihrer App herausgeführt werden. Apple bietet diese Funktion seit der Veröffentlichung von iOS 10.3 im März 2017 an, weshalb sie auf Android mit Spannung erwartet wurde. Schauen wir uns an, wie wir die neue Play Core-Bibliothek verwenden können, um diese Funktion in Android-Apps zu bringen.

Screenshots showing In-App Reviews on a Xamarin Android app

Play Core-Bibliothek

Zu Beginn dieser Reise habe ich eng mit Patrick zusammengearbeitet, um das PlayCore-NuGet-Paket zu aktualisieren, das direkt zu Ihrem Android-Projekt hinzugefügt werden kann. Da die API ein Kernbestandteil von Android ist, habe ich diesen PR zu Patricks Projekt als Beispiel für die Verwendung der API erstellt. Er zeigt, wie man ein InAppReviewService.cs in seinem Android-Projekt erstellt und es mit Hilfe von Dependency Injection aufruft.

Wie aus dem Nichts meldete sich James Montemagno bei mir, um diese Funktionalität in sein bereits beliebtes Store Review Plugin zu integrieren. Wir haben uns mit ihm zusammengetan, um die Funktion über seine NuGet-Bibliothek zugänglich zu machen, in der die Funktion bereits für iOS enthalten war. Das bedeutet, dass die Implementierung in Ihre App jetzt ganz einfach ist!

Schritt 1 – Hinzufügen des NuGet

Der erste Schritt besteht darin, die neu aktualisierte Version 3 des Store Review Plugin NuGet zu all Ihren Projekten hinzuzufügen. Dadurch wird die Play Core Bindings Library automatisch als Abhängigkeit hinzugefügt.

Schritt 2 – Aufruf RequestReview()

Als nächstes entscheiden Sie, wie Sie die Überprüfung anfordern möchten. Sie könnten sie auslösen, wenn der Benutzer auf eine Schaltfläche klickt, oder Sie könnten sie manuell auslösen, nachdem der Benutzer die App eine bestimmte Zeit lang verwendet hat. Wenn Sie eine Überprüfung anfordern möchten, rufen Sie einfach die folgende Codezeile auf:

await CrossStoreReview.Current.RequestReview(false);

Damit wird der Überprüfungsprozess ausgelöst, und das Betriebssystem entscheidet, ob er präsentiert wird. Der übergebene Boolesche Wert bestimmt, ob Sie sich im Testmodus befinden, der sich hervorragend zum Testen Ihrer Anwendung vor der Freigabe eignet.

Schritt 3 – Optionale ProGuard-Konfiguration

Wenn Sie Ihre App mit der Option „Link All“ veröffentlichen und ProGuard/r8 aktiviert haben, müssen Sie in der ProGuard-Datei in Ihrem Android-Projekt Folgendes hinzufügen:

-keep class com.google.android.play.core.common.PlayCoreDialogWrapperActivity-keep class com.google.android.play.core.review.** { *; }-keep class com.google.android.play.core.tasks.** { *; }

Testing

Das Testen von In-App-Reviews ist auf Android genauso schwierig wie auf iOS. Es gibt viele Einschränkungen, wenn Sie Ihre App testen wollen, wie Sie hier sehen können. Unabhängig davon, was Sie versuchen, können Sie die Benutzeroberfläche der In-App-Bewertung nicht sehen, wenn sie manuell erstellt und verteilt wird. Sie müssen die App aus dem Play Store herunterladen, um die Benutzeroberfläche sehen zu können. Der einfachste Weg, dies zu testen, ist die Verwendung der „Internen App-Freigabe“ von Android.

Und da haben Sie es, Sie haben jetzt plattformübergreifende In-App-Reviews für Ihre Xamarin-Apps. Bevor ich den Beitrag beende, möchte ich noch kurz erzählen, wie die gesamte Bibliothek und die Integration entstanden sind, und ich hoffe, dass das Teilen meiner Geschichte Sie ermutigt, zur großartigen Xamarin-Community beizutragen.

Back Story

Angefangen hat alles mit Reddit. Ich habe den Android-Subreddit abonniert, über den ich mich über die neuesten Funktionen informiere. Als ich von den In-App-Bewertungen auf Android hörte, war ich neugierig, sie auch in meiner App zu implementieren, aber dann recherchierte ich und erfuhr, dass es keine Pläne für eine offizielle Bindung für Play Core gab. Ich fand jedoch Patrick Getzmans NuGet, das bereits die schwere Arbeit der Erstellung einer Bindung erledigt hatte. Zu der Zeit war es nur gegen Play Core v1.7.2 gebunden. Da v1.8 für In-App-Reviews benötigt wird, habe ich einfach eine Ausgabe erstellt.

Ein wenig später hatte ich einen Abgabetermin, also entschied ich mich, zu prokrastinieren und stattdessen etwas zu tun, und so beschloss ich, diese Bindungsbibliothek auf v1.8 zu aktualisieren. Mit vielen Mausbewegungen und Tastendrücken folgte ich diesem Video von Jonathan Dick und bekam die .AAR-Datei für v1.8 von Android nach einigen Versuchen zum Laufen! Ich reichte einen PR ein und konnte die offizielle Android-Dokumentation verwenden, um das Beispiel in Pats Repository zu aktualisieren. Es war eine wunderbare Erfahrung und ich bin froh, dass ich zu diesem ausgezeichneten Feature beitragen konnte.

Ich hoffe, dass Sie dies praktisch finden, und wenn Sie dies in Ihren Apps verwenden, teilen Sie bitte Screenshots mit mir, oder Sie können einfach Hallo sagen!

Saamer Mansoor
Saamer Mansoor

Follow