MediaPlayer Android 下播放 MP4 的問題

開發環境:Delphi 10.3.1 社區版。

測試環境:

A. Android 5.0;

B. Android 9.0

 

1. 進度條

Delphi 官方帶的例子裏面,關於進度條的代碼:

procedure TForm1.Timer1Timer(Sender: TObject);
begin
  if ProgressBar1.Max <> MediaPlayer1.Duration then
    ProgressBar1.Max := MediaPlayer1.Duration;
  if ProgressBar1.Value <> MediaPlayer1.CurrentTime then
    ProgressBar1.Value := MediaPlayer1.CurrentTime;
end;

在 Android 5.0 底下,進度顯示正常。

在 Android 9.0 底下,進度條不顯示進度。設置斷點查看,每一次,MediaPlayer1.Duration 都返回 -1。

2. 播放顯示:

2.1. 在 Android 5.0 底下,不放 MediaPlayerControl1,不顯示視頻,播放正常,有視頻的聲音在播放。如果用了 MediaPlayerControl1,則播放就會出現異常:Project testMediaPlayer.apk raised exception class EJNIException with message 'java.io.IOException: Prepare failed.: status=0x80000000'.

2.2. 在 Android 9.0 底下,播放顯示正常。

結論:安卓下播放 MP4 視頻,還是調用系統提供的視頻播放器程序比較好,用 MediaPlayer 還有問題。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章