iOS 14'ten itibaren işletim sistemi, Cast kullanıcı deneyimini etkileyen yeni kısıtlamaları ve izinleri zorunlu kılacak. Ayrıca, Cast SDK'sını uygulamanıza oluşturma şeklinizi de etkileyecektir. Uygulamanızın en son iOS sürümleriyle yayınlama işlevini sürdürebilmesi için bu izin değişikliklerini ele almak amacıyla güncellemeler yapmanız gerekir.
iOS 14
Geliştiriciler, iOS Cast gönderen uygulamalarını Google Cast SDK'sı 4.6.0 veya sonraki bir sürüme güncellemelidir. Bu sürümler iOS 14'ü ve bunun gereksinimlerini destekler.
iOS 14'ten itibaren, yerel ağdaki cihazları tarayan uygulamalar artık kullanıcılardan tek seferlik bir izinler iletişim kutusuyla yerel ağ cihazlarını bulup bu cihazlara bağlanmalarını isteyecektir. Yayın platformu, Yayın cihazlarını keşfetmek ve kontrol etmek için yerel ağı kullanır. Bu nedenle, kullanıcı izin vermeyi reddederse yayın yapamaz.
Kullanıcı deneyimini iyileştirmek amacıyla, standart cihaz seçiciyi kullanan uygulamaların SDK'sında bazı kullanıcı deneyimi değişiklikleri yapıyoruz. Bu kullanıcı deneyimi değişiklikleri, yerel ağ erişim izinlerinin neden gerekli olduğunu ve yerel ağ cihaz erişimi devre dışı bırakılmışsa yayınlamayı nasıl etkinleştirileceğini kullanıcılara daha net bir şekilde gösterir.
Cast SDK'nın 4.4.8 veya daha eski sürümleri kullanılarak oluşturulan uygulamalar, Xcode 11.7 veya önceki bir sürüm ile oluşturulduğu sürece çalışmaya devam edecektir. iOS 14 için Xcode 12 veya üzeri bir sürüm oluşturuyorsanız Cast uygulamanızın düzgün çalışmaya devam etmesini sağlamak için uygulamanızı Cast SDK'sı 4.6.0 veya sonraki bir sürüme güncellemenizi öneririz.
Cast iOS SDK 4.6.0 veya üzeri sürümleri, CocoaPods kurulumu aracılığıyla ya da manuel kurulum işlemleri uygulanarak CocoaPods ile manuel olarak indirilebilir. Bu sürümde, Xcode 12 ile oluşturulan uygulamaların ağdaki yayın cihazlarını bulmasına izin veren temel keşif mekanizmasında yapılan değişiklikler bulunmaktadır. Yayın düğmesi artık her zaman görüntülenecektir. Kullanıcı Yayınla düğmesine dokunduğunda kullanılabilir cihaz yoksa, cihazların neden kullanılamıyor olabileceği ve yerel ağ erişim izninin nasıl yeniden etkinleştirileceği ile ilgili bilgiler içeren bir iletişim kutusu görüntülenir.
Cast SDK değişiklikleri
İlk yayınlama
Bir kullanıcı ilk kez Yayınlama girişiminde bulunduğunda, yerel ağ erişimi (LNA) ara iletişim kutusu görünerek yerel ağ erişimine neden ihtiyaç duyulduğunu ve ardından Apple tarafından sağlanan iOS yerel ağ erişim izinleri istemini görürsünüz. Aşağıdaki örnekler akışı göstermektedir:
Yayınlama kullanılamıyor
iOS gönderen SDK'sı 4.6.0'dan itibaren, kullanıcı kablosuz ağa bağlıyken Yayınla düğmesi her zaman görünür. Yayın cihazları kullanılamadığında, Yayınla düğmesine dokunduğunuzda kullanıcıya, aşağıdaki örneklerde gösterildiği gibi Cast'in kullanılamamasının olası nedenleri hakkında ipuçları veren bir iletişim kutusu açılır:
iOS 14'te uygulamanızı güncelleme
-
Cast iOS SDK 4.8.0'ı projenize ekleme
CocoaPods kullanıyorsanız 4.8.0 SDK'sını projenize eklemek için
pod update
kullanın.Aksi takdirde, SDK'yı manuel olarak çekin.
-
Info.plist
cihazınızaNSBonjourServices
ekleyiniOS 14'te yerel ağ keşfinin başarılı olmasını sağlamak için
Info.plist
öğesindeNSBonjourServices
değerini belirtin.Cihaz keşfinin düzgün çalışması için hem
_googlecast._tcp
hem de_<your-app-id>._googlecast._tcp
hizmetlerini hizmet olarak eklemeniz gerekir.appID, alıcı kimliğinizdir. Bu,
GCKDiscoveryCriteria
içinde tanımlanan kimlikle aynıdır.Aşağıdaki örnek
NSBonjourServices
tanımını güncelleyip "ABCD1234" ifadesini uygulama kimliğinizle değiştirin. -
Info.plist
cihazınızaNSLocalNetworkUsageDescription
ekleyinYerel Ağ isteminde gösterilen mesajı, uygulamanızın
Info.plist
dosyasınaNSLocalNetworkUsageDescription
için uygulamaya özel bir izin dizesi ekleyerek özelleştirmenizi önemle tavsiye ederiz. Bu izin, Cast keşfini ve DIAL gibi diğer keşif hizmetlerini açıklamak için kullanılır.Bu mesaj, örnekteki gibi iOS Yerel Ağ Erişimi iletişim kutusunun bir parçası olarak görünecektir.
-
Uygulamanızı Apple App Store'da yeniden yayınlama
Ayrıca en kısa sürede uygulamanızı 4.8.0 sürümünü kullanarak yeniden yayınlamanızı öneririz.
Özelleştirmeler
Yayın cihazı keşfini başlatma
Varsayılan olarak, yayın cihazı keşfi kullanıcı Yayınla düğmesine (GCKUICastButton
) ilk kez dokunduğunda başlatılır. Kullanıcı iOS 14 sürümüne geçtikten sonra yerel ağda Cast uygulamasını ilk kez kullanmayı denediğinde yeni LNA geçiş reklamı ve ardından iOS Yerel Ağ Erişimi izinleri iletişim kutusu görünür.
Cihaz keşfinin ne zaman başlayacağını ve kullanıcı deneyiminin belirli öğelerinin davranışını kontrol etmenizi sağlayan yeni bir işaret kullanıma sunuldu:
startDiscoveryAfterFirstTapOnCastButton: BOOL(true/false)
true
, varsayılan değerdir. Bu işaret yalnızca GCKCastOptions::disableDiscoveryAutostart
işareti false
olarak ayarlandığında geçerli olur.
true
olarak ayarlanırsa yayın cihazı keşfi, kullanıcı GCKUICastButton
cihazına ilk kez dokunduğunda başlar. Kullanıcıya, yerel ağ izninin neden gerekli olduğunu açıklayan bir bilgilendirme mesajı gösterilir. Bu mesajın ardından iOS 14 LNA mesajı gösterilir.
Mesaj onaylandıktan sonra yayın cihazı keşfi başlar.
Sonraki uygulama lansmanlarında GCKUICastButton
her zaman gösterilir.
false
olarak ayarlanırsa cihaz keşfi, GCKCastOptions::disableDiscoveryAutostart
işaretinin değerine göre başlar.
Sık sorulan sorular
Cast gönderen uygulamamı Cast SDK v4.4.8 ve Xcode 12 ile yeniden yayınlarsam ne olur?
Uygulamanız, Apple'dan ağ çoklu yayın yararlanma hakkı almadığınız sürece yerel ağdaki yayın cihazlarını keşfedemeyebilir. Apple'ın, yalnızca Cast'i desteklemek amacıyla çoklu yayın yararlanma hakları vermeyeceğini unutmayın. Xcode 12 ile geliştirme yapmayı planlıyorsanız uygulamanızı Cast 4.6.0 ile yayınlamanız gerekir.
Uygulamamı yeni Cast SDK ile yeniden yayınlarsam kullanıcılarım iOS 13 veya önceki bir sürümde nasıl çalışacak?
Bu kullanıcılar, uygulamanızı yeniden yayınlamadan önce sahip oldukları kullanıcı deneyiminin aynısını görmeye devam ederler. Kullanıcıların görebileceği değişiklikler, iOS 14 çalıştıran kullanıcılarla sınırlıdır.
Cast SDK'sının yeni sürümü yayınlandıktan sonra uygulamamı güncellemek için ne yapmam gerekecek?
- Uygulamanızın
Info.plist
özelliğini yerel ağ kullanımı açıklaması içerecek şekilde güncelleyin. - Uygulamanızın
Info.plist
bölümüneNSBonjourServices
ekleyip Cast için Bonjour hizmet adlarını ve uygulama kimliğinizi girin. - Gönderen uygulamanızı Cast SDK 4.6.0'ı kullanacak şekilde yeni sürüme geçirin.
- Uygulamanızı Apple App Store'da yeniden yayınlayın.
4.6.0 sürümüne geçtikten sonra cihazlar neden özel cihaz seçicimde artık görünmüyor?
Standart cihaz seçici yerine özel bir cihaz seçici kullanıyorsanız bu durum bilinen bir sorundur. Cast SDK'nın 4.4.8 sürümünde ve önceki sürümlerde cihaz taraması otomatikti. 4.6.0 sürümünden itibaren, cihaz keşfini başlatmak için
GCKDiscoveryManager
sınıfında startDiscovery
yöntemini açıkça çağırmanız gerekecektir.
Bu değişikliğin nedeni, uygulama ilk kez tarandıktan sonra Yerel Ağ Erişimi (LNA) izinleri isteminin görünmesidir. Bu durum, izin iletişim kutularının uygulamanızın rastgele yerlerinde görünmesine neden olabilir.
Uygulamaları için özel bir cihaz seçici oluşturan geliştiricilerin, iOS 14'te ilk kez cihaz taramasını başlatmadan önce tek seferlik bir geçiş reklamı sağlaması beklenir.
iOS 13
iOS 13'te, Google Cast SDK'sını kullanan uygulamaları etkileyen yeni izin şartları kullanıma sunuldu.
Google Cast SDK'sı v4.4.3 ile başlayarak, Bluetooth® izni gerektirmeyen ek bir SDK mevcuttur. Bu özellik hem geliştirici sitesinde hem de yeni google-cast-sdk-no-bluetooth
Cocoapods'da bulunabilir.
Uygulama dökümü
Kullanmakta olduğunuz iOS SDK'nın sürümüne bağlı olarak dökümü aşağıda bulabilirsiniz:
iOS 12 SDK'sı veya önceki sürümlerle oluşturulan uygulamalar
- Önerilen İşlem. iOS 13 üzerinde çalışırken cihaz keşfi performansı düşebilir, ancak çalışmaya devam eder. Geliştiricilerin, kullanıma sunulduğunda Cast SDK v4.4.4'e geçmelerini önemle tavsiye ederiz.
- iOS 13, kullanıcılardan uygulamaya Bluetooth® izinleri vermelerini isteyecektir.
iOS 13 SDK'sı ile oluşturulan uygulamalar
- İşlem Gerekli: Cast SDK'sı 4.4.4'e güncelleyin. Kullanıcı konum izni vermezse yayınla düğmesi görünmeyebilir. iOS 13'te güvenilir bir yayın deneyimi için Cast SDK'sının 4.4.4 sürümüne geçmeniz gerekir.