iOS对嵌入的HTML5页面中的音频进行控制的方法技术

技术编号:34695950 阅读:13 留言:0更新日期:2022-08-27 16:31
本发明专利技术提供一种iOS对嵌入的HTML5页面中的音频进行控制的方法,包括:iOS端初始化生成音频控制器、已加载音频对象字典和正在播放音频对象字典;HTML5端调用iOS端的音频控制器,实现对HTML5页面中的音频对象的控制。具有以下优点:(1)将音频对象控制放在iOS端,可以精确控制每个音频对象的播放,保证每个音频对象按程序的控制进行播放。(2)当音频对象被电话或其他应用音频打断时自动暂停,等回到应用内后,又可以继续播放音频对象。(3)可以实现多个音频对象同时播放或者交叉播放,音量大小随意调节,实现音效渐隐渐显等特殊效果。可实现音频的播放效果和设计需要呈现的效果一致,进而提高用户的使用体验。提高用户的使用体验。提高用户的使用体验。

【技术实现步骤摘要】
iOS对嵌入的HTML5页面中的音频进行控制的方法


[0001]本专利技术属于iOS端音频控制
,具体涉及一种iOS对嵌入的HTML5页面中的音频进行控制的方法。

技术介绍

[0002]在iOS开发过程中,经常会嵌入一些H5页面,来显示更加丰富生动的游戏,活动或资讯信息,而在这些H5页面上,还会加入一些音频音效来丰富页面的表现方式,吸引用户。
[0003]对于音频的控制方式,如果由H5方来控制,会出现一些体验上的不足之处,这是因为iOS系统本身对H5音频的播放方面存在诸多限制。比如:因为系统版本原因,有的机型暂不支持H5音频的特性,导致音频无法播放。音频无法通过程序代码来控制静音,音频的音量大小无法调节,只能通过手机物理按键来统一调节。在同一个页面上,多个音频可能无法同时播放。关闭应用退到后台,音频没有及时停止还在播放。音频被外界电话或其他应用的音频打断后无法继续播放等问题。严重影响了用户的使用体验,可能导致用户放弃该应用。因此,在iOS应用中,如何能够对H5的音频控制显得至关重要。

技术实现思路

[0004]针对现有技术存在的缺陷,本专利技术提供一种iOS对嵌入的HTML5页面中的音频进行控制的方法,可有效解决上述问题。
[0005]本专利技术采用的技术方案如下:
[0006]本专利技术提供一种iOS对嵌入的HTML5页面中的音频进行控制的方法,包括以下步骤:
[0007]步骤1,iOS端将HTML5页面嵌入到浏览器后,初始化生成音频控制器、已加载音频对象字典和正在播放音频对象字典;
[0008]其中:
[0009]所述已加载音频对象字典,用于存储已加载的音频对象;
[0010]所述正在播放音频对象字典,用于存储当前正在播放的音频对象;
[0011]所述音频控制器,用于根据所述已加载音频对象字典和所述正在播放音频对象字典,实现对音频对象的控制;
[0012]步骤2,HTML5端调用iOS端的音频控制器,实现对HTML5页面中的音频对象的控制。
[0013]优选的,步骤2中,HTML5端调用iOS端的音频控制器,实现对HTML5页面中的音频对象的控制,包括:加载音频对象、播放音频对象、暂停播放音频对象、调节音频对象的音频音量、控制音频对象是否循环播放、移除个别的音频对象、移除所有音频对象、静音音频对象和取消静音音频对象。
[0014]优选的,加载音频对象的方法为:
[0015]步骤A1,HTML5端向iOS端的音频控制器发送加载音频对象的请求;其中,所述请求中携带有需加载的音频对象的ID;将需加载的音频对象表示为:音频对象VF;
[0016]步骤A2,所述音频控制器接收到加载请求后,以音频对象VF的ID为查询关键词,查询所述已加载音频对象字典,判断音频对象VF是否存在于所述已加载音频对象字典中,如果不存在,则执行步骤A3;如果存在,则直接执行步骤A5;
[0017]步骤A3,所述音频控制器判断音频对象VF是否存在本地资源包中,如果不存在,则通过网络将音频对象VF下载到本地资源包中,再执行步骤A4;如果存在,则直接执行步骤A4;
[0018]步骤A4,所述音频控制器创建与音频对象VF唯一对应的音频播放器对象VP,并将音频播放器对象VP绑定到音频对象VF;
[0019]然后,所述音频控制器将绑定有音频播放器对象VP的音频对象VF加载到所述已加载音频对象字典,并采用音频对象VF的ID作为标识,由此完成音频对象VF的加载过程;
[0020]步骤A5,所述音频控制器向HTML5端返回音频对象VF加载成功,可以播放的通知消息。
[0021]优选的,播放音频对象的方法为:
[0022]步骤B1,HTML5端接收到所述音频控制器返回的音频对象VF加载成功的通知消息后,HTML5端向所述音频控制器发送播放音频对象VF的请求;
[0023]步骤B2,所述音频控制器从所述已加载音频对象字典中取出绑定有音频播放器对象VP的音频对象VF;
[0024]所述音频控制器向音频播放器对象VP发送播放指令;所述音频播放器对象VP一方面开始播放音频对象VF;另一方面,将开始播放的绑定有音频播放器对象VP的音频对象VF,加入到所述正在播放音频对象字典。
[0025]优选的,暂停播放音频对象、调节音频对象的音频音量、控制音频对象是否循环播放,具体为:
[0026]步骤C1,HTML5端向所述音频控制器发送对正在播放的音频对象VF的控制指令;其中,所述控制指令包括:暂停播放音频对象、调节音频对象的音频音量和/或控制音频对象是否循环播放;
[0027]步骤C2,所述音频控制器接收到该控制指令后,从所述正在播放音频对象字典中,取出音频对象VF以及其绑定的音频播放器对象VP;
[0028]所述音频控制器对音频播放器对象VP进行控制,包括:暂停音频播放器对象VP,设定音频播放器对象VP的音量和/或设定音频播放器对象VP是否循环播放,从而对音频对象VF进行相应控制。
[0029]优选的,静音正在播放的音频对象和取消静音音频对象的方法为:
[0030]步骤D1,HTML5端向所述音频控制器发送静音所有正在播放的音频对象的控制指令;
[0031]步骤D2,所述音频控制器遍历所述正在播放音频对象字典,将所述正在播放音频对象字典中的每个音频对象所绑定的音频播放器对象的音量设置为0,实现静音效果;
[0032]步骤D3,HTML5端向所述音频控制器发送取消静音的控制指令;
[0033]步骤D4,所述音频控制器遍历所述正在播放音频对象字典,将所述正在播放音频对象字典中的每个音频对象所绑定的音频播放器对象的音量恢复到原来值,实现取消静音效果。
[0034]优选的,移除个别的音频对象的方法为:
[0035]步骤E1,HTML5端向所述音频控制器发送移除某个正在播放的音频对象的指令;
[0036]步骤E2,所述音频控制器查询所述正在播放音频对象字典,将对应的音频对象以及其绑定的音频播放器对象从所述正在播放音频对象字典中移除。
[0037]优选的,移除所有音频对象的方法为:
[0038]步骤F1,HTML5端向所述音频控制器发送移除所有音频对象的指令;
[0039]步骤F2,所述音频控制器遍历所述正在播放音频对象字典,将所述正在播放音频对象字典中的所有音频对象以及其绑定的音频播放器对象移除,实现清空所述正在播放音频对象字典的效果;
[0040]所述音频控制器遍历所述已加载音频对象字典,将所述已加载音频对象字典清空,回收所有已加载音频对象占用的资源。
[0041]优选的,还包括:
[0042]在音频对象播放过程中,当监听到来电话时,首先遍历所述正在播放音频对象字典中的每个音频对象,暂停每个音频对象绑定的音频播放器对象;当来电结束后,再遍历所述正在播放音频对象字典中的每个音频对象,恢复每个音频对象绑定的音频播放本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种iOS对嵌入的HTML5页面中的音频进行控制的方法,其特征在于,包括以下步骤:步骤1,iOS端将HTML5页面嵌入到浏览器后,初始化生成音频控制器、已加载音频对象字典和正在播放音频对象字典;其中:所述已加载音频对象字典,用于存储已加载的音频对象;所述正在播放音频对象字典,用于存储当前正在播放的音频对象;所述音频控制器,用于根据所述已加载音频对象字典和所述正在播放音频对象字典,实现对音频对象的控制;步骤2,HTML5端调用iOS端的音频控制器,实现对HTML5页面中的音频对象的控制。2.根据权利要求1所述的iOS对嵌入的HTML5页面中的音频进行控制的方法,其特征在于,步骤2中,HTML5端调用iOS端的音频控制器,实现对HTML5页面中的音频对象的控制,包括:加载音频对象、播放音频对象、暂停播放音频对象、调节音频对象的音频音量、控制音频对象是否循环播放、移除个别的音频对象、移除所有音频对象、静音音频对象和取消静音音频对象。3.根据权利要求2所述的iOS对嵌入的HTML5页面中的音频进行控制的方法,其特征在于,加载音频对象的方法为:步骤A1,HTML5端向iOS端的音频控制器发送加载音频对象的请求;其中,所述请求中携带有需加载的音频对象的ID;将需加载的音频对象表示为:音频对象VF;步骤A2,所述音频控制器接收到加载请求后,以音频对象VF的ID为查询关键词,查询所述已加载音频对象字典,判断音频对象VF是否存在于所述已加载音频对象字典中,如果不存在,则执行步骤A3;如果存在,则直接执行步骤A5;步骤A3,所述音频控制器判断音频对象VF是否存在本地资源包中,如果不存在,则通过网络将音频对象VF下载到本地资源包中,再执行步骤A4;如果存在,则直接执行步骤A4;步骤A4,所述音频控制器创建与音频对象VF唯一对应的音频播放器对象VP,并将音频播放器对象VP绑定到音频对象VF;然后,所述音频控制器将绑定有音频播放器对象VP的音频对象VF加载到所述已加载音频对象字典,并采用音频对象VF的ID作为标识,由此完成音频对象VF的加载过程;步骤A5,所述音频控制器向HTML5端返回音频对象VF加载成功,可以播放的通知消息。4.根据权利要求3所述的iOS对嵌入的HTML5页面中的音频进行控制的方法,其特征在于,播放音频对象的方法为:步骤B1,HTML5端接收到所述音频控制器返回的音频对象VF加载成功的通知消息后,HTML5端向所述音频控制器发送播放音频对象VF的请求;步骤B2,所述音频控制器从所述已加载音频对象字典中取出绑定有音频播放器对象VP的音频对象VF;所述音频控制器向音频播放器对象VP发送播放指令;所述音频播放器对象VP一方面开始播放音频对象VF;另一方面,将开始播放的绑定有音频播放器对象VP的音频对象VF,加入到所述正在播放音频对象字典。5.根据权利要求4所述的iOS对嵌入的HTML5页面中的音频进行控制的方法,其特征在于,暂停播放音频对象、...

【专利技术属性】
技术研发人员:李兴平张冬冬
申请(专利权)人:四三九九网络股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1