Uygulamanızın yayın oturumunu yapılandırmak için OptionsProvider sağlayın. Alıcı uygulama kimliğini ayarlamak, oturum yaşam döngülerini yönetmek ve medya oynatma davranışını özelleştirmek için sağlayıcı tarafından oluşturulan CastOptions nesnesini kullanın.
Varsayılan seçenek sağlayıcıyı kullanma
Varsayılan Cast alıcı uygulamasını kullanan temel bir kurulum için uygulamanızın AndroidManifest.xml dosyasına DefaultCastOptionsProvider öğesini ekleyin:
<application>
...
<meta-data
android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"
android:value="androidx.media3.cast.DefaultCastOptionsProvider" />
...
</application>
Özel seçenek sağlayıcı oluşturma
Özel alıcı uygulama kimliği ayarlama gibi daha gelişmiş yapılandırmalar için kendi OptionsProvider nesnenizi oluşturmanız gerekir.
1. Sağlayıcıyı manifest dosyanızda bildirme
Öncelikle özel sağlayıcınızı AndroidManifest.xml içinde tanımlayın. Tam nitelikli sınıf adını
kullandığınızdan emin olun.
<application>
...
<meta-data
android:name="com.google.android.gms.cast.framework.OPTIONS_PROVIDER_CLASS_NAME"
android:value="path.to.your.class.MyCustomCastOptionsProvider" />
...
</application>
2. OptionsProvider arayüzünü uygulama
Ardından, OptionsProvider arayüzünü uygulayan bir sınıf oluşturun. Bu sınıfta, bir CastOptions örneği döndürmek için getCastOptions() yöntemini geçersiz kılmanız gerekir.
Özel OptionsProvider sınıfı, Cast oturumunuzu yapılandırdığınız yerdir. Örneğin, özel alıcı uygulama kimliğinizi ayarlayarak yapılandırabilirsiniz.
Daha fazla bilgi için CastOptions.Builder başlıklı makaleyi inceleyin.
Kotlin
class MyCustomCastOptionsProvider : OptionsProvider { override fun getCastOptions(context: Context): CastOptions { return CastOptions.Builder() .setReceiverApplicationId(APP_ID) .setRemoteToLocalEnabled(true) .build() } override fun getAdditionalSessionProviders(context: Context): List<SessionProvider>? { return null } companion object { // Add your receiver app ID in <APP_ID>. private const val APP_ID = "<APP_ID>" } }
Java
public static final class MyCustomCastOptionsProvider implements OptionsProvider { // Add your receiver app ID in <APP_ID>. public static final String APP_ID = "<APP_ID>"; @Override public CastOptions getCastOptions(Context context) { return new CastOptions.Builder() .setReceiverApplicationId(APP_ID) .setRemoteToLocalEnabled(true) .build(); } @Override public @Nullable List<SessionProvider> getAdditionalSessionProviders(Context context) { return null; } }