本发明实施例涉及计算机技术领域,尤其涉及一种文件显示方法、装置、存储介质及移动终端。
背景技术:
为了方便查看及管理移动终端上的文件,许多用户通常会将移动终端连接到个人电脑(personalcomputer,pc)等终端上,并在pc上进行相关操作。
目前,媒体传输协议(mediatransferprotocol,mtp)是现在最常见的一个媒体文件传输协议,由微软公司提出,支持mtp协议的电子设备能够基于mtp协议提供的接口进行媒体文件传输。mtp的应用分两种角色,一个是作为发起端initiator,如pc或笔记本等;另一个作为应答端responder,如手机或数码相机等。当电子设备通过mtp进行通信时,initiator的屏幕上能够显示responder中各存储目录中的文件夹及文件。然而,现在的移动终端的存储空间越来越大,使用的存储器从几年前的4g逐渐发展到如今的256g甚至更大,按摩尔定律的发展,不久以后将以t来计算存储空间了,随之而来的是存储数量庞大的文件,使现有的基于mtp的文件显示策略很难适应。
技术实现要素:
本发明实施例提供一种文件显示方法、装置、存储介质及移动终端,可以解决优化现有的基于mtp的文件显示方案。
第一方面,本发明实施例提供了一种文件显示方法,包括:
接收媒体传输协议mtp发起端发送的第一消息;
根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,其中,所述预设虚拟目录结构中包含预设分类的文件夹;
在接收到所述mtp发起端发送的针对所述预设虚拟目录结构的访问请求时,向所述mtp发起端反馈所述预设虚拟目录结构中的文件夹信息,以使所述mtp发起端显示相应的文件夹;
在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
第二方面,本发明实施例提供了一种文件显示装置,包括:
消息接收模块,用于接收媒体传输协议mtp发起端发送的第一消息;
访问接口反馈模块,用于根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,其中,所述预设虚拟目录结构中包含预设分类的文件夹;
文件夹信息反馈模块,用于在接收到所述mtp发起端发送的针对所述预设虚拟目录结构的访问请求时,向所述mtp发起端反馈所述预设虚拟目录结构中的文件夹信息,以使所述mtp发起端显示相应的文件夹;
文件句柄反馈模块,用于在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
第三方面,一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现本发明实施例提供的文件显示方法。
第四方面,本发明实施例提供了一种移动终端,包括存储器,处理器及存储在存储器上并可在处理器运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现本发明实施例提供的文件显示方法。
本发明实施例中提供的文件显示方案,在接收到mtp发起端发送的第一消息时,反馈mtp应答端的包含预设分类文件夹的预设虚拟目录结构的访问接口,并在接收到mtp发起端发送的针对预设虚拟目录结构的访问请求时,向mtp发起端反馈相应的文件夹信息,以使mtp发起端显示相应的文件夹,在接收到mtp发起端针对目标文件夹的访问请求时,获取相应的文件的文件句柄并反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。通过采用上述技术方案,可为用户提供预设分类的文件夹的快捷访问接口,方便用户快速访问到自己感兴趣的分类的文件,提高文件访问及显示的效率。
附图说明
图1为本发明实施例提供的一种文件显示方法的流程示意图;
图2为本发明实施例提供的一种mtp协议栈示意图;
图3为本发明实施例提供的一种mtp命令处理流程示意图;
图4为本发明实施例提供的一种文件显示方法的流程示意图;
图5为本发明实施例提供的一种文件显示装置的结构框图;
图6为本发明实施例提供的一种移动终端的结构示意图。
具体实施方式
下面结合附图并通过具体实施方式来进一步说明本发明的技术方案。可以理解的是,此处所描述的具体实施例仅仅用于解释本发明,而非对本发明的限定。另外还需要说明的是,为了便于描述,附图中仅示出了与本发明相关的部分而非全部结构。
在更加详细地讨论示例性实施例之前应当提到的是,一些示例性实施例被描述成作为流程图描绘的处理或方法。虽然流程图将各步骤描述成顺序的处理,但是其中的许多步骤可以被并行地、并发地或者同时实施。此外,各步骤的顺序可以被重新安排。当其操作完成时所述处理可以被终止,但是还可以具有未包括在附图中的附加步骤。所述处理可以对应于方法、函数、规程、子例程、子程序等等。
图1为本发明实施例提供的一种文件显示方法的流程示意图,该方法可以由文件显示装置执行,其中该装置可由软件和/或硬件实现,一般可集成在移动终端中。如图1所示,该方法包括:
步骤101、接收mtp发起端发送的第一消息。
示例性的,本实施例中的移动终端具体可为手机、智能手表、平板电脑、游戏机、个人数字助理和数字多媒体播放器等设备。
mtp的应用分两种角色,一个作为发起端initiator;另一个作为应答端responder。发起端和应答端之间通常可通过通用串行总线(universalserialbus,usb)进行连接。发起端通常指usbhost(主机),如pc或笔记本电脑等;应答端可以是本发明实施例中的移动终端。mtp协议规定所有mtp操作由initator发起,而responder在mtp中的作用包括处理initator发起的请求,同时,它还会根据自身状态的变化发送event(事件)以通知initator。
示例性的,所述第一消息可以是根据实际需求新增的一种用于显示本发明实施例所述的预设虚拟目录结构访问接口的消息,也可以是mtp中原有的消息,本发明实施例中不做具体限定,当mtp应答端接收到第一消息时,根据该第一消息进行响应。需要说明的是,当第一消息为mtp中原有的消息时,可更改mtp应答端原来的响应策略,以实现本发明实施例的后续步骤。
步骤102、根据所述第一消息向mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口。
其中,所述预设虚拟目录结构中包含预设分类的文件夹。
示例性的,预设分类可以由系统默认设置,也可由用户根据个人需求进行自主设置。例如,在接收mtp发起端发送的第一消息之前,还可包括:根据用户的设置操作对预设虚拟目录结构进行更改,所述设置操作包括增加、减少或修改所述预设虚拟目录结构中包含的预设分类的文件夹。
可选的,预设分类可以包括图片、视频、音频、文档、安装包、压缩包等以存储类型进行区分的分类;也可包括微信收发文件、qq收发文件以及邮件收发文件等以在mtp应答端中的实际的存储目录进行区分的分类;还可包括最近更改、最近访问以及文件大小等以文件属性进行区分的分类。预设分类还可以包括其他种分类,本发明实施例不做限定。可以理解的是,不同预设分类的文件夹所对应的文件可以发生重复,例如,图片a可同时对应于图片文件夹和微信收发文件夹,还可对应于最近更改文件夹。此外,还可对上述几种分类进行组合,例如,最近访问的图片等。
示例性的,访问接口可以是以盘符形式存在的接口,也可以是以文件夹形式存在的接口,还可以是以图标等形式存在的接口。可通过作用于访问接口的预设操作(如点击、长按或双击等形式的操作)来发起对访问接口对应的预设虚拟目录结构的访问请求。
优选的,在接收mtp发起端发送的第一消息之后,还可包括根据第一消息向mtp发起端反馈mtp应答端的存储目录结构的访问接口。存储目录结构可理解为实际的存储目录结构,在mtp应答端中,文件通常会有自己的存储逻辑,所有文件按照该存储逻辑进行存储。例如,大多数安卓android手机中的文件是以应用程序为单位进行存储的,同一个应用程序所涉及的文件通常存储在该应用程序所对应的文件目录下。而本发明实施例此处优化的好处在于,预设虚拟目录结构中通常包含的是用户常用的或者感兴趣的文件夹,一般不会涵盖所有文件,在提供预设虚拟目录结构的访问接口以外,还提供存储目录结构的访问接口,可为用户提供全面的文件访问途径,保证用户能够查看到所有文件。
进一步的,所述第一消息为盘符获取命令。根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,包括:根据所述盘符获取命令向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的第一盘符。根据所述第一消息向所述mtp发起端反馈mtp应答端的存储目录结构的访问接口,包括:根据所述盘符获取命令向所述mtp发起端反馈mtp应答端的存储目录结构的第二盘符,所述第二盘符与所述第一盘符不同。此处优化的好处在于,以盘符区分访问接口,可方便用户快速找到不同的访问接口。优选的,第一盘符的名称可以为“快速访问”、“快速展示”或“常用文件”等,为用户提供简单明快的提示。
优选的,所述第一盘符的访问权限为只读,剩余空间为0。这样设置的好处在于,避免用户对第一盘符内的文件进行操作而影响mtp应答端原有的存储目录结构,保证mtp应答端中文件存储的稳定性和安全性。
步骤103、在接收到mtp发起端发送的针对预设虚拟目录结构的访问请求时,向mtp发起端反馈预设虚拟目录结构中的文件夹信息,以使mtp发起端显示相应的文件夹。
示例性的,文件夹信息可以是文件夹名称,也可以是文件夹句柄。文件夹信息可以封装在数据包(package)中,将包含文件夹信息的数据包反馈至mtp发起端,mtp发起端通过解析该数据包,并显示与文件夹信息对应的文件夹。例如,预设虚拟目录结构中的文件夹信息包括图片、视频、音频、文档、安装包、压缩包、微信收发文件、qq收发文件、邮件收发文件和最近更改,则在mtp发起端的屏幕上可同时显示这些文件夹。
步骤104、在接收到mtp发起端针对所显示的目标文件夹的访问请求时,获取与目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给mtp发起端,以使mtp发起端显示相应的文件。
示例性的,可通过作用于目标文件夹的预设操作(如点击、长按或双击等形式的操作)来发起对目标文件夹对应的文件的访问请求。例如,用户双击图片文件夹时,mtp发起端会针对图片文件夹向mtp应答端发送访问请求,mtp应答端获取所有图片文件的文件句柄并反馈给mtp发起端,则在mtp发起端的屏幕上可以显示所有图片文件。
本发明实施例中提供的文件显示方法,在接收到mtp发起端发送的第一消息时,反馈mtp应答端的包含预设分类文件夹的预设虚拟目录结构的访问接口,并在接收到mtp发起端发送的针对预设虚拟目录结构的访问请求时,向mtp发起端反馈相应的文件夹信息,以使mtp发起端显示相应的文件夹。通过采用上述技术方案,可为用户提供预设分类的文件夹的快捷访问接口,方便用户快速访问到自己感兴趣的分类的文件,提高文件访问及显示的效率。
在上述实施例的基础上,在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件可包括以下任意一种或多种:
1、在接收到所述mtp发起端针对所显示的第一文件夹的访问请求时,获取所述第一文件夹对应的文件类型;在所述mtp应答端的存储目录结构中查找与所述文件类型相匹配的文件,并将所查找到的文件对应的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。文件类型可包括图片、视频、音频、文档、安装包、压缩包等。示例性的,以文件类型为图片为例,可通过图片文件的扩展名(如.jpg,.bmp,.gif,.jpeg以及.giff等)在存储目录结构中进行查找。
2、在接收到所述mtp发起端针对所显示的第二文件夹的访问请求时,获取所述第二文件夹在所述mtp应答端的存储目录结构中对应的存储路径;获取所述存储路径中包含的文件的文件句柄,并将所获取到的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。以微信收发文件为例,此类文件通常存储在微信应用程序对应的目录下,但往往存在文件夹嵌套的情况,因此,用户在存储目录结构中查找微信收发文件时会非常麻烦,往往需要打开多个文件夹或多层文件夹才能找到,费时费力,而本发明实施例中可将预设虚拟目录结构中的第二文件夹与文件在存储目录结构中对应的存储路径建立关联,从而当用户访问第二文件夹时,mtp应答端可直接到相应的存储路径中找到文件并获取文件句柄反馈给mtp发起端,即直接获取微信收发文件在存储目录结构中的存储路径并获取文件句柄反馈给mtp发起端,从而实现快速查看微信收发文件。
3、在接收到所述mtp发起端针对所显示的第三文件夹的访问请求时,获取所述第三文件夹对应的文件属性的预设范围,所述文件属性包括修改时间、访问时间或文件大小;在所述mtp应答端的存储目录结构中查找与所述预设范围相匹配的文件,并将所查找到的文件对应的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。其中,预设范围可以是文件数目范围,可以是时间的起始和结束范围,还可以是文件大小的数值范围等。例如,文件数目范围是10,文件属性为修改时间时,可显示最近修改的10个文件。又如时间的起始和结束范围为24小时内,文件属性为访问时间,则可显示最近24小时内访问过的文件。再如文件大小的数值范围为500m以上,文件属性为文件大小,则可显示所有容量大小在500m以上的文件,方便用户集中查看占用存储空间较多的文件。
以上提供了显示三种不同类型的文件夹的具体方式,可根据各自的特点选择获取文件句柄的方式,从而达到显示不同类型文件夹所对应的文件的目的。
为了加强对本发明实施例的理解,下面以mtp发起端为pc,mtp应答端为智能手机为例进行进一步的说明。其中,智能手机可以是装载android操作系统的手机。
首先,对mtp协议栈进行介绍,图2为本发明实施例提供的一种mtp协议栈示意图,mtp协议栈由下到上分别是物理层、传输层和命令层。
pyshicallayer(物理层):物理层在mtp协议中用来传输数据。目前有三种物理层可供mtp使用。它们分别是usb、网际协议(internetprotocol,ip)和蓝牙(bluetooth,bt)。usb的主要特点是传输文件及同步媒体文件时速度快,而且可以边工作边充电,这是目前用的最多的一种方式;基于ip的mtp(简称mtp/ip)将通过upnp来匹配和发现设备,它是家庭网络中较理想的传输方式;bluetooth即mtp/bt比较省电,但同时也是速度最慢的一种传输方式,应用较少。因此,本发明实施例优选采用usb方式。
传输层:在mtp中,数据传输格式遵循图片传输协议(picturetransferprotocol,ptp)(usbstillimageclass,描述usb静态图像捕捉行为)。
命令层:实现了mtp协议中的各种命令,具体可参见mtpspec中的相关描述。
mtp采用命令-应答方式来工作(initator发送命令给responder处理,responser反馈处理结果),这种方式的主要特点有:所有mtp命令均以package(数据包)的方式在设备两端进行传递。initiator必须接收到前一条消息的处理结果(不论是成功还是超时)后,才能发送下一条消息。
以pc通过mtp打开一个文件为例,图3为本发明实施例提供的一种mtp命令处理流程示意图,默认的mtp命令处理流程为:手机端mtp启动后,mtpserver.cpp中的mtpserver::run()会通过read()不断地从"/dev/mtp_usb"中读取出"pc发来的消息"。read()在读取到pc来的消息之后,会交给mtpserver::handlerequest()进行处理。根据"pc读取文件内容"的消息的id做不同的处理,常用的id包括:
mtp_operation_get_device_info
mtp_operation_open_session
mtp_operation_close_session
mtp_operation_get_storage_ids
mtp_operation_get_storage_info
mtp_operation_get_num_objects
mtp_operation_get_object_handles
mtp_operation_get_object_info
mtp_operation_get_object
在打开文件流程中,图3中的"pc读取文件内容"的消息的id是mtp_operation_get_object;因此,它会通过dogetobject()进行处理,dogetobject()会调用getobjectfilepath(),getobjectfilepath()会从mediaprovider的数据库mtpdatabase.java中查找相应的文件,最后通过ioctl()完成文件内容的传递。
下面对pc和手机之间的交互进行简单介绍:
(1)当手机第一次连接上pc后,initiator(即pc)首先会发送一个名为getdeviceinfo的请求以获取手机的信息,这些信息包括手机所支持ptp版本的程度,以百分号表示(默认是100)、所支持的mtp命令(operationsupported)以及所支持的event类型等。
(2)pc端会发送opensession命令以创建一个会话,该会话一直保持到手机从pc上断开为止。此后所有命令(除getdeviceinfo命令外)必须在此会话存活期间才能发送。会话在mtp协议中由sessionid来标识,它是一个32位的无符号整型,由pc选择并传给手机。
(3)pc端需要通过getstorageids命令返回某个盘符对应的storageid。在mtp中,storageid是一个32位无符号整型,每一个storageid代表了一个逻辑盘符。pc端可以根据上一步的storageid号,利用getstorageinfo操作去获取存储设备的信息,例如剩余存储空间、文件系统类型和访问权限等。
(4)pc通过getobjecthandles命令来获取此盘符下的文件和子目录的句柄objecthandles(一个objecthandle代表一个文件或目录。该值由responder生成并保证唯一性)。
(5)pc通过sendobjectinfo命令将文件信息(如文件名及文件大小)等传递给手机。手机需要检查目标目录是否有足够的空间和对应权限。如果一切正常,pc将通过sendobject把数据传递给手机。真正写文件到设备存储空间的则是手机中的responder。
(6)手机在媒体文件传输完毕后,将信息更新到媒体数据库中。
本发明实施例中,为了实现快速浏览的目的,主要在命令层进行改进。
针对上述的(3),当手机收到mtp_operation_get_num_objects时候,手机端处理的时候,将当前手机内的storage总数加一,即多返回一个用于快速展示的storage。即手机原有的storage对应的盘符为本发明实施例中所述的第二盘符(数目不限),而用于快速展示的storage对应的盘符为本发明实施例中所述的第一盘符(一般为1个)。
当手机收到mtp_operation_get_storage_ids和mtp_operation_get_storage_info时候,手机端解析,如果pc端想访问的是快速展示的storage的id(即第一盘符),返回虚拟的快速展示storage的信息:访问权限为只读,剩余空间为0,名称为“快速访问”或者“常用文件”等表明快速展示的存储名称。
针对上述的(4)当手机收到访问请求mtp_operation_get_object,当前会话访问的是快速展示的storage的id,如果是访问的根目录(即针对第一盘符的访问),返回当前虚拟目录结构:图片、视频、文档、音频、安装包、压缩包、最新更改的文件、微信收发文件、qq收发文件和邮件收发文件。该虚拟目录结构支持用户编辑,用户可以增加目录名称和对应的文件类型或者目录,最近更改的文件,并支持用户修改显示个数。
当手机收到访问请求mtp_operation_get_object_handles,当前会话访问的是快速展示的storage的id,如果是访问的目录是图片,在手机的媒体库中查寻所有的图片,并将查寻结果的句柄反馈给pc。如果访问的是视频、文档、音频、安装包、压缩包,改变对应的数据库查寻关键字即可。
当手机收到访问请求mtp_operation_get_object_handles,当前会话访问的是快速展示的storage的id,如果是访问的目录是微信收发文件、qq收发文件、邮件收发文件等,将对应的实际文件目录的句柄反馈给pc。
当手机收到访问请求mtp_operation_get_object_handles,当前会话访问的是快速展示的storage的id,如果是访问的目录是最近更改的文档,根据用户设置的显示个数,在手机的媒体库中查寻最近修改的文件,并将查寻结果的句柄反馈给pc。
图4为本发明实施例提供的一种文件显示方法的流程示意图,图4中示出了本发明实施例中的mtp发起端和mtp应答端之间的交互过程。
步骤401、mtp发起端在检测到与mtp应答端建立连接后,向mtp应答端发送设备信息获取请求。
步骤402、mtp应答端向mtp发起端反馈设备信息。
步骤403、mtp发起端创建会话,并向mtp应答端发送盘符获取命令。
步骤404、mtp应答端向mtp发起端反馈预设虚拟目录结构的第一盘符和存储目录结构的第二盘符。
步骤405、mtp发起端在屏幕上显示第一盘符和第二盘符,在检测到用户双击第一盘符时,向mtp应答端发送针对预设虚拟目录结构的第一访问请求。
需要说明的是,用户也可通过双击第二盘符来访问其中的文件或文件夹。本发明实施例以双击为例,但不限于双击的方式,还可以有其他方式。
步骤406、mtp应答端根据第一访问请求向mtp发起端反馈预设虚拟目录结构中的文件夹信息。
步骤407、mtp发起端根据该文件夹信息显示预设虚拟目录结构对应的所有文件夹,在检测到用户双击目标文件夹时,向mtp应答端发送针对目标文件夹的第二访问请求。
步骤408、mtp应答端根据第二访问请求获取相应的文件句柄并反馈给mtp发起端。
步骤409、mtp发起端根据接收到的文件句柄显示相应的文件。
由以上内容可以看出,本发明实施例可通过增加在mtp发起端显示的盘符的方式,来显示预设虚拟目录结构中的文件夹及文件,从而提供更加友好的展示,让用户能够快速找到文件,提高文件访问效率,同时不影响原来的存储目录结构。
图5为本发明实施例提供的一种文件显示装置的结构框图,该装置可由软件和/或硬件实现,一般集成在移动终端中,可通过执行文件显示方法来进行文件显示。如图5所示,该装置包括:
消息接收模块501,用于接收媒体传输协议mtp发起端发送的第一消息;
访问接口反馈模块502,用于根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,其中,所述预设虚拟目录结构中包含预设分类的文件夹;
文件夹信息反馈模块503,用于在接收到所述mtp发起端发送的针对所述预设虚拟目录结构的访问请求时,向所述mtp发起端反馈所述预设虚拟目录结构中的文件夹信息,以使所述mtp发起端显示相应的文件夹;
文件句柄反馈模块504,用于在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
本发明实施例提供的文件显示装置,可为用户提供预设分类的文件夹的快捷访问接口,方便用户快速访问到自己感兴趣的分类的文件,提高文件访问及显示的效率。
可选的,所述访问接口反馈模块还用于在接收mtp发起端发送的第一消息之后,根据所述第一消息向所述mtp发起端反馈mtp应答端的存储目录结构的访问接口。
可选的,所述第一消息为盘符获取命令;
所述访问接口反馈模块具体用于:根据所述盘符获取命令向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的第一盘符;根据所述盘符获取命令向所述mtp发起端反馈mtp应答端的存储目录结构的第二盘符,所述第二盘符与所述第一盘符不同。
可选的,所述文件句柄反馈模块用于:
在接收到所述mtp发起端针对所显示的第一文件夹的访问请求时,获取所述第一文件夹对应的文件类型;在所述mtp应答端的存储目录结构中查找与所述文件类型相匹配的文件,并将所查找到的文件对应的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件;或,
在接收到所述mtp发起端针对所显示的第二文件夹的访问请求时,获取所述第二文件夹在所述mtp应答端的存储目录结构中对应的存储路径;获取所述存储路径中包含的文件的文件句柄,并将所获取到的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件;或,
在接收到所述mtp发起端针对所显示的第三文件夹的访问请求时,获取所述第三文件夹对应的文件属性的预设范围,所述文件属性包括修改时间、访问时间或文件大小;在所述mtp应答端的存储目录结构中查找与所述预设范围相匹配的文件,并将所查找到的文件对应的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
可选的,该装置还包括:
结构更改模块,用于在接收mtp发起端发送的第一消息之前,根据用户的设置操作对预设虚拟目录结构进行更改,所述设置操作包括增加、减少或修改所述预设虚拟目录结构中包含的预设分类的文件夹。
本发明实施例还提供一种包含计算机可执行指令的存储介质,所述计算机可执行指令在由计算机处理器执行时用于执行一种文件显示方法,该方法包括:
接收媒体传输协议mtp发起端发送的第一消息;
根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,其中,所述预设虚拟目录结构中包含预设分类的文件夹;
在接收到所述mtp发起端发送的针对所述预设虚拟目录结构的访问请求时,向所述mtp发起端反馈所述预设虚拟目录结构中的文件夹信息,以使所述mtp发起端显示相应的文件夹;
在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
存储介质——任何的各种类型的存储器设备或存储设备。术语“存储介质”旨在包括:安装介质,例如cd-rom、软盘或磁带装置;计算机系统存储器或随机存取存储器,诸如dram、ddrram、sram、edoram,兰巴斯(rambus)ram等;非易失性存储器,诸如闪存、磁介质(例如硬盘或光存储);寄存器或其它相似类型的存储器元件等。存储介质可以还包括其它类型的存储器或其组合。另外,存储介质可以位于程序在其中被执行的第一计算机系统中,或者可以位于不同的第二计算机系统中,第二计算机系统通过网络(诸如因特网)连接到第一计算机系统。第二计算机系统可以提供程序指令给第一计算机用于执行。术语“存储介质”可以包括可以驻留在不同位置中(例如在通过网络连接的不同计算机系统中)的两个或更多存储介质。存储介质可以存储可由一个或多个处理器执行的程序指令(例如具体实现为计算机程序)。
当然,本发明实施例所提供的一种包含计算机可执行指令的存储介质,其计算机可执行指令不限于如上所述的文件显示方法操作,还可以执行本发明任意实施例所提供的文件显示方法中的相关操作。
本发明实施例提供了一种移动终端,该移动终端中可集成本发明实施例提供的移动终端的信息获取装置。图6为本发明实施例提供的一种移动终端的结构示意图。如图6所示,该移动终端可以包括:壳体(图中未示出)、存储器601、中央处理器(centralprocessingunit,cpu)602(又称处理器,以下简称cpu)、电路板(图中未示出)和电源电路(图中未示出)。所述电路板安置在所述壳体围成的空间内部;所述cpu602和所述存储器601设置在所述电路板上;所述电源电路,用于为所述移动终端的各个电路或器件供电;所述存储器601,用于存储可执行程序代码;所述cpu602通过读取所述存储器601中存储的可执行程序代码来运行与所述可执行程序代码对应的计算机程序,以实现以下步骤:
接收媒体传输协议mtp发起端发送的第一消息;
根据所述第一消息向所述mtp发起端反馈mtp应答端的预设虚拟目录结构的访问接口,其中,所述预设虚拟目录结构中包含预设分类的文件夹;
在接收到所述mtp发起端发送的针对所述预设虚拟目录结构的访问请求时,向所述mtp发起端反馈所述预设虚拟目录结构中的文件夹信息,以使所述mtp发起端显示相应的文件夹;
在接收到所述mtp发起端针对所显示的目标文件夹的访问请求时,获取与所述目标文件夹相对应的文件的文件句柄,将所获取的文件句柄反馈给所述mtp发起端,以使所述mtp发起端显示相应的文件。
所述移动终端还包括:外设接口603、rf(radiofrequency,射频)电路605、音频电路606、扬声器611、电源管理芯片608、输入/输出(i/o)子系统609、触摸屏612、其他输入/控制设备610以及外部端口604,这些部件通过一个或多个通信总线或信号线607来通信。
应该理解的是,图示移动终端600仅仅是移动终端的一个范例,并且移动终端600可以具有比图中所示出的更多的或者更少的部件,可以组合两个或更多的部件,或者可以具有不同的部件配置。图中所示出的各种部件可以在包括一个或多个信号处理和/或专用集成电路在内的硬件、软件、或硬件和软件的组合中实现。
下面就本实施例提供的用于触摸操作处理的移动终端进行详细的描述,该移动终端以手机为例。
存储器601,所述存储器601可以被cpu602、外设接口603等访问,所述存储器601可以包括高速随机存取存储器,还可以包括非易失性存储器,例如一个或多个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
外设接口603,所述外设接口603可以将设备的输入和输出外设连接到cpu602和存储器601。
i/o子系统609,所述i/o子系统609可以将设备上的输入输出外设,例如触摸屏612和其他输入/控制设备610,连接到外设接口603。i/o子系统609可以包括显示控制器6091和用于控制其他输入/控制设备610的一个或多个输入控制器6092。其中,一个或多个输入控制器6092从其他输入/控制设备610接收电信号或者向其他输入/控制设备610发送电信号,其他输入/控制设备610可以包括物理按钮(按压按钮、摇臂按钮等)、拨号盘、滑动开关、操纵杆、点击滚轮。值得说明的是,输入控制器6092可以与以下任一个连接:键盘、红外端口、usb接口以及诸如鼠标的指示设备。
触摸屏612,所述触摸屏612是用户移动终端与用户之间的输入接口和输出接口,将可视输出显示给用户,可视输出可以包括图形、文本、图标、视频等。
i/o子系统609中的显示控制器6091从触摸屏612接收电信号或者向触摸屏612发送电信号。触摸屏612检测触摸屏上的接触,显示控制器6091将检测到的接触转换为与显示在触摸屏612上的用户界面对象的交互,即实现人机交互,显示在触摸屏612上的用户界面对象可以是运行游戏的图标、联网到相应网络的图标等。值得说明的是,设备还可以包括光鼠,光鼠是不显示可视输出的触摸敏感表面,或者是由触摸屏形成的触摸敏感表面的延伸。
rf电路605,主要用于建立手机与无线网络(即网络侧)的通信,实现手机与无线网络的数据接收和发送。例如收发短信息、电子邮件等。具体地,rf电路605接收并发送rf信号,rf信号也称为电磁信号,rf电路605将电信号转换为电磁信号或将电磁信号转换为电信号,并且通过该电磁信号与通信网络以及其他设备进行通信。rf电路605可以包括用于执行这些功能的已知电路,其包括但不限于天线系统、rf收发机、一个或多个放大器、调谐器、一个或多个振荡器、数字信号处理器、codec(coder-decoder,编译码器)芯片组、用户标识模块(subscriberidentitymodule,sim)等等。
音频电路606,主要用于从外设接口603接收音频数据,将该音频数据转换为电信号,并且将该电信号发送给扬声器611。
扬声器611,用于将手机通过rf电路605从无线网络接收的语音信号,还原为声音并向用户播放该声音。
电源管理芯片608,用于为cpu602、i/o子系统及外设接口所连接的硬件进行供电及电源管理。
本发明实施例提供的移动终端,可为用户提供预设分类的文件夹的快捷访问接口,方便用户快速访问到自己感兴趣的分类的文件,提高文件访问及显示的效率。
上述实施例中提供的文件显示装置、计算机可读存储介质及移动终端可执行本发明任意实施例所提供的文件显示方法,具备执行该方法相应的功能模块和有益效果。未在上述实施例中详尽描述的技术细节,可参见本发明任意实施例所提供的文件显示方法。
注意,上述仅为本发明的较佳实施例及所运用技术原理。本领域技术人员会理解,本发明不限于这里所述的特定实施例,对本领域技术人员来说能够进行各种明显的变化、重新调整和替代而不会脱离本发明的保护范围。因此,虽然通过以上实施例对本发明进行了较为详细的说明,但是本发明不仅仅限于以上实施例,在不脱离本发明构思的情况下,还可以包括更多其他等效实施例,而本发明的范围由所附的权利要求范围决定。