目前使用phonegap开发的手机应用,很少涉及视频播放的功能,究其原因,主要是phonegap提供的API里面对视频播放功能支持度不够,当然播放音频一般情况下还是能够实现的,由于工作需要,自己研究了一下如何使用phonegap来开发视频播放软件,主要有以下几种思路:

解决方案1:使用HTML5中的Video标签来进行播放,这种方案实际上在phonegap中的表现和直接用安卓原生浏览器来测试时一样的,这个时候你会发现将一个放在服务器上的包含Video标签的页面使用安卓原生浏览器打开之后,对于HLS地址的视频加载速度非常慢,这显然是不行的,究其原因,还是HLS协议是苹果提出的,安卓对其支持度不够,所以采用Video标签在phonegap中的安卓平台上播放HLS显然是不靠谱的;

解决方案2:phonegap提供了一种插件机制,这种插件机制可以使开发者用Java代码调用安卓原生功能以及手机中其他的app,这就为我们提供了一种思路,实际上只要熟悉phonegap插件开发,你会发现原生安卓开发出来的功能利用phonegap也能实现,因为phonegap不能实现的功能,我们依然可以使用Java代码实现,这样开发出来的应用其实是一种混合的app.在这种思路的指引下,我们可以开发一个视频播放的插件,调用手机中已经安装好的播放器来播放视频,这里有一个别人写好的Videoplayer插件,不需要我们自己写了,地址如下:https://github.com/raulduran/VideoPlayer,经过测试之后,发现QQ浏览器自带的视频播放软件播放HLS效果最为理想,所以需要下载一个QQ浏览器并安装到手机上;

解决方案3:自己开发播放器,这个方案由于周期太长,并且需要很多对于原生安卓开发和视频播放知识的储备,在目前情况下还没有考虑,但是随着后面工作的进展肯定要做这一步,目前的思路是使用Vitamio来做,官网地址是:https://www.vitamio.org/

总结:以上主要是讲了如何在安卓平台上使用phonegap开发HLS播放软件的解决方案,在IOS平台下,使用HTML5的Video标签即可,因为苹果的SDK中webview类是支持Video来播放HLS的(自己提出的协议当然要在自己的产品上给予良好的支持)。

使用phonegap开发安卓HLS播放软件解决方案的更多相关文章

  1. h5开发安卓软键盘遮挡解决方案

    //处理input focus时被键盘遮挡问题 inputFocus:function(){ if(/Android [4-6]/.test(navigator.appVersion)) { wind ...

  2. Phonegap 开发环境搭建

    以Android为例介绍Phonegap开发环境搭建 一. 软件下载 1. JDK 8 下载 http://www.oracle.com/technetwork/java/javase/downloa ...

  3. 搭建phonegap开发环境,搭建安卓开发环境

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta http ...

  4. 安卓MP3播放器开发实例(1)之音乐列表界面

    学习安卓开发有一年了,想想这一年的努力,确实也收获了不少.也找到了比較如意的工作. 今天准备分享一个以前在初学阶段练习的一个项目.通过这个项目我真正的找到了开发安卓软件的感觉,从此逐渐步入安卓开发的正 ...

  5. 吐槽:基于PhoneGap开发移动项目

    目前,随着Google的Android手机和苹果的iphone手机的逐渐普及,越来越多开发者加入到移动应用开发的大军当中.其中,Android应用是基于Java语言基础上进行开发的,而苹果公司的iph ...

  6. 【软件配置】JDK+AndroidStudio4.1开发安卓APP环境安装和配置教程详细

    目录 一.专业名词 二.搭建前资源准备 2.1 JDK资源下载 2.2 AndroidStudio下载 三.安装 3.1 JDK安装配置 3.2 AndroidStudio安装 四.创建安卓APP工程 ...

  7. Mac 下安装Phonegap开发环境

    Mac 下安装Phonegap开发环境 2014.09.11  星期四 评论 0 条    阅读 5,613 次 作者:野草 标签:phonegap ios mac 什么是Phonegap呢?Phon ...

  8. Eclipse 环境下安装PhoneGap开发插件

    phoneGap开发跨所有移动平台软件已经成为未来移动终端开发的总趋势,如何在大家所熟悉的Eclipse IDE中快速安装PhoneGap开发插件,介绍如下: 点击help——>install ...

  9. 个人整理的 Windows 下 .NET 开发必装的软件

    注: 最后更新时间:2019-03-15 一..NET 开发 1. 必装 软件名称 说明 下载地址 JetBrains Toolbox JetBrins 全家桶管理工具. 下载地址 JetBrains ...

随机推荐

  1. gdoi2017

    今年的gdoi第一天t1大水题一道 裸的kmp 但是 我把记录长度的int数组开成了char类型 正解变爆零 心态爆炸......... 后面的第二题两千字题目以及五千字附加故事(我是没有去看,据说全 ...

  2. 【SPOJ】1182 Sorted bit sequence

    [算法]数位DP [题解]动态规划 写了预处理函数却忘了调用是一种怎样的体验? #include<cstdio> #include<cstring> #include<a ...

  3. 在前端发起ajax遇到问题

    1.请注意设置datatype的类型. 如下图:

  4. js_开发小技巧记录(一)

    (一) 生成从minNum到maxNum的随机数 <!DOCTYPE html> <html> <head> <meta charset="UTF- ...

  5. Python 对象模型 -- (转)

    面向对象的纯粹性 在很久很久以前,C++还被称为面向对象语言(现在一般称为多范式通用语言),人们就对C++的面向对象的纯粹性提出了质疑,主要有以下几点: 并非所有的对象都是对象(很拗口?),比如指针本 ...

  6. python中range函数与列表中删除元素

    一.range函数使用 range(1,5)   代表从1到4(不包含5),结果为:1,2,3,4   ,默认步长为1 range(1,5,2)   结果为:1, 3  (同样不包含5) ,步长为2 ...

  7. Android控件——ToggleButton多状态按钮(实现灯泡的开关)

    aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAxoAAAFxCAIAAAB7jkm1AAAgAElEQVR4nOy9eXgUVb7/Dy7j3BnH8T

  8. charger related source code position

    Platform Qualcomm MSM8917 or MSM8937 Source kernel/msm-3.18/drivers/power/qpnp-smbcharger.c kernel/m ...

  9. 【设计模式】享元模式(Flyweight)

    摘要: 1.本文将详细介绍享元模式的原理和实际代码中特别是Android系统代码中的应用. 纲要: 1. 引入享元模式 2. 享元模式的概念及优缺点介绍 3. 享元模式在Android源码中的应用 1 ...

  10. visual studio 个性化设置

    尼马visual studio 的注释建设的真垃圾 Ctrl+K+C Ctrl+K+U, 通过工具->选项->环境->键盘->命令包含中搜索“注释选定内容”,分配成 Ctrl+ ...