Flutter uygulamanızda ApsaraVideo Player SDK kullanarak video oynatın. Bir oynatıcı oluşturma, video görünümü ayarlama, oynatma kaynağını yapılandırma ve kaynakları serbest bırakma adımlarını izleyin.
Ön Koşullar
Flutter Player SDK'yı projenize entegre edin. Talimatlar için bkz. Flutter Player SDK'yı Entegre Etme.
Yordam
1. Adım: Oynatıcı Oluşturma
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
setTraceID parametresi, oynatma kalitesi izleme, tek nokta izleme ve video oynatma istatistikleri özelliklerini destekleyen enstrümantasyon günlük raporlamasını kontrol eder.
**setTraceID değeri** |
Enstrümantasyon günlük raporlama | Kullanılabilir özellikler |
|---|---|---|
| Ayarlanmamış (varsayılan) | Etkin | Oynatma kalitesi izleme, video oynatma istatistikleri |
| Kullanıcı kimliği, IMEI veya IDFA gibi benzersiz bir tanımlayıcı | Etkin | Oynatma kalitesi izleme, tek nokta izleme, video oynatma istatistikleri |
DisableAnalytics |
Devre dışı | Yok |
Tek nokta izlemeyi kullanmak için iş kullanıcı kimliğiniz, Uluslararası Mobil Cihaz Kimliği (IMEI) veya reklamverenler için bir tanımlayıcı (IDFA) gibi kullanıcıya veya cihaza ait benzersiz bir tanımlayıcı iletin.
2. Adım: Video Görünümünü Ayarlama
Bir AliPlayerView widget'ı oluşturun ve görünüm oluşturulduktan sonra oynatıcıyı buna ekleyin.
// 1. Create the player view widget
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: onViewPlayerCreated,
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// 2. Attach the player to the view
void onViewPlayerCreated(viewId) async {
fAliplayer.setPlayerView(viewId);
}
3. Adım: Oynatma Kaynağını Ayarlama
SDK üç tür oynatma kaynağını destekler. Kullanım durumunuza göre birini seçin.
VidAuth (önerilen)
Kısa ömürlü bir oynatma kimlik bilgisi ile güvenli oynatma için VidAuth kullanın. playAuth değerini almak için ApsaraVideo VOD'un GetVideoPlayAuth işlemini çağırın.
fAliplayer.setVidAuth(
vid: "<your-video-id>", // Required. The video ID (VideoId).
playAuth: "<your-play-auth>", // Required. The playback credential from GetVideoPlayAuth.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
VidSts
Geçici Güvenlik Belirteci Hizmeti (STS) kimlik bilgileri ile oynatma için VidSts kullanın. Gerekli değerleri almak için STS'nin AssumeRole işlemini çağırın.
fAliplayer.setVidSts(
vid: "<your-video-id>", // Required. The video ID (VideoId).
accessKeyId: "<your-access-key-id>", // Required. The AccessKey ID from the temporary AccessKey pair.
accessKeySecret: "<your-access-key-secret>", // Required. The AccessKey secret from the temporary AccessKey pair.
securityToken: "<your-security-token>", // Required. The STS token.
region: "<your-region>", // Required. The region of ApsaraVideo VOD. Default: cn-shanghai.
);
UrlSource
Doğrudan URL tabanlı oynatma için UrlSource kullanın.
fAliplayer.setUrl("<your-video-url>");
Daha fazla oynatma kaynağı ayrıntısı için bkz. Temel özellikler .
4. Adım: Oynatmayı Başlatma
fAliplayer.prepare();
fAliplayer.play();
5. Adım: Oynatıcıyı Serbest Bırakma
Oynatma sona erdiğinde bellek sızıntılarını önlemek için oynatıcıyı durdurun, kaynakları serbest bırakın ve referansı temizleyin.
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null; // Prevents memory leaks
Artık gerekli olmadığında her zamanrelease()yöntemini çağırın ve oynatıcıyınullolarak ayarlayın. Aksi takdirde bellek sızıntıları oluşur.
Tam Örnek
Aşağıdaki örnek, tüm adımları eksiksiz bir oynatma akışında birleştirir.
// Step 1: Create a player
FlutterAliplayer fAliplayer = FlutterAliPlayerFactory.createAliPlayer();
fAliplayer.setTraceID("traceId");
// Step 2: Set up the video view
AliPlayerView aliPlayerView = AliPlayerView(
onCreated: (viewId) async {
fAliplayer.setPlayerView(viewId);
},
x: 0,
y: 0,
width: width,
height: height,
aliPlayerViewType: AliPlayerViewTypeForAndroid.surfaceview);
// Step 3: Set the playback source (VidAuth)
fAliplayer.setVidAuth(
vid: "<your-video-id>",
playAuth: "<your-play-auth>",
region: "<your-region>",
);
// Step 4: Start playback
fAliplayer.prepare();
fAliplayer.play();
// Step 5: Release the player when done
fAliplayer.stop();
fAliplayer.release();
fAliplayer = null;
Başvuru Kaynakları
Oynatma denetimi, olay dinleyicileri ve diğer oynatıcı yetenekleri hakkında bilgi için bkz. Temel özellikler.