|
|
导航: |
论坛 -> 移动应用开发
斑竹:flyers,iamdream |
|
作者: |
|
2018/9/12 9:24:07 |
标题: |
关于安卓播放视频的技术问题和解决办法 |
浏览:1116 |
|
加入我的收藏 |
楼主: |
用了多年的delphi,从来没有想到过做一个视频播放器会如此困难和麻烦,我用MediaPlayer做一个安卓视频播放软件,视频文件有多个,循环播放一个列表,首先遇到第一个难题居然切换播放视频文件,如果播放完一个视频文件后,直接MediaPlayer1.FileName:=GetFileName;然后接着MediaPlayer1.Play;对不起,播放不了,软件停在那里了,经过阅读https://blog.csdn.net/pcplayer/article/details/79902125的文章,得到启发,用一个timer,先执行MediaPlayer1.FileName:=GetFileName后,过几秒,再在timer里面执行MediaPlayer1.Play;首先解决了第一个问题;接着出现了一个几乎让我绝望的第二个问题,就是视频播放几个小时后,就会提示“无法播放此视频”,网上说的什么视频格式和路径问题都是不存在的,因为这个视频文件都是循环播放了几次后,才出现的,为了解决这个问题,用了所有的技术手段都不行,后来只好上网查资料了,发现这个问题经常都是andorid5.1居多,而我测试使用的机器使用的android版本就是5.1,我就想是不是编程版本问题,而我用的sdk是28,NDK是android-19,我就增加了一个编译的andorid版本,SDK用22,NDK用android-9,编译后,居然就解决了这个问题,软件长时间运行几天几夜都再没有出现过这个提示了。视频文件通过计算机用FHttpClient和IdHTTPServer结合下载到android本地。 也有人会说,怎么不用JAVA写,对不起,真的不会。 我用delphi xe写了很多android的应用,都是关于即时信息的,比如数据即时显示等,FHttpClient和IdHTTPServer的结合真是天衣无缝,现在播视频主要是做信息发布内容部分,谢谢大家的阅读。
----------------------------------------------
- |
作者: |
|
2018/9/12 9:29:32 |
1楼: |
sdk r22 就是 EMB 指定下载的,你私自换成别的,后果自负。 NDK 到底该用哪个,不清楚,默认的 NDK 无法编译超大工程。
----------------------------------------------
(C)(P)Flying Wang
|
作者: |
|
2018/9/12 9:36:10 |
2楼: |
安装了delphi xe 10.2.3后,不是要自己下载SDK的吗?我就下载了最新的SDK了,好像也一直可以正常使用,就没有怎么去注意版本的问题。
----------------------------------------------
-
|
作者: |
|
2018/9/12 9:54:46 |
3楼: |
10.3 会有新的 sdk 版本指定。 肯定也是不能私自更换的。 具体是什么版本。 只有安装 正版 社区版 或 30天试用版 ,并且网络畅通 防火墙 HOSTS 都正常放行的前提下,才能下载成功。 不需要翻墙。
----------------------------------------------
(C)(P)Flying Wang
|
|