Yerel ağdaki cihazları tarayan uygulamalar artık kullanıcılardan yerel ağ cihazlarını bulup bunlara bağlanmak için tek seferlik izin isteyecek. Cast platformu, Cast cihazlarını keşfetmek ve kontrol etmek için yerel ağı kullanır. Bu nedenle, kullanıcı izin vermezse içerik yayınlayamaz.
Kullanıcı deneyimini iyileştirmek amacıyla, standart cihaz seçiciyi kullanan uygulamalar için SDK'da bazı kullanıcı deneyimi değişiklikleri yapıyoruz. Bu kullanıcı deneyimi değişiklikleri, kullanıcılara yerel ağ erişim izinlerinin neden gerekli olduğunu ve yerel ağ cihaz erişimi devre dışı bırakılmışsa yayınlamanın nasıl etkinleştirileceğini daha net bir şekilde gösterir.
Cast iOS SDK'sı 4.6.0 veya sonraki sürümleri, Swift Package Manager kurulumu bölümündeki adımları uygulayarak Swift Package Manager ile eklenebilir veya manuel kurulum bölümündeki adımları uygulayarak manuel olarak indirilebilir. Bu sürüm, Xcode 12 ile oluşturulan uygulamaların ağdaki Cast cihazlarını bulmasına olanak tanımak için temel keşif mekanizmasında yapılan değişiklikleri içerir. Yayınla düğmesi artık her zaman görünür. Kullanıcı, Yayınla düğmesine dokunduğunda kullanılabilir cihaz yoksa cihazların neden kullanılamadığına dair yol gösterici bilgiler içeren bir iletişim kutusu gösterilir. Bu iletişim kutusunda, yerel ağ erişim izninin nasıl yeniden etkinleştirileceğiyle ilgili bilgiler de yer alır.
Cast SDK'sındaki değişiklikler
İlk kez yayınlama
Kullanıcı ilk kez yayın yapmaya çalıştığında, yerel ağ erişiminin neden gerekli olduğunu açıklayan bir yerel ağ erişimi (LNA) geçiş iletişim kutusu ve ardından Apple tarafından sağlanan iOS yerel ağ erişim izinleri istemi gösterilir. Aşağıdaki örneklerde akış gösterilmektedir:

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 dokunulduğunda, aşağıdaki örneklerde gösterildiği gibi, kullanıcıya Yayınla'nın kullanılamamasının olası nedenleri hakkında ipuçları veren bir iletişim kutusu açılır:

Uygulamanızı güncelleme
-
Cast iOS SDK 4.8.6'yı projenize ekleme
Swift Package Manager kullanıyorsanız
google-cast-ios-sdkpaketini 4.8.6 sürümüne güncelleyin.Aksi takdirde, SDK'yı manuel olarak ekleyin.
-
NSBonjourServicesuygulamasınıInfo.plistcihazınıza ekleyinYerel ağ keşfinin başarılı olması için
Info.plistdosyanızdaNSBonjourServicesdeğerini belirtin.Cihaz keşfinin düzgün çalışması için hem
_googlecast._tcphem de_<your-app-id>._googlecast._tcphizmetlerini eklemeniz gerekir.appID, alıcı kimliğinizdir. Bu kimlik,
GCKDiscoveryCriteriaiçinde tanımlanan kimlikle aynıdır.Aşağıdaki örnek
NSBonjourServicestanımını güncelleyin ve "ABCD1234" yerine uygulama kimliğinizi girin. -
NSLocalNetworkUsageDescriptionuygulamasınıInfo.plistcihazınıza ekleyinUygulamanızın
Info.plistdosyasındaNSLocalNetworkUsageDescriptioniçin uygulamaya özel bir izin dizesi ekleyerek yerel ağ isteminde gösterilen mesajı özelleştirmenizi önemle tavsiye ederiz. Bu dize, Cast keşfi ve DIAL gibi diğer keşif hizmetlerini açıklayabilir.Bu mesaj, örnekte gösterildiği gibi iOS Yerel Ağ Erişimi iletişim kutusunun bir parçası olarak görünür.
-
Uygulamanızı Apple uygulama mağazasında yeniden yayınlama
Ayrıca uygulamanızı en kısa sürede 4.8.6 sürümünü kullanarak yeniden yayınlamanızı öneririz.
Özelleştirmeler
Yayın cihazı keşfini başlatma
Varsayılan olarak, Cast cihaz keşfi, kullanıcı Yayınla düğmesine (GCKUICastButton) ilk kez dokunduğunda başlatılır. Kullanıcı, yerel ağda Yayınla uygulamasını ilk kez kullanmaya çalışıyorsa yeni LNA ara sayfası ve ardından iOS Yerel Ağ Erişimi izinleri iletişim kutusu gösterilir.
Cihaz keşfinin ne zaman başlayacağını ve kullanıcı deneyiminin belirli öğelerinin davranışını kontrol etmenize olanak tanıyan yeni bir işaret kullanılabilir:
startDiscoveryAfterFirstTapOnCastButton: BOOL(true/false)
Varsayılan değer: true. Bu işaret yalnızca GCKCastOptions::disableDiscoveryAutostart işareti false olarak ayarlandığında geçerlidir.
true olarak ayarlanırsa kullanıcı GCKUICastButton simgesine ilk kez dokunduğunda yayın cihazı keşfi başlar. Kullanıcıya, yerel ağ izninin neden gerekli olduğunu açıklayan bilgilendirici bir mesaj gösterilir. Bu mesajdan sonra iOS LNA mesajı gösterilir.
Yayın cihazı keşfi, mesaj onaylandıktan sonra başlar.
Uygulama sonraki başlatmalarda her zaman GCKUICastButton gösterir.
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'sı 4.4.8 sürümü ve Xcode 12 ile yeniden yayınlarsam ne olur?
Apple'dan ağ çoklu yayını yetkisi almadığınız sürece uygulamanız yerel ağdaki Cast cihazlarını bulamayabilir. Apple'ın yalnızca Cast'i desteklemek amacıyla çoklu yayın yetkisi vermeyeceğini unutmayın. Xcode 12 ile derleme yapmayı planlıyorsanız uygulamanızı Cast 4.6.0 ile yayınlamanız gerekir.
Cast SDK'nın yeni sürümü yayınlandığında uygulamamı güncellemek için ne yapmam gerekecek?
- Uygulamanızın
Info.plistdosyasını, yerel ağ kullanım açıklamasını içerecek şekilde güncelleyin. - Uygulamanızın
Info.plistdosyasınaNSBonjourServicesekleyin ve Cast için Bonjour hizmet adlarını ve uygulama kimliğinizi girin. - Gönderen uygulamanızı Cast SDK 4.6.0'ı kullanacak şekilde yükseltin.
- Uygulamanızı Apple uygulama mağazasında yeniden yayınlayın.
4.6.0 sürümüne yükselttikten sonra cihazlar neden özel cihaz seçicimde görünmüyor?
Bu, standart cihaz seçici yerine özel bir cihaz seçici kullanıyorsanız ortaya çıkabilecek bilinen bir sorundur. Cast SDK'nın 4.4.8 ve önceki sürümlerinde cihaz tarama işlemi otomatik olarak yapılıyordu. 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 gerekir.
Bu değişikliğin nedeni, uygulama ilk kez tarama yaptıktan sonra Yerel Ağ Erişimi (LNA) izin isteminin gösterilmesidir. Bu durum, izin iletişim kutularının uygulamanızın rastgele yerlerinde görünmesine neden olabilir.
Uygulamaları için özel cihaz seçici oluşturan geliştiricilerin, cihaz taramasını ilk kez başlatmadan önce tek seferlik bir geçiş reklamı sunması beklenir.