基于WiFi设备传输文件的方法及系统转让专利

申请号 : CN201410436536.8

文献号 : CN104158908B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 侯志刚鄢云

申请人 : 北京奇虎科技有限公司奇智软件(北京)有限公司

摘要 :

本发明公开了一种基于WiFi设备传输文件的方法及系统。其中,方法包括:通过所述WiFi设备建立第一终端与第二终端之间的通信连接;在建立所述通信连接之后,所述第一终端在用户交互界面中提供并展现用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;根据用户对所述第一操作接口的访问请求,所述第一终端向所述第二终端上传所述第一终端保存的文件;和/或,根据用户对所述第二操作接口的访问请求,所述第一终端下载所述第二终端保存的文件。本方案利用了通过WiFi设备创建的第一终端与第二终端之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。

权利要求 :

1.一种基于WiFi设备传输文件的方法,包括:

通过所述WiFi设备建立第一终端与第二终端之间的通信连接;其中,在所述WiFi设备与第二终端连接后,在所述第二终端中启动WiFi服务程序;所述WiFi服务程序为动态链接库文件;

在建立所述通信连接之后,所述第一终端在用户交互界面中提供并展现用于访问所述第二终端的指定文件夹的第三操作接口;

根据用户对所述第三操作接口的访问请求,所述第一终端向所述第二终端发送用于访问所述第二终端的指定文件夹的第一http请求消息,以供所述第二终端根据所述第一http请求消息调用所述第二终端的操作系统提供的浏览所述指定文件夹的文件列表的接口,获取所述指定文件夹的文件列表;

所述第一终端接收所述第二终端返回的携带有所述指定文件夹的文件列表的第一http响应消息,在所述用户交互界面中展现所述指定文件夹的文件列表;

所述第一终端在用户交互界面中提供并展现用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;

根据用户对所述第一操作接口的访问请求,所述第一终端向所述第二终端上传所述第一终端保存的文件;和/或,根据用户对所述第二操作接口的访问请求,所述第一终端下载所述第二终端保存的文件。

2.根据权利要求1所述的方法,所述第一终端在用户交互界面中提供并展现用于上传文件的第一操作接口具体为:所述第一终端在用户交互界面中提供并展现用于向所述指定文件夹内添加文件的第一操作接口。

3.根据权利要求1所述的方法,所述第一终端在用户交互界面中提供并展现用于下载文件的第二操作接口具体为:针对所述指定文件夹的文件列表中的每个文件,所述第一终端在用户交互界面中提供并根据用户的操作展现用于下载该文件的第二操作接口。

4.根据权利要求1或3所述的方法,根据用户对所述第二操作接口的访问请求,所述第一终端下载所述第二终端保存的文件进一步包括:根据用户对指定文件的第二操作接口的访问请求,所述第一终端连接到所述第二终端的指定端口,向所述指定端口发送用于下载所述指定文件的第二http请求消息,所述第二http请求消息携带有所述指定文件的文件名;

所述第二终端通过所述指定端口将所述文件名对应的指定文件传输给所述第一终端。

5.根据权利要求4所述的方法,当所述指定文件为多个时,所述第二终端通过所述指定端口将所述文件名对应的指定文件传输给所述第一终端进一步包括:所述第二终端通过所述指定端口将多个指定文件以至少一个线程且每个线程中队列的形式传输给所述第一终端。

6.根据权利要求4所述的方法,所述方法还包括:当第二终端接收到多个第一终端发送的用于下载同一指定文件的第二http请求消息时,所述第二终端将所述指定文件加载到内存中,以供所述多个第一终端从所述第二终端的内存中下载所述指定文件。

7.根据权利要求1-3任一项所述的方法,所述通过WiFi设备建立第一终端与第二终端之间的通信连接进一步包括:所述第一终端向所述第二终端中的WiFi服务程序发送登录消息;

所述第一终端接收所述第二终端中的WiFi服务程序返回的登录确认消息。

8.根据权利要求7所述的方法,所述通过WiFi设备建立第一终端与第二终端之间的通信连接还包括:所述第一终端向所述第二终端中的WiFi服务程序发送认证消息,以供所述第二终端中的WiFi服务程序根据所述认证消息生成令牌;

所述第一终端接收所述第二终端返回的携带有所述令牌的认证确认消息。

9.根据权利要求8所述的方法,所述令牌为经过时间戳进行加密的字符串。

10.根据权利要求8或9所述的方法,所述第一终端和所述第二终端之间交互的http请求消息和http响应消息中均携带有所述令牌。

11.一种基于WiFi设备传输文件的系统,包括:第一终端、第二终端以及所述WiFi设备,通过所述WiFi设备所述第一终端与所述第二终端之间建立有通信连接;

其中,所述第一终端包括:操作接口提供模块,适于提供用于上传文件的第一操作接口和/或用于下载文件的第二操作接口以及提供用于访问所述第二终端的指定文件夹的第三操作接口;显示模块,适于在用户交互界面中展现所提供的用于上传文件的第一操作接口和/或用于下载文件的第二操作接口、在用户交互界面中展现所提供的用于访问所述第二终端的指定文件夹的第三操作接口以及在用户交互界面中展现所述指定文件夹的文件列表;第一发送模块,适于根据用户对所述第一操作接口的访问请求,向所述第二终端上传所述第一终端保存的文件以及根据用户对所述第三操作接口的访问请求,向所述第二终端发送用于访问所述第二终端的指定文件夹的第一http请求消息;第一接收模块,适于根据用户对所述第二操作接口的访问请求,接收从所述第二终端下载的文件以及接收所述第二终端返回的第一http响应消息;

所述第二终端包括:第二接收模块,适于接收所述第一终端上传的文件以及接收所述第一终端发送的所述第一http请求消息;第二发送模块,适于向第一终端发送下载的文件以及向所述第一终端发送携带有所述指定文件夹的文件列表的第一http响应消息;系统接口调用模块,适于根据所述第一http请求消息调用所述第二终端的操作系统提供的浏览所述指定文件夹的文件列表的接口,获取所述指定文件夹的文件列表;

所述第二终端包括在所述WiFi设备与第二终端连接后所启动的WiFi服务程序;所述第二接收模块和所述第二发送模块均为通过调用所述WiFi服务程序而实现的功能模块;其中,所述WiFi服务程序为动态链接库文件。

12.根据权利要求11所述的系统,所述操作接口提供模块具体适于:提供用于向所述指定文件夹内添加文件的第一操作接口;所述显示模块具体适于:在用户交互界面中展现用于向所述指定文件夹内添加文件的第一操作接口。

13.根据权利要求11所述的系统,所述操作接口提供模块具体适于:针对所述指定文件夹的文件列表中的每个文件,提供用于下载该文件的第二操作接口;所述显示模块具体适于:在用户交互界面中根据用户的操作展现用于下载该文件的第二操作接口。

14.根据权利要求11或13所述的系统,所述第一发送模块具体适于:根据用户对指定文件的第二操作接口的访问请求,连接到所述第二终端的指定端口,向所述指定端口发送用于下载所述指定文件的第二http请求消息,所述第二http请求消息携带有所述指定文件的文件名;

所述第二发送模块具体适于:通过所述指定端口将所述文件名对应的指定文件传输给所述第一终端。

15.根据权利要求14所述的系统,所述第二发送模块具体适于:通过所述指定端口将多个指定文件以至少一个线程且每个线程中队列的形式传输给所述第一终端。

16.根据权利要求14所述的系统,所述第二终端还包括:内存映射模块,适于当所述第二接收模块接收到多个第一终端发送的用于下载同一指定文件的第二http请求消息时,将所述指定文件加载到内存中,以供所述多个第一终端从所述第二终端的内存中下载所述指定文件。

17.根据权利要求11所述的系统,所述第一发送模块还适于:向所述第二终端中的WiFi服务程序发送登录消息;

所述第二接收模块还适于:接收所述登录消息;

所述第二发送模块还适于:根据所述登录消息,向所述第一终端返回登录确认消息;

所述第一接收模块还适于:接收所述登录确认消息。

18.根据权利要求17所述的系统,所述第一发送模块还适于:向所述第二终端中的WiFi服务程序发送认证消息;

所述第二接收模块还适于:接收所述认证消息;

所述第二终端还包括:认证模块,适于根据所述认证消息生成令牌;

所述第二发送模块还适于:向所述第一终端返回携带有所述令牌的认证确认消息;

所述第一接收模块还适于:接收所述认证确认消息。

19.根据权利要求18所述的系统,所述令牌为经过时间戳进行加密的字符串。

20.根据权利要求18或19所述的系统,所述第一终端和所述第二终端之间交互的http请求消息和http响应消息中均携带有所述令牌。

说明书 :

基于WiFi设备传输文件的方法及系统

技术领域

[0001] 本发明涉及互联网技术领域,具体涉及一种基于WiFi设备传输文件的方法及系统。

背景技术

[0002] 随身WiFi(Wireless Fidelity,无线保真)设备用于满足用户使用移动终端进行无线上网的需求。现有技术中随身WiFi设备分为两种:一种是通过无线运营商提供的无线上网芯片(SIM卡),组成一个可以移动的WiFi接收发射信号源,通过此套设备,可以连接到2.5G、3G或者4G网络上,形成可以移动的WiFi热点;另一种是将随身WiFi设备插到可上网的台式机上,利用台式机的网络创建WiFi热点。用户的移动终端通过连接到WiFi热点进而连接到互联网。
[0003] 然而现有技术中的随身WiFi设备功能单一,仅仅提供连接互联网的功能,无法有效利用用户的移动终端与台式机之间的局域网的优势,为用户提供多样化的服务。

发明内容

[0004] 鉴于上述问题,提出了本发明以便提供一种克服上述问题或者至少部分地解决上述问题的基于WiFi设备传输文件的方法及系统。
[0005] 根据本发明的一个方面,提供了一种基于WiFi设备传输文件的方法,包括:
[0006] 通过所述WiFi设备建立第一终端与第二终端之间的通信连接;
[0007] 在建立所述通信连接之后,所述第一终端在用户交互界面中提供并展现用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;
[0008] 根据用户对所述第一操作接口的访问请求,所述第一终端向所述第二终端上传所述第一终端保存的文件;和/或,根据用户对所述第二操作接口的访问请求,所述第一终端下载所述第二终端保存的文件。
[0009] 根据本发明的另一方面,提供了一种基于WiFi设备传输文件的系统,包括:第一终端、第二终端以及所述WiFi设备,通过所述WiFi设备所述第一终端与所述第二终端之间建立有通信连接;
[0010] 其中,所述第一终端包括:操作接口提供模块,适于提供用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;显示模块,适于在用户交互界面中展现所提供的用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;第一发送模块,适于根据用户对所述第一操作接口的访问请求,向所述第二终端上传所述第一终端保存的文件;第一接收模块,适于根据用户对所述第二操作接口的访问请求,接收从所述第二终端下载的文件;
[0011] 所述第二终端包括:第二接收模块,适于接收所述第一终端上传的文件;第二发送模块,适于向第一终端发送下载的文件。
[0012] 根据本发明提供的技术方案,在通过WiFi设备建立第一终端与第二终端之间的通信连接之后,用户通过对第一终端在用户交互界面中提供的第一操作接口和/或第二操作接口的访问请求,能够实现第一终端和第二终端之间的文件交互传输,本方案利用了通过WiFi设备创建的第一终端与第二终端之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。
[0013] 上述说明仅是本发明技术方案的概述,为了能够更清楚了解本发明的技术手段,而可依照说明书的内容予以实施,并且为了让本发明的上述和其它目的、特征和优点能够更明显易懂,以下特举本发明的具体实施方式。

附图说明

[0014] 通过阅读下文优选实施方式的详细描述,各种其他的优点和益处对于本领域普通技术人员将变得清楚明了。附图仅用于示出优选实施方式的目的,而并不认为是对本发明的限制。而且在整个附图中,用相同的参考符号表示相同的部件。在附图中:
[0015] 图1示出了根据本发明一个实施例的基于WiFi设备传输文件的方法流程图;
[0016] 图2示出了根据本发明另一个实施例的基于WiFi设备传输文件的方法流程图;
[0017] 图3a示出了本发明提供的WiFi应用搜索WiFi设备的界面示意图;
[0018] 图3b示出了本发明提供的WiFi应用进行认证的界面示意图;
[0019] 图4示出了本发明提供的“我的电脑”功能区的用户交互界面示意图;
[0020] 图5示出了本发明提供的D盘下文件列表的示意图;
[0021] 图6示出了本发明提供的展现第二操作接口的用户交互界面示意图;
[0022] 图7示出了本发明提供的对文件进行重命名的用户交互界面示意图;
[0023] 图8a示出了本发明提供的手机向PC上传文件的用户交互界面示意图;
[0024] 图8b和图8c示出了本发明提供的从手机相册选取上传的手机照片的示意图;
[0025] 图8d示出了本发明提供的选取上传的手机文件的示意图;
[0026] 图9示出了根据本发明一个实施例的基于WiFi设备传输文件的系统结构框图。

具体实施方式

[0027] 下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
[0028] 图1示出了根据本发明一个实施例的基于WiFi设备传输文件的方法流程图,如图1所示,本实施例包括如下步骤:
[0029] 步骤S100,通过WiFi设备建立第一终端与第二终端之间的通信连接。
[0030] 本发明中的WiFi设备指的是可插到台式个人电脑(简称:PC)上的可移动的随身WiFi设备。本文中,第一终端可以为智能手机、平板式电脑等具有移动联网功能的移动终端设备,第二终端可以为PC等终端设备。当用户使用WiFi设备时,将WiFi设备插到第二终端上,WiFi设备与第二终端建立连接后,随之在第二终端中启动WiFi服务程序,创建WiFi热点。其中,WiFi服务程序用于使第一终端与第二终端之间建立通信连接,并且为第一终端和第二终端之间的数据传输提供服务。
[0031] 具体地,第一终端内部安装有专门的WiFi应用,该WiFi应用为与WiFi设备及其在第二终端中启动的WiFi服务程序协同工作的软件程序,第一终端与第二终端的数据通信具体为第一终端内部的WiFi应用与第二终端中的WiFi服务程序之间的数据通信。
[0032] 在创建WiFi热点之后,第一终端可通过发送登录消息的形式与第二终端建立通信连接。
[0033] 步骤S101,在建立通信连接之后,第一终端在用户交互界面中提供并展现用于上传文件的第一操作接口和/或用于下载文件的第二操作接口。
[0034] 第一终端的WiFi应用为用户提供各个功能区的用户交互界面,在其中一个功能区的用户交互界面中提供并展现用于上传文件的第一操作接口,在其中另一个功能区的用户交互界面中提供并展现用于下载文件的第二操作接口。本发明中,操作接口可理解为第一终端为用户提供各种功能实现的用户操作接口,以第一操作接口和第二操作接口为例,用户若选择(点击或其它方式)用户交互界面中的第一操作接口,第一终端将为用户提供上传文件的功能,用户若选择用户交互界面中的第二操作接口,第一终端将为用户提供下载文件的功能。
[0035] 步骤S102,根据用户对第一操作接口的访问请求,第一终端向第二终端上传第一终端保存的文件;和/或,根据用户对第二操作接口的访问请求,第一终端下载第二终端保存的文件。
[0036] 本步骤可实现第一终端和第二终端之间的文件交互传输。如果用户选择第一操作接口,第一终端将保存在其上的文件传输给第二终端;如果用户选择第二操作接口,第二终端将保存在其上的文件传输给第一终端。
[0037] 根据本实施例提供的方法,在通过WiFi设备建立第一终端与第二终端之间的通信连接之后,用户通过对第一终端在用户交互界面中提供的第一操作接口和/或第二操作接口的访问请求,能够实现第一终端和第二终端之间的文件交互传输,该方法利用了通过WiFi设备创建的第一终端与第二终端之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。
[0038] 图2示出了根据本发明另一个实施例的基于WiFi设备传输文件的方法流程图。在本实施例中,第一终端以手机为例,第二终端以PC为例进行说明。如图2所示,本实施例包括如下步骤:
[0039] 步骤S200,在WiFi设备插入到PC上之后,WiFi设备与PC连接,在PC中启动WiFi服务程序。
[0040] 当用户使用WiFi设备时,将WiFi设备插到PC上,WiFi设备与PC建立连接后,随之在PC中启动WiFi服务程序,创建WiFi热点。
[0041] 可选的,WiFi服务程序为动态链接库(简称:dll)文件,通过调用该dll文件可实现接收/发送指定协议消息、创建端口、数据处理、调用系统应用程序编程接口(简称:API)等功能。
[0042] 步骤S201,在启动WiFi服务程序之后,手机向PC中的该WiFi服务程序发送登录消息。
[0043] 具体地,手机内部安装有专门的WiFi应用,该WiFi应用为与WiFi设备及其在PC中启动的WiFi服务程序协同工作的软件程序,手机与PC的数据通信具体为手机内部的WiFi应用与PC中的WiFi服务程序之间的数据通信。
[0044] 图3a示出了本发明提供的WiFi应用搜索WiFi设备的界面示意图。在一个示例中,用户在手机中启动WiFi应用后,WiFi应用呈现如图3a所示的界面,此时WiFi应用正在搜索随身WiFi设备,即WiFi应用向WiFi服务程序发送登录消息(online),确认是否存在与PC连接的随身WiFi设备。
[0045] 步骤S202,在WiFi设备与PC正常连接的情况下,PC中的WiFi服务程序向手机返回登录确认消息。
[0046] WiFi服务程序向WiFi应用返回登录确认消息后,WiFi应用确认存在WiFi设备以及与WiFi设备连接的PC。
[0047] 步骤S203,手机接收到登录确认消息后,继续向PC中的WiFi服务程序发送认证消息。
[0048] 为了提升安全性,在确认存在WiFi设备以及与WiFi设备连接的PC之后,PC要对手机的安全性进行认证。图3b示出了本发明提供的WiFi应用进行认证的界面示意图。如图3b所示,WiFi应用此时正在进行认证。如果用户选择“跳过,不认证”,则无需执行步骤S203-步骤S205。
[0049] 步骤S204,PC中的WiFi服务程序根据认证消息生成令牌。
[0050] WiFi服务程序接收到WiFi应用发送的认证消息之后,对手机的身份进行认证。具体地,PC端会弹出提示:“是否允许该手机认证访问”,如果用户选择允许,则WiFi服务程序通过认证,并生成一个令牌(token)。
[0051] 可选地,令牌为经过时间戳进行加密的字符串。为了防止某些嗅探器通过嗅探认证过程获取token,本发明对token进行加密处理,加密密钥优选为时间戳。
[0052] 步骤S205,PC中的WiFi服务程序向手机返回携带有令牌的认证确认消息。
[0053] 在给手机返回认证确认消息后,手机和PC就都保存有一致的token,在后续手机与PC之间交互的http请求/响应消息的头信息中可选携带该token,手机与PC接收到消息后,首先验证token,验证通过后再进行处理。
[0054] 通过以上步骤S201-步骤S205,手机与PC之间建立通信连接。需要说明的是,本发明中手机与PC之间建立通信连接不限定于上述步骤,也可不进行认证步骤,即步骤203-步骤205为可选步骤。
[0055] 步骤S206,在建立通信连接之后,手机在用户交互界面中提供并展现用于访问PC的指定文件夹的第三操作接口。
[0056] WiFi应用为用户提供各个功能区的用户交互界面,在其中一个功能区的用户交互界面中提供并展现用于访问PC的指定文件夹的第三操作接口,用户若选择用户交互界面中的第三操作接口,手机将为用户提供PC各个指定文件夹的展示功能。
[0057] 图4示出了本发明提供的“我的电脑”功能区的用户交互界面示意图。如图4所示,在“我的电脑”功能区的用户交互界面中,提供了“桌面文件”、“D:工作”、“F:生活”、“C:系统文件”共4个指定文件夹的目录,这四个目录同时也是访问各个指定文件夹的第三操作接口,用户可根据需要选择任意指定文件夹来进一步查看该指定文件夹中的文件。
[0058] 步骤S207,根据用户对第三操作接口的访问请求,手机向PC发送用于访问PC的指定文件夹的第一http请求消息。
[0059] 例如,用户选择“D:工作”触发对D盘的第三操作接口的访问请求,WiFi应用通过手机向PC中的WiFi服务程序发送访问PC的D盘的第一http请求消息。可选的,该第一http请求消息的头信息中携带有token。
[0060] 步骤S208,PC接收到第一http请求消息之后,调用PC操作系统提供的浏览指定文件夹的文件列表的接口,获取指定文件夹的文件列表。
[0061] PC中的WiFi服务程序接收到第一http请求消息之后,首先提取第一http请求消息中携带的token,对token进行解密,比对解密后的token与PC保存的token是否一致,若一致,表明token验证通过。然后,WiFi服务程序调用PC操作系统提供的系统API:list函数,将指定文件夹的标志作为参数传递给list函数,list函数的返回值即为指定文件夹的文件列表。
[0062] 步骤S209,PC向手机返回携带有指定文件夹的文件列表的第一http响应消息。
[0063] 可选的,第一http响应消息的头信息中携带有token。
[0064] 步骤S210,手机从第一http响应消息中提取指定文件夹的文件列表,在用户交互界面中展现指定文件夹的文件列表。
[0065] 需要说明的是,对于PC来说,一般情况下某个文件夹下可以包含文件,也可以包含下一级目录的子文件夹,因此,在本发明实施例中,指定文件夹的文件列表既包含文件本身也包含子文件夹。
[0066] 图5示出了本发明提供的D盘下文件列表的示意图。如图5所示,在对D盘文件列表进行展现时,展现D盘下的子文件夹的名称和包含的文件数目,还展现D盘下的文件的名称和文件的大小。
[0067] 步骤S211,针对指定文件夹的文件列表中的每个文件,手机在用户交互界面中提供并根据用户的操作展现用于下载该文件的第二操作接口。
[0068] 针对指定文件夹的文件列表中的每个文件(包含文件和子文件夹),WiFi应用都提供有用于下载文件的第二操作接口,该第二操作接口的展现由用户的操作来触发。
[0069] 图6示出了本发明提供的展现第二操作接口的用户交互界面示意图。如图6所示,在文件列表的示意界面中,每个文件都对应有操作符号(如图6中的右侧所显示的如同箭头的符号),当用户想要下载“WiFi项目”文件夹下的所有内容时,点击“WiFi项目”对应的操作符号,用户交互界面中展现出来“下载”、“重命名”和“删除”的操作接口,用户通过点击“下载”实现该文件夹下所有内容的下载。
[0070] 除此之外,用户还可通过点击“重命名”对该文件的名称进行重新设置,如图7所示,示出了本发明提供的对文件进行重命名的用户交互界面示意图,也可通过点击“删除”将PC上的文件整体删除。
[0071] 步骤S212,根据用户对指定文件的第二操作接口的访问请求,手机连接到PC的指定端口,向该指定端口发送用于下载指定文件的第二http请求消息,该第二http请求消息中携带有指定文件的文件名。
[0072] 本发明实施例中,PC中的WiFi服务程序在PC中创建指定端口用于与手机之间传输文件。WiFi应用通过手机连接到该指定端口,向该指定端口发送用于下载指定文件的第二http请求消息,第二http请求消息中携带有指定文件的文件名。可选的,该第二http请求消息的头信息中携带有token。
[0073] 步骤S213,PC通过指定端口将文件名对应的指定文件传输给手机。
[0074] 由于手机与PC之间传输的是二进制流数据,所以在传输文件之前首先定义文件的头格式,该头格式中记录的是文件名占用字节数,文件创建时间占用字节数等信息,传输文件的同时还需传输路径信息,用于指明该文件的保存目录。
[0075] 当要传输的文件为多个时,如果每个文件都新开一个线程去传输,则磁盘IO太多,不能提升速度反而大大影响传输速度,因此本发明实施例采用以至少一个线程且每个线程中队列的形式传输多个指定文件。但,为了避免出现容错问题,在以队列形式传输多个指定文件时,可以按照顺序传送每个指定文件的文件名、文件大小、文件路径信息、开始标志位、文件内容、结束标志位,并在传递完结束标志位后对文件的实际大小进行验证,若验证通过,则传送下一个指定文件,若验证不通过,则重新传送该指定文件。
[0076] 另外,在一个示例中,如果PC接收到多个手机发送的下载同一指定文件的第二http请求消息时,PC可将该指定文件加载到内存中,这样多个手机就可从PC的内存中下载该指定文件,从而大大提升下载速度。可选的,PC还可判断指定文件的大小,若低于预设阈值(例如100M),则可将其加载到内存中;若高于预设阈值,则不将其加载到内存中,以免影响PC系统的正常运行。
[0077] 上述实施例提供的是手机从PC中下载文件的方法,根据该方法,用户可通过在手机的用户交互界面上进行操作下载PC中的文件。该方法利用了通过WiFi设备创建的手机与PC之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。另外,由于文件的传输对数据的完整性以及数据传输可靠性有较高要求,所以本实施例通过基于http协议的请求消息和响应消息来完成文件的传输,保证了文件传输完整性和可靠性。进一步的,本实施例提供的手机与PC之间的通信方式需携带加密token,能防止token被窃取,提升了安全性。
[0078] 图3示出了根据本发明另一个实施例的基于WiFi设备传输文件的方法流程图。在本实施例中,第一终端以手机为例,第二终端以PC为例进行说明。如图3所示,本实施例包括如下步骤:
[0079] 步骤S300,通过WiFi设备建立手机与PC之间的通信连接。
[0080] 手机与PC之间建立通信连接的方法可参见上述方法实施例中步骤S200-步骤S205的描述,在此不再赘述。
[0081] 步骤S301,在建立通信连接之后,手机在用户交互界面中提供并展现用于访问PC的指定文件夹的第三操作接口。
[0082] 步骤S302,根据用户对第三操作接口的访问请求,手机向PC发送用于访问PC的指定文件夹的第一http请求消息。
[0083] 步骤S303,PC接收到第一http请求消息之后,调用PC操作系统提供的浏览指定文件夹的文件列表的接口,获取指定文件夹的文件列表。
[0084] 步骤S304,PC向手机返回携带有指定文件夹的文件列表的第一http响应消息。
[0085] 步骤S305,手机从第一http响应消息中提取指定文件夹的文件列表,在用户交互界面中展现指定文件夹的文件列表。
[0086] 上述步骤S301-步骤S305的具体执行过程可参见上述方法实施例中步骤S206-步骤S210的具体描述。
[0087] 步骤S306,手机在用户交互界面中提供并展现用于向指定文件夹内添加文件的第一操作接口。
[0088] 图8a示出了本发明提供的手机向PC上传文件的用户交互界面示意图。如图8a所示,在其中一功能区的用户交互界面中提供并展现用于向D盘内添加手机照片和手机文件的第一操作接口。图8b和图8c示出了本发明提供的从手机相册选取上传的手机照片的示意图,如图8b和图8c所示,在用户选择添加手机照片的第一操作接口之后,用户可选择手机相册以及选择手机相册中需要上传的手机照片。图8d示出了本发明提供的选取上传的手机文件的示意图,如图8d所示,在用户选择添加手机文件的第一操作接口之后,用户可选择需要上传的手机文件。
[0089] 步骤S307,根据用户对第一操作接口的访问请求,手机向PC上传指定文件。
[0090] 本发明实施例中,手机向WiFi服务程序创建的指定端口上传文件。手机上传文件的具体方式与在PC下载文件的具体方式相同,在此不再赘述。
[0091] 上述实施例提供的是手机向PC上传文件的方法,根据该方法,用户可通过在手机的用户交互界面上进行操作向PC上传文件。该方法利用了通过WiFi设备创建的手机与PC之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。另外,由于文件的传输对数据的完整性以及数据传输可靠性有较高要求,所以本实施例也可通过基于http协议的请求消息和响应消息来完成文件的传输,保证了文件传输完整性和可靠性。进一步的,本实施例提供的手机与PC之间的通信方式需携带加密token,能防止token被窃取,提升了安全性。
[0092] 图9示出了根据本发明一个实施例的基于WiFi设备传输文件的系统结构框图。如图9所示,该系统包括:第一终端910、第二终端920和WiFi设备930,通过WiFi设备930第一终端910与第二终端920之间建立有通信连接。
[0093] 其中,第一终端910包括:操作接口提供模块911,适于提供用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;显示模块912,适于在用户交互界面中展现所提供的用于上传文件的第一操作接口和/或用于下载文件的第二操作接口;第一发送模块913,适于根据用户对第一操作接口的访问请求,向第二终端920上传第一终端保存的文件;
第一接收模块914,适于根据用户对第二操作接口的访问请求,接收从第二终端920下载的文件。
[0094] 第二终端920包括:第二接收模块921,适于接收第一终端910上传的文件;第二发送模块922,适于向第一终端910发送下载的文件。
[0095] 进一步的,操作接口提供模块911还适于:提供用于访问第二终端920的指定文件夹的第三操作接口;显示模块912还适于:在用户交互界面中展现所提供的用于访问第二终端920的指定文件夹的第三操作接口;第一发送模块913还适于:根据用户对第三操作接口的访问请求,向第二终端920发送用于访问第二终端920的指定文件夹的第一http请求消息;
[0096] 第二接收模块921还适于:接收所述第一终端910发送的所述第一http请求消息;第二终端920还包括:系统接口调用模块923,适于根据第一http请求消息调用第二终端920的操作系统提供的浏览指定文件夹的文件列表的接口,获取指定文件夹的文件列表;第二发送模块922还适于:向第一终端910发送携带有指定文件夹的文件列表的第一http响应消息;第一接收模块914还适于:接收第二终端920返回的第一http响应消息;显示模块912还适于:在用户交互界面中展现指定文件夹的文件列表。
[0097] 在上传文件时,操作接口提供模块911具体适于:提供用于向指定文件夹内添加文件的第一操作接口;显示模块912具体适于:在用户交互界面中展现用于向指定文件夹内添加文件的第一操作接口。
[0098] 在下载文件时,操作接口提供模块911具体适于:针对指定文件夹的文件列表中的每个文件,提供用于下载该文件的第二操作接口;显示模块912具体适于:在用户交互界面中根据用户的操作展现用于下载该文件的第二操作接口。
[0099] 具体的,第一发送模块913具体适于:根据用户对指定文件的第二操作接口的访问请求,连接到第二终端920的指定端口,向指定端口发送用于下载指定文件的第二http请求消息,第二http请求消息携带有指定文件的文件名;第二发送模块922具体适于:通过指定端口将文件名对应的指定文件传输给第一终端910。
[0100] 进一步的,第二发送模块922具体适于:通过指定端口将多个指定文件以至少一个线程且每个线程中队列的形式传输给第一终端910。
[0101] 进一步的,第二终端920还包括:内存映射模块924,适于当第二接收模块921接收到多个第一终端910发送的用于下载同一指定文件的第二http请求消息时,将指定文件加载到内存中,以供多个第一终端910从第二终端920的内存中下载指定文件。
[0102] 进一步的,第二终端920包括在WiFi设备930与第二终端920连接后所启动的WiFi服务程序,WiFi服务程序为dll文件,通过调用该dll文件可实现接收/发送指定协议消息、端口创建、数据处理、调用系统API等功能。上述第二接收模块921、系统接口调用模块923、内存映射模块924以及第二发送模块922均为通过调用WiFi服务程序而实现的功能模块。
[0103] 第一发送模块913还适于:向第二终端920中的WiFi服务程序发送登录消息;第二接收模块921还适于:接收登录消息;第二发送模块922还适于:根据登录消息,向第一终端910返回登录确认消息;第一接收模块914还适于:接收登录确认消息。
[0104] 第一发送模块913还适于:向第二终端920中的WiFi服务程序发送认证消息;第二接收模块921还适于:接收认证消息;第二终端920还包括:认证模块925,适于根据认证消息生成令牌;第二发送模块922还适于:向第一终端910返回携带有令牌的认证确认消息;第一接收模块914还适于:接收认证确认消息。其中,令牌为经过时间戳进行加密的字符串。可选地,上述第一、第二http请求消息和第一、第二http响应消息中均携带有令牌。
[0105] 根据本实施例提供的系统,在通过WiFi设备建立第一终端与第二终端之间的通信连接之后,用户通过对第一终端在用户交互界面中提供的第一操作接口和/或第二操作接口的访问请求,能够实现第一终端和第二终端之间的文件交互传输,该系统利用了通过WiFi设备创建的第一终端与第二终端之间的局域网的优势,为用户提供了一种在不同终端之间的传输文件的方便快捷的方式。另外,由于文件的传输对数据的完整性以及数据传输可靠性有较高要求,所以本系统通过基于http协议的请求消息和响应消息来完成文件的传输,保证了文件传输完整性和可靠性。进一步的,本系统提供的第一终端和第二终端之间的通信方式需携带加密token,能防止token被窃取,提升了安全性。
[0106] 在此提供的算法和显示不与任何特定计算机、虚拟系统或者其它设备固有相关。各种通用系统也可以与基于在此的示教一起使用。根据上面的描述,构造这类系统所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
[0107] 在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
[0108] 类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
[0109] 本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
[0110] 此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
[0111] 本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的基于WiFi设备传输文件的系统中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
[0112] 应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。