Articles

Recenze aplikací pro Android

Saamer Mansoor

Saamer

22. října 2020

Tento blog jako host napsal Saamer Mansoor. Saamer je kutil a vývojář aplikací na webu TheFirstPrototype.com. Najdete ho na Twitteru @saamerm, píše na Medium a přispívá do Open Source na GitHubu.

Když bylo v srpnu 2020 vydáno jádro Play systému Android v1.8, přidalo úžasnou novou funkci umožňující uživatelům poskytovat recenze v aplikacích. Patrick Getzmann posledních několik měsíců pracoval na vazbě pro tuto knihovnu a nedávno ji aktualizoval tak, aby podporovala verzi v1.8. To znamená, že pomocí pouhých několika řádků kódu můžete tuto funkci a mnoho dalších přinést do své aplikace.

Recenze v aplikaci zlepšují uživatelský zážitek, protože uživatelé nemají rádi, když jsou odváděni mimo aplikaci. Apple tuto funkci poskytuje od iOS 10.3 vydaného v březnu 2017, takže byla v systému Android velmi očekávaná. Podívejme se, jak můžeme pomocí nové knihovny Play Core tuto funkci přinést do aplikací pro Android.

Screenshots showing In-App Reviews on a Xamarin Android app

Knihovna Play Core

Na začátku této cesty jsem úzce spolupracoval s Patrickem na aktualizaci balíčku PlayCore NuGet, který lze přímo přidat do vašeho projektu pro Android. Vzhledem k tomu, že toto rozhraní API je jádrem systému Android, vytvořil jsem tento PR k Patrickovu projektu jako příklad jeho použití. Ukazuje, jak vytvořit InAppReviewService.cs v projektu Android a použít k jeho volání funkci dependency injection.

Z ničeho nic mě však oslovil James Montemagno s nabídkou integrace této funkce do svého již populárního pluginu Store Review. Spolupracovali jsme s ním, abychom tuto funkci zpřístupnili prostřednictvím jeho knihovny NuGet, která již tuto funkci pro iOS obsahovala. To znamená, že implementace této funkce do vaší aplikace je nyní jednoduchá!

Krok 1 – Přidání NuGetu

Prvním krokem je přidání nově aktualizované verze 3 pluginu Store Review NuGet do všech vašich projektů. Tím se automaticky přidá knihovna vazeb jádra Play jako závislost.

Krok 2 – Volání RequestReview()

Dále se rozhodněte, jakým způsobem chcete požádat o recenzi. Můžete ji spustit, když uživatel klikne na tlačítko, nebo ji můžete spustit ručně poté, co uživatel používal aplikaci po určitou dobu. Když chcete požádat o recenzi, jednoduše zavolejte tento následující řádek kódu:

await CrossStoreReview.Current.RequestReview(false);

Tím se spustí proces recenze a operační systém rozhodne, zda bude prezentována. Předaný boolean slouží k určení, zda jste v testovacím režimu, což je skvělé pro testování aplikace před vydáním.

Krok 3 – Volitelná konfigurace ProGuard

Pokud vydáváte aplikaci s možností Link All a máte povolený ProGuard/r8, musíte do souboru proguard v projektu pro Android přidat následující:

-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.** { *; }

Testování

Testování recenzí v aplikaci je na Androidu stejně jako na iOS ošemetné. Možnost testování aplikace má mnoho omezení, jak se můžete přesvědčit zde. Bez ohledu na to, co vyzkoušíte, nebudete moci zobrazit uživatelské rozhraní recenzí v aplikaci, pokud je sestaveno a distribuováno ručně. Abyste mohli zobrazit uživatelské rozhraní, musíte si aplikaci stáhnout z Obchodu Play. Takže nejjednodušší způsob, jak to vyzkoušet, je použít „Interní sdílení aplikací“ v systému Android.

A je to, nyní máte k dispozici multiplatformní recenze v aplikaci pro své aplikace Xamarin. Než tento příspěvek ukončím, chtěl jsem všem trochu přiblížit, jak celá knihovna a integrace vznikla, a doufám, že vás sdílení mého příběhu povzbudí k tomu, abyste přispěli k úžasné komunitě Xamarinu.

Příběh

Všechno to vlastně začalo na Redditu. Přihlásil jsem se k odběru subredditu Android, prostřednictvím kterého jsem se dozvěděl o nejnovějších funkcích. Když jsem se dozvěděl o recenzích v aplikaci pro Android, byl jsem zvědavý, jestli je budu chtít implementovat i do své aplikace, ale pak jsem zapátral a zjistil jsem, že oficiální vazba pro jádro Play se neplánuje. Našel jsem však NuGet Patricka Getzmana, který se již postaral o vytvoření vazby. V té době to byla pouze vazba proti jádru Play Core v1.7.2. Vzhledem k tomu, že pro recenze v aplikacích je potřeba verze v1.8, tak jsem jednoduše vytvořil problém.

O něco později se ke mně plížila uzávěrka, takže jsem se rozhodl prokrastinovat a místo toho najít něco, co bych mohl udělat, a tehdy jsem se rozhodl aktualizovat tuto knihovnu vazeb na verzi v1.8. To se mi podařilo. S mnoha posuny myší a ťukáním do kláves jsem postupoval podle tohoto videa od Jonathana Dicka a po několika pokusech a omylech jsem soubor .AAR pro v1.8 z Androidu zprovoznil! Odeslal jsem PR a mohl jsem použít oficiální dokumentaci Androidu k aktualizaci příkladu v Patově úložišti. Byla to úžasná zkušenost a jsem rád, že jsem mohl přispět k této vynikající funkci.

Doufám, že se vám to hodilo, a pokud to používáte ve svých aplikacích, podělte se se mnou o snímky obrazovky, nebo mě můžete jen pozdravit!

Saamer Mansoor
Saamer Mansoor

Sledujte

.