Örnek Olaylar

FotMob, Wear OS'in rekor düzeyde benimsenmesi için cihazlar arası keşiften nasıl yararlandı?

Okuma süresi: 3 dakika
Garan Jenkin
Geliştirici İlişkileri Mühendisi

FotMob, kısa süre önce Wear OS'te 5 yıl içinde en büyük tek günlük artışı yaşadı. Bu artış, günlük ortalamanın 2-3 katıydı. Sırrı ne mi? Kullanıcıların Wear OS uygulamalarını doğrudan telefonlarından keşfetmelerine yardımcı olan basit bir cihazlar arası yükleme akışı.

FotMob, dünyanın en popüler futbol platformlarından biridir. Anlık skorlar, istatistiksel analizler ve haberler sunan mobil uygulamasıyla tanınır.

fotmob-side-by-side.png

FotMob, mobil uygulamanın yanı sıra Wear OS'te de kullanılabilir. Böylece kullanıcılar, en son skorları ve sonuçları doğrudan bileklerinden takip edebilir.

FotMob'da Android Teknik Ekip Lideri olan Roy Solberg, "Birçok FotMob kullanıcısı maçları canlı olarak takip ediyor ve bu genellikle telefonlarını aktif olarak kullanmadıkları zamanlarda oluyor" diyor. "Wear OS, taraftarlara skorlara, maç etkinliklerine ve güncellemelere doğrudan bileklerinden göz atmanın hızlı bir yolunu sunuyor. Bu nedenle, Wear OS'i FotMob deneyiminin doğal bir uzantısı olarak gördük."

FotMob, farklı form faktörlerinde sorunsuz bir deneyim sunarak kullanıcılarının platformundan en iyi şekilde ve en uygun biçimde yararlanmaya devam etmesini sağlar. Buna, ayarların ve tercihlerinin (ör. favori takımlar) cihazlar arasında senkronize edilmesini sağlamak da dahildir.

Keşif Eksikliği

FotMob, birçok kullanıcısının Wear OS cihazı olmasına rağmen bazı kullanıcıların Wear OS uygulamasından haberdar olmayabileceğini fark etti. Bu durum, ekibi kullanıcılara Wear OS uygulaması hakkında bilgi vermenin ve uygulamayı doğrudan ana telefon uygulamasından yüklemenin teknik seçeneklerini değerlendirmeye yöneltti.

Neyse ki Android ve Wear OS'teki Wearable kitaplığı, FotMob'un kullanıcılarının tam da bunu yapmasına olanak tanıyan bir uygulama içi deneyim oluşturmak için ihtiyaç duyduğu yapı taşlarını sağlıyor.

Uygun Wear OS Cihazları Algılama

FotMob telefon uygulamasında ekip, bağlı Wear OS cihazlarını (Wear OS uygulaması için adaylar) belirlemek üzere NodeClient simgesini kullandı:

val connectedNodes = nodeClient.connectedNodes.await()

Ayrıca ekip, Wear OS uygulamasında FotMob'un cihaza yüklendiğini belirten bir özellik tanımladı. Bu, Wear OS paketinde bir XML kaynağı olarak tanımlanır ve ardından telefon uygulamasında sorgulanır:

val nodesWithApp = capabilityClient
    .getCapability(CAPABILITY_WEAR_APP, CapabilityClient.FILTER_REACHABLE)
    .await()
    .nodes

Ekip, yalnızca bu özelliğe sahip olmayan düğümleri arayarak FotMob Telefon uygulamasının yalnızca uygulamayı içermeyen Wear OS cihazları listelemesini sağladı.

Yükleme akışını başlatma

FotMob ekibi, kullanıcıyı fırsattan hızlıca haberdar eden, eğitici bir yarım sayfalık istem tasarladı. Bu istem, kullanıcının yükleme akışını başlatmasına veya istemi kapatmasına olanak tanıyor. Bu bölümde, Wear OS deneyiminin belirgin bir ekran görüntüsü yer alıyordu. Böylece kullanıcı, uygulamanın kol saatinde nasıl görünebileceğini hemen görebiliyordu.

fotmob_wear_wrist.png

Uygulama, yüklemeyi başlatmak için RemoteActivityHelper API'yi kullanarak Play Store'u kol saatinde başlatır:

val remoteActivityHelper = RemoteActivityHelper(context)

remoteActivityHelper.startRemoteActivity(
    Intent(Intent.ACTION_VIEW)
        .setData("market://details?id=${context.packageName}".toUri())
        .addCategory(Intent.CATEGORY_BROWSABLE),
    nodeId
).await()

Sonuçlar

Roy, "Wearable API'ler sayesinde uygulama süreci kolaylaştı" diyor. "Bağlı cihazları algılayabilme ve özellikleri sorgulayabilme sayesinde, kol saati uygulamasının zaten yüklü olup olmadığını hızlıca belirleyebildik. Bundan sonraki süreçte ise daha çok, kullanıcılar için faydalı olan ancak rahatsız edici olmayan bir istem tasarlamaya odaklandık."

Cihazlar arası yükleme özelliğinin kullanıma sunulmasıyla birlikte, FotMob'un Wear OS'teki yüklü kullanıcı kitlesinde 5 yılın en büyük tek günlük artışı yaşandı. Bu artış, normal yükleme oranının 2-3 katıydı. Yayın %100'e ulaştıktan sonraki 48 saat içinde kol saati uygulaması 1.500'den fazla yeni yükleme aldı¹.

Roy, "İlk 10 gün içinde yeni Wear OS yüklemelerinde önemli bir artış gördük" diyor. "Kol saati uygulaması yıllardır kullanılabiliyor ancak bu özellik, uyumlu cihazlara sahip birçok kullanıcının uygulamanın varlığından haberdar olmadığını doğruladı."

Gelişen cihazlar arası yüklemeler

FotMob'un kullandığı çözüme ek olarak, uygulama içi yükleme istemleri kitaplığı aracılığıyla bu cihazlar arası yükleme yolculuklarını uygulamayı daha da kolaylaştırmak için bir kitaplık kullanıma sunduk.

Aşağıda, uygulamanızda uygun noktaya yükleme istemi ekleme örneği verilmiştir:

val crossDevicePromptManager = CrossDevicePromptManagerFactory.create(activity)
val request = CrossDevicePromptInstallationRequest.create()

try {
    val info = crossDevicePromptManager.requestInstallationPromptFlow(request).await()
    crossDevicePromptManager.launchPromptFlow(activity, info).await()
} catch (e: CrossDevicePromptException) {
    Log.e(TAG, "Cross-device prompt failed with error: ${e.errorCode}", e)
}

Sonraki adımlar: Kendi cihazlar arası yolculuğunuzu bugün oluşturmaya başlayın

Uygulamanıza cihazlar arası işlevsellik ekleme hakkında daha fazla bilgi edinmek için DataLayer örneğini inceleyin ve kullanıcılarınızın cihazlar arası yükleme yapmasına yardımcı olabileceğiniz seçenekler sunan yeni uygulama içi yükleme istemleri kitaplığını keşfedin.

[1]. Play Console'dan yükleme verileri

Yazan:

Okumaya devam edin