admin 管理员组

文章数量: 1184232

Delphi 10.2 FireMonkey 下,TMediaPlayer 目前支持 Windows, iOS, Android 好像还支持 MAC OS。

在 iOS 底下表现正常。

在 Android 下面,界面上放一个 Button,在 OnClick 里面执行以下代码:

MediaPlayer1.FileName := 'MyVideo.mp4';

MediaPlayer1.Play;

点击按钮,执行上述代码,第一次正常,视频画面出来了。再次点击按钮,没有视频出来。这时候查 MediaPlayer.State,是 Stop 状态而不是 Playing 状态。加多一个按钮,再次单独执行一次 MediaPlayer1.Play;  视频开始播放。

浪费了4个小时,反复修改代码,反复追踪 MediaPlayer 在 Android 里面的代码执行过程,发现前后两次,执行到的代码是相同的,不知道为何没有把安卓的 MediaPlayer 启动起来。

不确定问题是不是手机的安卓版本导致?测试手机安卓版本:Android 5.0

不确定问题是不是 Android SDK 导致。SDK 版本:24.0.2;

如果用户选择了文件以后,还有再点一次播放,体验不好。用户选择文件后,想直接播放,这里绕过的办法是加多一个 Timer,执行完 MediaPlayer1.FileName := 'MyVideo.mp4'; 以后,启动 Timer,然后在  Timer1.OnTimer 事件方法里面,加上 MediaPlayer1.Play;  这个方法测试通过。

本文标签: 系统 加多一个 按钮