一种视频流量引导方法、装置及一种电子设备的制造方法

文档序号:9238677阅读:230来源:国知局
一种视频流量引导方法、装置及一种电子设备的制造方法
【技术领域】
[0001]本发明涉及通信技术领域,特别是涉及一种视频流量引导方法、装置及一种电子设备。
【背景技术】
[0002]现有的将流量引导至一指定的代理服务器的方法一般是通过如图1所示的流程步骤来实现,假设请求一图片,图片所对应的URL为http://hostnameA.com/icon, jpg,需要将所述图片的请求的流量引导至指定代理服务器,例如所述指定代理服务器的IP地址为127.0.2.1,则流量引导的方法包括:构造URL ;利用URL初始化相应的函数;发起获取图片请求;判断系统是否设置代理,若是,则直接连接到所述指定的代理服务器,并接收所述指定代理服务器返回的图片数据;若否,则直接连接到主机名为hostnameA的服务器,并接收主机名为hostnameA的服务器返回的图片数据。
[0003]然而,UIWebView控件中的视频请求过程,不能执行判断系统是否设置代理的步骤,即不能根据以上的流量引导方法对其进行流量引导,所以现有的流量引导方法不适用于UIWebView中的视频流量的引导。

【发明内容】

[0004]鉴于以上所述现有技术的缺点,本发明的目的在于提供一种视频流量引导方法、装置及一种电子设备,主要用于解决现有技术中不能对在UIWebView中播放视频产生的流量进行引导的问题。
[0005]为实现上述目的及其他相关目的,本发明提供一种视频流量引导方法,所述方法包括如下步骤:构造一新视频URL的初始化函数,所述新视频URL的初始化函数的参数与返回值与原始初始化函数一致;劫持所述原始初始化函数,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数,使得修改URL中的目标地址为指定代理服务器地址,进而将视频流量引导至指定代理服务器。
[0006]可选的,所述劫持所述原始初始化函数的步骤包括:交换所述新视频URL的初始化函数与原始初始化函数的实际代码地址,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数。
[0007]可选的,所述新视频URL的初始化函数为AVUrlAsset类的初始化方法。
[0008]可选的,所述执行所述新视频URL的初始化函数,进而将视频流量引导至指定代理服务器的步骤包括:判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同,如果相同,则直接回调所述原始初始化函数请求相应的视频,以将视频流量引导至所述指定代理服务器;如果不相同,则将所述URL参数的主机名修改为所述指定代理服务器的主机名,提取修改前的URL参数的主机名和路径作为修改后的URL参数的路径,再回调所述原始初始化函数请求相应的视频,以将视频流量引导至所述指定代理服务器。
[0009]可选的,在执行判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同的步骤之前,判断原始初始化函数中URL参数的访问方式是否为http或https,如果不是,则直接回调所述原始初始化函数请求相应的视频;如果是,则执行判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同的步骤。
[0010]为实现上述目的及其他相关目的,本发明还提供一种视频流量引导装置,包括:函数构造模块,用于构造一新视频URL的初始化函数,所述新视频URL的初始化函数的参数与返回值与原始初始化函数一致;流量引导模块,用于劫持所述原始初始化函数,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数,使得修改URL中的目标地址为指定代理服务器地址,进而将视频流量引导至指定代理服务器。
[0011]可选的,所述流量引导模块用于劫持所述原始初始化函数包括:用于交换所述新视频URL的初始化函数与原始初始化函数的实际代码地址,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数。
[0012]可选的,所述新视频URL的初始化函数为AVUrlAsset类的初始化方法。
[0013]可选的,所述流量引导模块执行所述新视频URL的初始化函数,进而将视频流量引导至指定代理服务器包括:判断所述原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同,如果相同,则直接回调所述原始初始化函数请求相应的视频,以将视频流量引导至所述指定代理服务器;如果不相同,则将所述URL参数的主机名修改为所述指定代理服务器的主机名,提取修改前的URL参数的主机名和路径作为修改后的URL参数的路径,再回调所述原始初始化函数请求相应的视频,以将视频流量引导至所述指定代理服务器。
[0014]可选的,所述流量引导模块,还用以在执行判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同的步骤之前,判断原始初始化函数中URL参数的访问方式是否为http或https,如果不是,则直接回调所述原始初始化函数请求相应的视频;如果是,则执行判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同的步骤。
[0015]为实现上述目的及其他相关目的,本发明还提供一种电子设备,所述电子设备的系统为1S系统,所述电子设备具有如上任一项所述的视频流量引导装置,以对接收的视频请求进行流量的引导。
[0016]可选的,所述电子设备为智能手机或平板电脑。
[0017]如上所述,本发明的一种视频流量引导方法、装置及一种电子设备,通过构造一新视频URL的初始化函数,交换原始初始化函数以及新视频URL的初始化函数的地址,劫持所述原始初始化函数,即在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数,进而将视频流量引导至指定代理服务器,实现了对于1S的UIffebView控件的视频请求的流量引导。
【附图说明】
[0018]图1显示为现有技术中流量引导的一示例的流程示意图。
[0019]图2显示为本发明的视频流量引导方法在一具体实施例中的流程示意图。
[0020]图3显示为本发明的视频流量引导方法在一具体实施例中的流程示意图。
[0021]图4显示为本发明的视频流量引导装置在一具体实施例中的模块示意图。
[0022]图5显示为本发明的一种电子设备以及一种服务器在一具体实施例中的应用示意图。
[0023]元件标号说明
[0024]1、21视频流量引导装置
[0025]11函数构造模块
[0026]12流量引导模块
[0027]2电子设备
[0028]3服务器
[0029]Sll ?S12、S21 ?S26 步骤
【具体实施方式】
[0030]以下通过特定的具体实例说明本发明的实施方式,本领域技术人员可由本说明书所揭露的内容轻易地了解本发明的其他优点与功效。本发明还可以通过另外不同的【具体实施方式】加以实施或应用,本说明书中的各项细节也可以基于不同观点与应用,在没有背离本发明的精神下进行各种修饰或改变。需说明的是,在不冲突的情况下,以下实施例及实施例中的特征可以相互组合。
[0031]需要说明的是,以下实施例中所提供的图示仅以示意方式说明本发明的基本构想,遂图示中仅显示与本发明中有关的组件而非按照实际实施时的组件数目、形状及尺寸绘制,其实际实施时各组件的型态、数量及比例可为一种随意的改变,且其组件布局型态也可能更为复杂。
[0032]请参阅图2,显示为本发明的视频流量引导方法在一具体实施例中的流程示意图。所述方法优选应用于1S系统的HWebView控件中,所述方法包括如下步骤:
[0033]Sll:构造一新视频URL的初始化函数,所述新视频URL的初始化函数的参数与返回值与原始初始化函数一致;
[0034]例如在新定义的AVUrlAsset类中构造新的初始化方法hooklnitWithURL,该方法的参数与返回值保持与AVUrlAsset类中原来的初始化方法InitWithURL —致。
[0035]S12:劫持所述原始初始化函数,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数,使得修改URL中的目标地址为指定代理服务器地址,进而将视频流量引导至指定代理服务器。即1S系统在使用UIWebView控件播放视频链接之前,会调用AVUrlAsset类中的InitWithUrl进行初始化,此时我们构造的新方法hooklnitWithURL将会被调用,而原初始化方法则不会调用,从而可以将视频流量引导至指定代理服务器。
[0036]进一步的,请参阅图3,显示为本发明的UIWebView中视频流量引导方法在另一具体实施例中的流程示意图,所述方法包括:
[0037]S21:构造一新视频URL的初始化函数,所述新视频URL的初始化函数的参数与返回值与原始初始化函数一致;且所述步骤S21与图2所示实施例中的步骤Sll相同。
[0038]且图2所示实施例中所述步骤S12的劫持所述原始初始化函数的步骤优选包括:
[0039]S22:交换所述新视频URL的初始化函数与原始初始化函数的实际代码地址,以在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数。即分别取得新构造初始化方法和原初始化方法的实际代码地址,替换完后调用hooklnitWithURL则会执行InitWithURL的实现,而调用InitWithURL则会执行hooklnitWithURL 的实现。
[0040]且图2所示实施例中所述的步骤S12的在系统调用所述原始初始化函数请求相应的视频时,执行所述新视频URL的初始化函数,进而将视频流量引导至指定代理服务器的步骤具体包括:
[0041]S23:判断原始初始化函数中URL参数的访问方式是否为http或https,若是,则执行步骤S24 ;若否,则执行步骤S25,即本实施例中,优选只对访问方式为http或https的访问进行视频流量的引导。
[0042]S24:判断原始初始化函数中URL参数的主机名是否与所述指定代理服务器的主机名相同;如果相同,则执行步骤S25 ;如果不同,则执行步骤S26。
[0043]S25:直接回调所述原始初始化函数请求相应的视频,以将视频流量引导至所述指定代理服务器。
[0044]S26:将所述URL参
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1