Mobil Cihazlar için YouTube derin bağlantısı, Android uygulamalarının doğrudan bir mobil cihazdan YouTube canlı yayını başlatmasına olanak tanır. Uygulamaların yalnızca, kullanıcının tıklayabileceği bir düğme gibi bir giriş noktası sağlaması gerekir. Bu düğme, Android Intent mekanizmasıyla Mobil Canlı akışı başlatır.
Örnek
Bu akış, YouTube uygulamasına derin bağlantı veren ve kullanıcının Mobil Canlı Yayın Kurulumu ekranına ulaştığı bir uygulamanın kullanıcı deneyimini gösterir.
- Kullanıcı ilk olarak başlığı, gizlilik modunu ve diğer yayın seçeneklerini ayarlayarak akışı yapılandırır.
- Ardından, akış için küçük resim görüntüsü ayarlamak üzere Küçük Resim Fotoğrafı ekranına gider.
- Son olarak, kullanıcı canlı yayını başlatır ve ön veya arka kameradan görünümü yayınlar.
Cihaz Gereksinimleri
Android cihazlar, YouTube canlı yayınını ve Mobile Live derin bağlantısını doğru bir şekilde desteklemek için aşağıdaki gereksinimleri karşılamalıdır:
- Android sürümü: Marshmallow (API 23) veya sonraki sürümler
- Kamera: En az 30 Hz hızda 720p kayıt yapabilen en az bir kamera
- Mikrofon: Yerleşik mikrofon
- Ses kodlayıcı: 8 bit PCM mono sesi 44,1 KHz veya daha iyi bir düzeyde AAC'ye kodlayabilen donanım hızlandırılmış ses kodlayıcı
- Video kodlayıcı: 720P ham videoyu H.264/AVC olarak 30 Hz veya daha iyi kalitede kodlayabilen donanım hızlandırılmış video kodlayıcı
- YouTube uygulaması yüklü: Sürüm 13.02 veya sonraki sürümler
Mobil Canlı Amaç spesifikasyonu
Android uygulamanız, Mobil Cihazlar için YouTube canlı yayın akışına bağlantı oluşturmak üzere bir Niyet başlatır. Amaç, YouTube uygulamasında bir Etkinlik başlatarak canlı yayın sürecini başlatır.
Intent biçimi
Mobil Canlı Amaç, YouTube uygulamasında canlı oluşturma etkinliğine gitmek için özel bir Action
dizesi kullanır. Ayrıca YouTube mobil uygulamasının paket adını da belirtir.
- İşlem: "
com.google.android.youtube.intent.action.CREATE_LIVE_STREAM
" - Paket: "
com.google.android.youtube
"
Amaç ekstraları
YouTube uygulama kurulum akışı, akış yapılandırmasını yönetir. Aşağıdaki Intent ek özellikleri canlı yayınla ilişkilendirilmiş parametreleri belirler:
Parametreler | |
---|---|
Amaç.ADDITIONAL_REFERRER | Required. Bu parametre, canlı yayın etkinliğini başlatan uygulamayı temsil eden bir URI belirtir. Bu değer, paket adıyla birlikte android-app: scheme biçimine uygun olmalıdır. Bu değer, doğru ilişkilendirme ve muhasebe işlemlerinin yapılmasını sağlar. |
Amaç.ADDITIONAL_SUBJECT | Optional. Bu parametre, canlı yayının metin açıklamasını sağlar. Intent ekstra paketine bir Dize olarak yerleştirilir. Değer, akışa markalı bir mesajla (ör. "DEVICE cihazından canlı yayın yapıldı") ek açıklama eklemek için kullanılabilir. |
Canlı yayın akışını başlatma
1. Adım: Destek için kontrol edin
Müşteriniz öncelikle YouTube uygulamasının cihazda yüklü olduğunu ve YouTube uygulama sürümünün canlı yayını desteklediğini doğrulayarak Mobile Live Intent'in başlatılabileceğini onaylamalıdır. Aşağıdaki kod örneğinde bunu yapmak için iki yöntem tanımlanmıştır:
canResolveMobileLiveIntent
yöntemi, cihazın Mobil Canlı Amaç'ı desteklediğini doğrular.validateMobileLiveIntent
,canResolveMobileLiveIntent
yöntemini birif-else
ifadesi bağlamında çağırır.- Amaç destekleniyorsa canlı yayın akışı başlatılabilir.
- Cihaz, Intent'i desteklemiyorsa kullanıcıdan YouTube uygulamasını yüklemesini veya yükseltmesini isteyebilir.
private boolean canResolveMobileLiveIntent(Context context) { Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM") .setPackage("com.google.android.youtube"); PackageManager pm = context.getPackageManager(); ListresolveInfo = pm.queryIntentActivities(intent, PackageManager.MATCH_DEFAULT_ONLY); return resolveInfo != null && !resolveInfo.isEmpty(); } private void validateMobileLiveIntent(Context context) { if (canResolveMobileLiveIntent(context)) { // Launch the live stream Activity } else { // Prompt user to install or upgrade the YouTube app } }
2. Adım: Canlı yayın etkinliğini başlatın
Canlı yayın akışını başlatmak için istemci uygulamanız aşağıdaki kod örneğinde gösterildiği gibi bir Niyet oluşturup başlatır:
private Intent createMobileLiveIntent(Context context, String description) { Intent intent = new Intent("com.google.android.youtube.intent.action.CREATE_LIVE_STREAM") .setPackage("com.google.android.youtube"); Uri referrer = new Uri.Builder() .scheme("android-app") .appendPath(context.getPackageName()) .build(); intent.putExtra(Intent.EXTRA_REFERRER, referrer); if (!TextUtils.isEmpty(description)) { intent.putExtra(Intent.EXTRA_SUBJECT, description); } return intent; } private void startMobileLive(Context context) { Intent mobileLiveIntent = createMobileLiveIntent(context, "Streaming via ..."); startActivity(mobileLiveIntent); }