CN103562908B - 利用不同文件宿主实现文件访问的方法和计算设备 - Google Patents

利用不同文件宿主实现文件访问的方法和计算设备 Download PDF

Info

Publication number
CN103562908B
CN103562908B CN201180071198.7A CN201180071198A CN103562908B CN 103562908 B CN103562908 B CN 103562908B CN 201180071198 A CN201180071198 A CN 201180071198A CN 103562908 B CN103562908 B CN 103562908B
Authority
CN
China
Prior art keywords
file
host
application
user interface
computing device
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201180071198.7A
Other languages
English (en)
Other versions
CN103562908A (zh
Inventor
S.D.霍格维尔夫
D.C.菲尔兹
M.J.吉尔摩尔
R.A.埃贝林
S.J.鲍尔
M.米什拉
T.K.比姆
R.H.廖
B.J.卡拉斯
M.P.迪南
J.哈里斯
R.J.怀特
L.王
D.L.戴维斯
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN103562908A publication Critical patent/CN103562908A/zh
Application granted granted Critical
Publication of CN103562908B publication Critical patent/CN103562908B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/13File access structures, e.g. distributed indices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/0292User address space allocation, e.g. contiguous or non contiguous base addressing using tables or multilevel address translation means
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/168Details of user interfaces specifically adapted to file systems, e.g. browsing and visualisation, 2d or 3d GUIs
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F17/00Digital computing or data processing equipment or methods, specially adapted for specific functions
    • G06F17/10Complex mathematical operations
    • G06F17/18Complex mathematical operations for evaluating statistical data, e.g. average values, frequency distributions, probability functions, regression analysis
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04842Selection of displayed objects or displayed text elements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Data Mining & Analysis (AREA)
  • Human Computer Interaction (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Pure & Applied Mathematics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Operations Research (AREA)
  • Probability & Statistics with Applications (AREA)
  • Evolutionary Biology (AREA)
  • Algebra (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
  • Information Transfer Between Computers (AREA)
  • Stored Programmes (AREA)

Abstract

从应用接收文件访问请求。标识出所述文件访问请求的一个或多个文件类型,并且还标识出支持所标识出的一个或多个文件类型的文件的一个或多个文件宿主。显示用户界面,该用户界面包括托管区。在该托管区内,所述一个或多个文件宿主中的至少一个显示所述用户界面的一部分,该部分标识出能够被选择来供获取的至少一个文件宿主的一个或多个文件或者所述一个或多个文件被保存在其中的能够被选择的一个或多个位置。

Description

利用不同文件宿主实现文件访问的方法和计算设备
背景技术
用户常常对多种不同文件感兴趣,比如文档文件、图像文件、音乐文件、视频文件等等。这些文件可以被存储在各种存储设备上,比如用户计算机的硬驱动器上或者网络上的服务器上。然而,对于用户,跟踪跨这样的存储设备的这些文件可能是麻烦的,常常需要用户从他或她期望利用其来使用文件的各个应用访问那些各不相同的存储设备,并且需要用户记住哪些存储设备具有哪些文件。
发明内容
本发明内容被提供来以简要形式介绍概念的选择,以下将在具体实施方式中对这些概念进行进一步的描述。本发明内容既不是旨在标识所要求保护主题的关键特征或必要特征,也不是旨在被用来限制所要求保护主题的范围。
根据一个或多个方面,从应用接收文件访问请求。标识出文件访问请求的一个或多个文件类型,并且还标识出支持所标识出的一个或多个文件类型的文件的一个或多个文件宿主。显示用户界面,该用户界面包括托管区。在该托管区内,所述一个或多个文件宿主中的至少一个显示用户界面的一部分,该部分标识出能够被选择来供获取的、所述至少一个文件宿主的一个或多个文件。
根据一个或多个方面,从应用接收文件访问请求。标识出要由该应用保存的文件的文件类型,并且还标识出支持所标识出的文件类型的文件的一个或多个文件宿主。显示用户界面,该用户界面包括托管区。在该托管区内,所述一个或多个文件宿主中的至少一个显示允许所述至少一个文件宿主保存文件的、用户界面的一部分。
附图说明
将参照附图描述具体实施方式。在附图中,附图标记最左侧的(多个)数字标识该附图标记最先出现的图。在说明书和附图中,不同实例中的相同附图标记的使用可以表示相似或相同的项目。
图1图示出根据一个或多个实施例的实施了这里所讨论的利用了不同文件宿主技术的文件访问的示例系统。
图2图示出根据一个或多个实施例的实施了这里所讨论的利用了不同文件宿主技术的文件访问的另一示例系统。
图3、4、5和6中的每一个描述了根据一个或多个实施例的、使用了这里所讨论的利用了不同宿主技术的文件访问来显示的示例用户界面。
图7图示出根据一个或多个实施例的实施了利用不同文件宿主的文件访问的示例过程。
图8图示出根据一个或多个实施例的实施了利用不同文件宿主的文件访问的另一示例过程。
具体实施方式
概述
这里讨论利用了不同文件宿主的文件访问。当使用应用时,用户可以获取由诸如文件系统、其他应用、服务提供者等各种不同的文件宿主所保持的文件。类似地,用户可以将文件保存到各种不同的文件宿主。显示具有托管区的用户界面(UI),并且各种不同的文件宿主可以在该托管区内显示用户界面。每个文件宿主可以按照文件宿主所期望的那样在该托管区内裁剪该显示。通过与该托管区中显示的用户界面交互,用户可以将来自各种不同文件宿主的供获取的文件选择到他或她正使用的应用中,和/或选择文件要被保存到的目的地文件宿主。
在以下讨论中,首先描述了可操作来执行这里所描述的技术的示例系统。然后,描述了可在所述示例系统和其他系统中操作的示例过程。同样,示例系统不限于该示例过程的执行。
示例系统
图1图示出根据一个或多个实施例的实施这里所讨论的利用了不同文件宿主技术的文件访问的示例系统100。所图示系统100包括可以按照多种方式来配置的计算设备102。例如,计算设备102可以被配置为能够在网络104上进行通信的计算机,比如桌面型计算机、平板或笔记本计算机、移动站、娱乐器械、在通信上耦合至显示设备的机顶盒、电视或其他显示设备、蜂窝或其他无线电话、游戏控制台、等等。
计算设备102的范围可以从具有丰富的存储器和处理器资源的全资源设备(例如,个人计算机、游戏控制台)到具有有限存储器和/或处理资源的短缺资源设备(例如,传统机顶盒、手持式游戏控制台)。附加地,虽然示出了单个计算设备102,但是计算设备102可以代表多个不同设备,比如,由企业用来执行操作的多个服务器、遥控器和机顶盒组合、图像捕获设备(例如,照相机)和被配置来捕获手势的游戏控制台、等等。
计算设备102还可以包括使得计算设备102的硬件执行操作(例如,配置处理器、功能块等)的实体(例如,软件)。例如,计算设备102可以包括计算机可读介质,该计算机可读介质可以被配置来保持使得计算设备更具体地计算设备102的硬件执行操作的指令。因此,所述指令用于配置执行操作的硬件,并且按照这种方式导致所述执行操作的硬件的变换。可以由计算机可读介质通过多种不同配置向计算设备102提供指令。
一种这样的计算机可读介质配置是信号承载介质,因此被配置为比如经由网络104向计算设备的硬件传送指令(例如,像载波一样)。计算机可读介质还可以被配置为计算机可读存储介质,因此其不是信号承载介质。计算机可读存储介质的示例包括随机存取存储器(RAM)、只读存储器(ROM)、光盘(例如,DVD或CD)、闪存、硬盘存储器和可以使用磁、光学和其他技术来存储指令和其他数据的其他存储器设备。
网络104可以采取多种不同配置。例如,网络104可以包括因特网、广域网(WAN)、局域网(LAN)、个域网(PAN)、无线网络、公共电话网络、内联网、其组合等等。此外,虽然示出了单个网络104,但是网络104可以被配置成包括多个网络。
计算设备102被图示为包括文件管理模块106。文件管理模块106代表用于管理对一个或多个文件(包括文件系统108中的文件)的访问的功能。可以以多种方式实施文件管理模块106,比如,实施成独立应用、计算设备102的操作系统的一部分、结合操作系统执行的应用等等。
文件系统108采用用于通过计算设备102组织并且存储文件110的技术。文件系统108例如可以采用文件夹的层级结构来管理存储装置中的文件110(例如,可执行文件和/或库文件)。可以被文件管理模块106和文件系统108采用的多种其他文件管理技术被考虑。附加地,可以使用文件管理模块106来管理多种不同类型的文件110。例如,文件110可以是文本(文档)文件、图像文件、视频文件、音频文件、其组合等。
应用112是在计算设备102上运行的一个或多个程序、脚本、或其他指令集合。应用112可以采取多种不同配置,比如,娱乐应用(例如,游戏或音频/视频播放器)、实用应用(例如,word处理器或Web浏览器)、参考应用(例如,词典或百科全书)等。应用112可以是在计算设备102上运行并且可以被存储为文件110的一个或多个程序、脚本、或其他指令集合。可替换地,应用112可以是从远程服务(例如,经由网络104)下载且在计算设备102上运行而未被存储为文件110的一个或多个程序、脚本、或其他指令集合。或者,应用112可以是在远程服务上运行的一个或多个程序、脚本、或其他指令集合,其中,用户界面由该远程服务生成并且(例如,经由网络104)提供给计算设备102用于显示,以及在计算设备102处接收的输入(例如,经由网络104)返回给该远程服务用于处理。
在一个或多个实施例中,应用112是隔离应用,其运行的方式是,应用112访问计算设备102的资源(例如,联网计算机、因特网、模块、设备、存储器、其他应用)的能力受限。计算设备102的操作系统(和/或其他软件、固件和/或硬件)允许隔离应用访问已经被分配该隔离应用或者以其他方式使得其可被该隔离应用使用的、计算设备102的存储器和其他资源,但是阻止该隔离应用访问计算设备102的其他存储器、资源、和/或在计算设备102上运行的应用。这保护在计算设备102上运行的其他应用免于受到隔离应用的干扰,也保护该隔离应用免于受到在计算设备102上运行的其他应用的干扰,从而将该应用与在计算设备102上的其他应用隔离。
在一个或多个实施例中,应用112通过在沙盒中运行而以受限的方式运行。虽然在计算设备102中图示出单个应用112,但是应该注意的是,可以在计算设备102中并发地运行多个应用(每个应用在其自身的沙盒中执行)。
文件管理模块106还被图示为包括代理器模块114和挑选器模块116。代理器模块114代表文件管理模块106的用于管理应用112对各种不同文件宿主(比如,文件系统108、其他应用、服务提供者等)的访问的功能。代理器模块114例如可以充当用于查找应用112所请求的文件并返回向应用112提供那些文件的中介。此外,这样的文件可以被提供给应用112,而应用112无需知道获得文件的地点(例如,文件系统108所使用的命名空间、宿主等)。例如,代理器模块114可以用作抽象层,该抽象层将应用112与关于各种不同文件宿主和那些文件宿主存储文件的方式的具体细节隔离。
附加地,代理器模块114可以采用挑选器模块116来配置用户界面,使得用户可以从各种不同的文件宿主选择文件。挑选器模块116包括UI模块122,该UI模块122酌情管理与文件宿主的通信,包括管理远程访问(例如,经由网络104与服务提供者120的)。UI模块122还基于与其他文件宿主的通信来管理用户界面的至少一部分。例如,UI模块122可以配置用户界面的一部分,使得用户可以选择可经由网络104上的(例如,使用一个或多个计算设备实施的)服务提供者120访问的远程文件,选择由服务提供者120的应用管理的远程文件,选择由计算设备102上的其他应用管理的文件,等等。
诸如应用112和挑选器模块116之类的计算设备102的各种不同模块和应用可以从计算设备102的用户接收用户输入。这些用户输入可以提供数据、用户选择等。可以以多种不同方式提供用户输入,比如,通过按压设备102的键区或键盘的一个或多个按键,按压设备102的控制器(例如,遥控设备、鼠标、轨迹板等)的一个或多个按键,按压设备102的触摸板或触摸屏的特定部分,在设备102的触摸板或触摸屏上做出特定手势,和/或在设备102的控制器(例如,遥控设备、鼠标、轨迹板等)上做出特定手势。也可以经由其他物理反馈输入向设备102提供用户输入,比如,轻敲设备102的任何部分、可以被设备102的运动检测组件认出的动作(比如,摇动设备102、旋转设备102等)等等。也可以以其他方式提供用户输入,比如,经由针对麦克风的可听输入、经由图像捕获设备所观察到的手或其他身体部位的运动、等等。
一般而言,可以使用软件、固件、硬件(例如,固定逻辑电路)、人工处理或这些实施方式的组合来实施这里所描述的任何功能。如这里所使用的术语“模块”和“功能”一般表示硬件、软件、固件或其组合。在软件实施方式的情况下,模块、功能或逻辑表示指令和执行由硬件规定的操作的硬件,比如,一个或多个处理器和/或功能块。
图2图示出根据一个或多个实施例的实施这里所讨论的利用了不同文件宿主技术的文件访问的示例系统200。可以由用于执行文件管理技术的图1的计算设备102的文件管理模块106部分地实施所图示的系统200。
所图示的系统200包括应用202(其可以例如是图1的应用112)、代理器模块114、挑选器模块116和一个或多个文件宿主204。在该示例中,应用202经由代理器模块114所暴露的一个或多个应用编程接口(API)与代理器模块114通信,以访问文件宿主204。虽然图2中图示出单个应用202和特定文件宿主204,但是应该注意的是,系统200可以包括访问任何数量的文件宿主204的任何数量的应用202。
在一个或多个实施例中,应用202被允许访问文件宿主204而无需知道特定文件被文件宿主204布置、组织、保持等在哪里和/或特定文件被文件宿主204如何布置、组织、保持等。例如,应用202可以不知道文件宿主204用于访问文件的命名空间或数据模型。因此,代理器模块114可以将经由API接收的来自应用202的请求转换为可理解来查找感兴趣的文件的形式。
在其他实施例中,可以使得应用202知道,在特定文件宿主204内,文件被布置和安置在哪里,和/或文件被如何布置和安置。例如,应用202可以被配置成使用本地文件系统212所支持的命名空间,使得代理器模块114不执行请求的转换。多种其他示例也被考虑,比如,对于特定应用,允许直接访问本地文件系统212而不用与代理器模块114进行交互(在这种情况下,可以经由不同于以下讨论的用户界面206的其他用户界面访问文件)。
挑选器模块116呈现用户界面206,以促进用户选择供获取的文件和/或用于保存文件的目的地。用户界面206允许从各种不同的文件宿主获取文件和/或将文件保存到各种不同的文件宿主。例如,用户界面206可以包括其中显示了由文件宿主204生成的用户界面的托管区。
代理器模块114和挑选器模块116充当应用202与文件宿主204之间的中介。应用202可以不知道文件宿主204,并且文件宿主可以不知道应用202。附加地,由挑选器模块116提供包括托管区的用户界面206,在该托管区中,文件宿主204可以显示用户界面的一部分。因此,应用202可以在任何给定时刻都不知道在该托管部分中显示用户界面的特定文件宿主,也可以不知道从其访问文件的特定文件宿主204(例如,从其获取了文件和/或将文件保存到其中的那个文件宿主204)。
代理器模块114和/或挑选器模块116可以与各种不同的文件宿主204进行通信,比如,本地文件系统212、应用214、远程文件系统216和服务提供者218。代理器模块114和/或挑选器模块116可以以不同方式与文件宿主204进行通信,并且在一个或多个实施例中,利用指示如何与各个文件宿主204进行通信的信息配置模块114和/或116(或者,模块114和/或116可以以其他方式获取指示如何与各个文件宿主204进行通信的信息)。
文件宿主204涉及组织、管理和/或存储文件的系统、服务、应用等。文件宿主204可以在托管区中显示用户界面,以允许访问(例如,获取、存储等)文件宿主的文件(文件宿主所组织、管理和/或存储的文件)。文件宿主204可以使用各种不同的数据模型(在存储文件中使用的格式和/或协议)来以各种不同的方式组织和存储文件,比如,将文件存储为存储设备上的单独文件,数据库或其他记录中的文件、文件分组或集合的一部分(例如,zip文件或机柜文件的一部分)等等。不论文件宿主204所使用的数据模型,每个文件宿主204都知道如何访问(例如,标识、存储、获取、修改)该文件宿主204所组织、管理和/或存储的文件。
本地文件系统212是在作为运行应用202的计算设备的一部分或者与其相连的、包括可移除存储设备的本地存储设备上的一个或多个文件夹中存储文件222的文件宿主。本地文件系统212可以例如在本地硬盘、光盘、闪存设备、或其他计算机可读存储介质上存储文件222。
远程文件系统216是在与运行应用202的计算设备不同的远程存储设备上的一个或多个文件夹中存储文件226的文件宿主。例如,该远程存储设备可以经由图1的网络104耦合至运行应用202的计算设备。类似于本地文件系统212,远程文件系统216可以在各种不同的计算机可读存储介质上存储文件。
类似于图1的应用112,应用214可以采取多种不同的配置,并且可以是在各种设备上运行的一个或多个程序、脚本、或其他指令集合。类似于图1的应用112,应用214也可以是隔离应用。典型地,应用214在与应用202相同的计算设备上运行,但是可替换地,其可以在另一计算设备上运行。应用214是以各种方式存储文件224的文件宿主。应用214可以利用本地文件系统212和/或远程文件系统216存储文件224,但是典型地,文件224可仅仅通过应用214进行访问。
服务提供者218是可以采取多种不同配置的一个或多个应用,其向应用202提供各种不同服务,比如相片管理服务、社交网络服务、消息传递或其他通信服务、文档编辑服务等。服务提供者218包括典型地运行在不同于应用202所运行的计算设备的一个或多个计算设备(比如,经由图1的网络104与运行应用202的计算设备相耦合的一个或多个计算设备)上的一个或多个应用。服务提供者218是以各种方式存储文件228的文件宿主。服务提供者218可以利用本地文件系统212和/或远程文件系统216存储文件228,但是典型地,文件228可仅仅通过服务提供者218进行访问。
当应用202想要访问文件宿主以便允许应用202的用户将供获取的一个或多个文件选择到应用202中或从应用202保存一个或多个文件时,应用202向代理器模块114传送文件访问请求。因为应用202做出文件访问请求,所以应用202也称作下命令应用(callingapplication)。例如通过调用代理器模块114的API来传送文件访问请求。响应于该文件访问请求,代理器模块114调用挑选器模块116,挑选器模块116显示用户界面206。可替换地,应用202可以绕开代理器模块114并且将文件访问请求传送至挑选器模块116,直接调用挑选器模块116来显示用户界面206而不用通过代理器模块114。
用户界面206包括托管区,托管区是该用户界面的一部分,其中,一个或多个文件宿主204可以显示用户界面。在该托管区内显示的用户界面由文件宿主204生成。在该托管区内显示用户界面的应用214或服务提供者218也可以称作托管应用。每个文件宿主204可以按照该文件宿主204所希望的那样裁剪该托管区内的显示,可选地,按照该文件宿主204所希望的那样随着时间修改和改变该显示。应用202可以不知道(并且不了解)生成在托管区内显示的用户界面的方式,文件宿主204所使用的数据模型或命名空间等。类似地,挑选器模块挑选器模块116可以不知道(并且不了解)生成在托管区内显示的用户界面的方式,文件宿主204所使用的数据模型或命名空间等。
挑选器模块116(例如,挑选器模块116的UI模块122)提供一个或多个文件宿主204可以在其中显示用户界面的托管区。托管区可以是例如,文件宿主204的用户界面可以被显示或者以其他方式呈现在其中的窗口。可以以不同方式在托管区内显示用户界面。例如,可以从文件宿主204接收要在托管区内显示的用户界面,并且由挑选器模块116进行显示。作为另一个示例,可以允许文件宿主204在托管区中(例如,在特定窗口中)直接显示用户界面。然而,不论在托管区内显示用户界面的方式是什么,文件宿主的用户界面被限制在该托管区。不允许文件宿主的用户界面覆写UI的不在托管区内的其他区域,并且不允许文件宿主的用户界面霸占由计算设备的操作系统或者在计算设备上运行的其他应用提供的UI。
应该注意的是,当挑选器模块116提供一个或多个文件宿主204可以在其中显示用户界面的托管区时,托管区不由合并到应用202中的插件或扩展代码提供。除了不知道(并且不了解)生成在托管区内显示的用户界面的方式之外,应用202可以不知道生成在托管区内显示的用户界面的特定文件宿主。生成在托管区内显示的用户界面的该特定文件宿主以及能够生成在托管区内显示的用户界面的文件宿主204可以改变,而无需应用202知道该改变。
用户界面206可以每次显示单个文件宿主204可以在其中显示用户界面的单个托管区,并且在托管区内显示用户界面的该文件宿主204可以随着时间而改变。可替换地,用户界面206可以并发地显示多个托管区,以允许多个文件宿主204并发地显示用户界面。
挑选器模块116可以按照不同方式标识要在托管区内显示用户界面的文件宿主204。在一个或多个实施例中,各种不同文件宿主204的标识符被呈现为用户界面206的一部分,比如在用户界面206的文件宿主标识部分中。选择标识符之一的用户输入被接收,并且挑选器模块116调用具有所选标识符的、要在托管区内显示用户界面的文件宿主204。可替换地,挑选器模块116可以以其他方式标识要在托管区内显示用户界面的文件宿主204,比如通过标识默认文件宿主(例如,挑选器模块116配有的默认文件宿主,或者,挑选器模块116可以以其他方式标识的默认文件宿主),随机地或者根据其他规则或标准选择文件宿主,基于从系统200的用户接收的偏好或配置设置标识文件宿主,等等。
可以以不同方式确定系统200中可用的文件宿主204。在一个或多个实施例中,每个文件宿主204被登记为用于挑选器模块116的文件宿主204。作为登记处理的一部分,提供关于文件宿主204的各种不同信息,比如,如何激活文件宿主204,文件宿主所支持的文件类型,等等。可以在各种不同时刻执行该登记,比如,当文件宿主被安装到实施挑选器模块116的计算设备上时,当响应于用户请求,文件宿主访问实施挑选器模块116的计算设备时,等等。当确定了系统200中可用的文件宿主204(例如,并且比如,针对其的标识符将被显示在用户界面206的文件宿主标识部分内的文件宿主204)时,挑选器模块116可以仅仅标识已经登记为用于挑选器模块116的文件宿主204的那些文件宿主。
可替换地,可以以不同方式标识系统200中可用的文件宿主204。例如,可以(例如,经由图1的网络104)访问远程服务以标识运行应用202的计算设备当前可访问的服务,并且那些标识出的服务可以是文件宿主204。作为另一示例,来自运行应用202的计算设备的销售者或管理员的文件宿主列表可以被访问来确定系统200中可用的文件宿主204。
附加地,在一个或多个实施例中,文件宿主204可以支持不同文件类型。文件类型指的是,文件中存储的数据的特定类型和/或数据被存储在文件中的格式。例如,文件类型可以是图像文件、音频文件、视频文件、文本文件等。作为另一示例,文件类型可以是JPEG(联合图像专家组)文件、PDF(可移植文档格式)文件等。文件宿主204所支持的文件类型涉及,组织、管理和/或存储具有该文件类型的文件的文件宿主204。比如在以上讨论的登记处理期间,标识每个文件宿主204所支持的文件类型。作为文件访问请求的一部分,应用202可以标识出应用202期望用于该文件访问请求的一种或多种文件类型。挑选器模块116仅仅标识(例如,像针对其的标识符要被显示在用户界面206的文件宿主标识部分内的文件宿主204一样的)那些支持应用202所请求的文件类型的文件宿主。因此,不支持应用202所请求的文件类型的文件宿主204不被标识为可以在托管区内显示用户界面的文件宿主。然而,如果对于该文件宿主204所支持的另一文件类型,接收到来自应用202的随后的访问请求,则该文件宿主204被标识为可以在托管区内显示用户界面的文件宿主。
当文件宿主204被标识为要在托管区内显示用户界面的文件宿主204时,挑选器模块116激活,或者以其他方式调用所标识出的文件宿主204。挑选器模块116知道,或者可以获得指示如何激活或调用文件宿主204的信息。可以例如作为如上讨论的登记处理的一部分而获得该信息。如果文件宿主204还未运行,则挑选器模块116激活或发动文件宿主204,以调用文件宿主204来在托管区内显示用户界面。如果文件宿主204已经在运行,则挑选器模块116调用文件宿主204来在托管区内显示用户界面。
被激活或被调用的文件宿主204按照文件宿主204自己确定的各种不同方式在托管区中显示用户界面。可以用诸如图标、视频序列、文本描述等不同表示来显示文件。用户可以以不同方式输入数据,比如,经由文本输入域,经由手势,可听见地,等等。
文件宿主204在托管区中显示的用户界面可以允许对由文件宿主204管理的文件进行各种不同访问。例如,用户界面可以允许导览文件夹或其他文件分组,选择供获取的一个或多个文件,选择用于保存文件的一个或多个位置,等等。
在来自应用202的文件访问请求请求获取一个或多个文件的情况下,由文件宿主204显示的用户界面标识出(例如,显示图标或缩略图表示)应用202的用户可以从其选择的一个或多个文件宿主204中的每一个的一个或多个文件。如上所讨论的,选择可以由提供多种不同输入的用户做出。在选择了(来自一个或多个文件宿主204的)一个或多个文件时,所述一个或多个文件宿主204向挑选器模块116提供所选择的一个或多个文件(或者在哪里和/或如何获取所述一个或多个所选文件的指示)。挑选器模块116向代理器模块114提供所述一个或多个所选文件(或者,在哪里和/或如何获取所述一个或多个所选文件的指示)。代理器模块114向应用202返回所述一个或多个所选文件(或可替换地,应用202可以在哪里和/或如何获取所述一个或多个所选文件或所述一个或多个文件的内容的指示)。
在来自应用202的文件访问请求请求保存或存储一个或多个文件的情况下,由文件宿主204显示的用户界面标识出(例如,显示图标或缩略图表示)应用202的用户可以从其选择的文件宿主204的一个或多个位置。由文件宿主204显示的用户界面也可以提供用户输入部分,以允许用户提供关于一个或多个文件的各种不同信息(例如,所述一个或多个文件的名称,所述一个或多个文件的描述)。作为用于保存或存储文件的文件访问请求的一部分,应用202可以可选地提供标识文件的信息。该信息可以被提供给在托管区内显示用户界面的文件宿主204,以允许文件宿主204将与要保存的文件相关的信息合并到托管区中的用户界面中。例如,应用202可以(经由代理器模块114和挑选器模块116)向文件宿主204提供代表要保存的文件的缩略图或图标。文件宿主204可以将该缩略图或图标作为托管区中的用户界面的一部分进行显示。
应用202向代理器模块114提供要保存的一个或多个文件(或者,在哪里和/或如何获得所述要保存的一个或多个文件的指示)。代理器模块114向挑选器模块116提供所述要保存的一个或多个文件(或者,在哪里和/或如何获得所述要保存的一个或多个文件的指示),挑选器模块116向在托管区中显示用户界面的文件宿主204提供所述要保存的一个或多个文件(或者,在哪里和/或如何获得所述要保存的一个或多个文件的指示)。在接收到用于存储所述一个或多个文件的位置的用户选择时,在托管区中显示用户界面的文件宿主204在所选位置存储所述一个或多个文件(以及可选地,与关于所述一个或多个文件的另外提供的信息一起)。应用202可以作为文件访问请求的一部分或者可替换地在其他时间(例如,响应于来自挑选器模块116的针对所述一个或多个文件的请求,该请求是响应于用户选择所述一个或多个文件要被保存的位置而由挑选器模块116提供的),提供所述要保存的一个或多个文件(或者,在哪里和/或如何获得所述要保存的一个或多个文件的指示)。
在系统200中,应用202是向代理器模块114提供访问请求的下命令应用,而应用214是可以在用户界面206的托管区中提供用户界面的托管应用。然而,应该注意的是,应用可以在相同时刻和/或不同时刻是托管应用和/或下命令应用。例如,应用202可以是社交网络应用,而应用214可以是相片编辑应用。在某一时刻,社交网络应用可以是托管应用,而相片编辑应用可以是下命令应用,以允许从社交网络应用获取图像到相片编辑应用,而在稍后的时刻,相片编辑应用可以是托管应用,而社交网络应用可以是下命令应用,以允许从相片编辑应用获取图像到社交网络应用。继续该示例,当相片编辑应用相对于社交网络应用是下命令应用时,字处理应用可以是下命令应用,而相片编辑应用可以是用于字处理器应用的托管应用,从而在允许从社交网络应用获取图像到相片编辑应用的同时,允许从相片编辑应用获取图像到字处理应用。
这里讨论的利用了不同文件宿主技术的文件访问支持各种使用场景。例如,当使用特定应用时,用户能够请求将特定类型的文件(例如,图片)获取到该一个应用中。支持该特定类型的文件的各种其他应用或服务提供者可以被标识,并且向用户显示用户界面。用户能够从那些各种不同的其他应用选择一个或多个文件,响应于此,所选一个或多个文件被获取到了用户正使用的特定应用中。因此,用户可以容易地将来自另一个应用的文件获取到该特定应用中,而不用非得分离地将来自其他应用的文件保存到存储设备上,然后将那些已保存的文件获取到该特定应用中。此外,用户可以从其他应用获取这样的文件,而文件要被获取至的特定应用却不知道所述其他应用所使用的数据模型(并且不知道所述其他应用本身)。
示例用户界面
以下章节描述了可以使用前述系统和设备来实施的示例用户界面。计算设备102例如可以通过在计算设备102的硬件(例如,被指令配置成执行操作的一个或多个处理器和/或功能块)上执行指令,来输出用户界面206。虽然针对挑选器模块116的用户界面206的输出描述了这些技术,但是在不背离其精神和范围的情况下,各种各样的不同用户界面可以采用这些技术。
图3描绘了被配置为移动通信设备并且输出用户界面302的图1的计算设备102的示例实施方式300。如上所讨论的,可以输出用户界面302以提供对各种不同文件宿主204的文件的访问。相应地,用户界面302可以被配置成,支持响应于用户输入而导览各种文件宿主204的文件,使得用户可以管理如何执行该访问。
该示例中的用户界面302被图示为包括导航部分304,导航部分304包括已经接收到用于打开图片类型的文件的文件访问请求的指示。用户界面302还包括宿主标识部分306,例如可以响应于用户选择导航部分304中的“跳至”选项而显示宿主标识部分306。宿主标识部分306显示各种不同文件宿主204的标识符。在所图示的示例中,宿主标识部分306显示以下项的标识符:“计算机、”“桌面、”“下载、”“音乐、”“图片、”“相片图库应用、”以及“社交应用。”“计算机、”“桌面、”“下载、”“音乐、”“图片”的标识符可以涉及不同文件宿主或者相同文件宿主的不同位置(例如,本地文件系统中的不同文件夹或库)。标识符“相片图库应用”标识作为应用的文件宿主(例如,相片图库应用),并且标识符“社交应用”标识也作为应用的文件宿主(例如,社交网络应用)。标识符被列出为文本表示,但是多种其他表示也被考虑,比如图像、图标、视频序列等。
用户可以以如上所讨论的多种不同方式经由用户界面302提供输入。例如,用户可以使用他或她的手308触摸因而选择了导航部分304中的“跳至”选项来显示宿主标识部分306,或者触摸因而选择了在宿主标识部分306中的标识符之一来在托管区中显示由所选标识符标识出的文件宿主的文件。
因此,可以响应于多种因素而输出用户界面302。例如,代理器模块114可以从应用112接收文件访问请求。作为响应,代理器模块114和/或挑选器模块116可以输出用户界面302。多种其它示例也被考虑。
图4描绘了被配置为移动通信设备并且输出用户界面402的图1的计算设备102的示例实施方式400。如上所讨论的,用户界面402可以被输出以标识出能够由用户选择的文件宿主204的文件。用户界面402假设用户界面302的宿主标识部分306中的“相片图库应用”标识符被选择。相应地,用户界面302可以被配置成,支持响应于用户输入而导览相片图库应用的文件,使得用户可以管理如何执行该访问。
用户界面402包括导航部分304,导航部分304图示出相片图库应用的标识符(例如,“相片图库应用”)和能够被用户选择以返回前一屏幕(例如,用户界面302)的向上箭头。
用户界面402还包括托管区404,在托管区404中,相片图库应用生成用户界面。在所图示的示例中,相片图库应用生成了用户界面,该用户界面在托管区404的左手侧具有大图像,并且在托管区404的右手侧具有相片图库应用的其他图像的缩略图。用户可以选择(例如,通过用他或她的手308触摸)在托管区404的右手侧的缩略图,以将所选图像显示为托管区404的左手侧的大图像。用户可以选择(例如,通过用他或她的手308触摸)导入按钮406,以将包括托管区404的左手侧的大图像的文件返回至下命令应用。也可以提供多种其他用户输入来选择托管区404的左手侧的大图像作为代表要返回至下命令应用的文件,比如,双击或双敲大图像,按压图像的缩略图并且保持至少阈值时间量,等等。
图5描绘了被配置为移动通信设备并且输出用户界面502的图1的计算设备102的示例实施方式400。用户界面502类似于用户界面402,但是包括集合部分504,集合部分504促进从一个或多个不同文件宿主选择多个文件。集合部分504可以例如由挑选器模块116提供。可以以不同方式选择文件,比如,双击或双敲文件,将文件从托管区404的右手侧拖动至集合部分504并且放下,等等。当文件被选择时,该文件的缩略图被显示在集合部分504中。可选地,用户可以例如通过选择导航部分304中的向上箭头返回到用户界面302,来从多个文件宿主选择文件。然后,用户可以选择另一个文件源(例如,由宿主标识部分306中的“社交应用”代表的社交网络应用)的标识符,响应于此,社交网络应用提供在托管区404中显示的用户界面。来自社交网络应用的一个或多个附加文件可以被选择并且被添加到集合部分504中(除了从相片图库应用中选择的、已经显示在集合部分504中的文件的缩略图之外)。
在用户选择了一个或多个文件之后,用户可以选择(例如,通过用他或她的手308触摸)导入按钮506以将所选择的一个或多个文件(其缩略图显示在集合部分504中)返回给下命令应用。也可以提供多种其他用户输入来将所选择的一个或多个文件返回至下命令应用。
图6描绘了图1的计算设备102在显示被配置为保存文件到文件宿主的用户界面时的示例实施方式600。在该示例中,用户界面602被计算设备102配置成将文件保存到相片图库应用文件宿主。用户界面602包括托管区604,在该托管区604中,相片图库应用生成用户界面,并且该托管区604包括文件的表示,在该实例中,该文件的表示是图像。山的表示被图示为被选择以保存到文件宿主。
托管区604还包括保存部分606,保存部分606被配置成载明关于要保存的文件的信息,在该实例中,所述信息是名称“假期”以及文件类型(JPEG文件)。此外,软键盘608被显示为托管区604的一部分,并且被配置成接收触摸输入以将数据输入到保存部分606。按照这种方式,用户可以通过与用户界面602进行交互,来导览用户界面,指定要保存的文件,输入被用来保存文件的信息(例如,文件类型),以及将文件保存。
示例过程
以下讨论描述了可以使用前述系统和设备来实施的利用了不同文件宿主技术的文件访问。每个过程的各个方面可以以硬件、固件、软件或其组合来实施。所述过程被示为详细描述了由一个或多个设备执行的操作的一组动作,并且所述过程不必限于针对由相应动作执行操作而示出的顺序。在以下讨论的部分中,将参照图1和2的元件。
图7图示出根据一个或多个实施例的实施了利用不同文件宿主的文件访问的示例过程700。由诸如文件管理模块106之类的文件管理模块来实施过程700。在过程700中,从应用接收文件访问请求(动作702)。如上所讨论的,请求可以通过应用调用文件管理模块的代理器模块所暴露的API而被接收,并且可以是用于获取一个或多个文件的请求。
标识出文件访问请求的一个或多个文件类型(动作704)。如上所讨论的,这些一个或多个文件类型可以被标识为文件访问请求的一部分。典型地,这些一个或多个文件类型是应用请求获取的文件类型。
标识出支持所标识出的一个或多个文件类型的文件的一个或多个文件宿主(动作706)。这些一个或多个文件宿主可以是如上所讨论的各种不同类型的文件宿主,比如其他应用。可以以不同方式标识文件宿主所支持的文件类型,比如在如以上讨论的登记处理期间。
显示包括托管区的用户界面(动作708)。在托管区内,所述一个或多个文件宿主中的至少一个显示标识出可以被选择来供获取的一个或多个文件的、用户界面的一部分。如上所讨论的,显示用户界面的一部分的文件宿主可以改变。附加地,如上所讨论的,应用可以不知道哪个文件宿主正在托管区中显示用户界面,并且文件宿主可以按照该文件宿主所希望的那样在托管区中裁剪用户界面。
接收所述至少一个文件宿主的一个或多个文件的用户选择(动作710)。可以如上所讨论的那样接收来自一个或多个文件宿主中的每一个的一个或多个文件的用户选择。
将用户选择的一个或多个文件返回给应用(动作712)。如上所讨论的,应用可以不知道从所述一个或多个文件宿主中的哪一个选择了所述一个或多个文件。
图8图示出根据一个或多个实施例的实施了利用不同文件宿主的文件访问的另一示例过程800。过程800由诸如文件管理模块106之类的文件管理模块来实施。在过程800中,从应用接收文件访问请求(动作802)。如上所讨论的,请求可以通过应用调用文件管理模块的代理器模块所暴露的API而被接收,并且可以是用于保存一个或多个文件的请求。
标识出要由应用保存的文件的文件类型(动作804)。可以按照不同方式标识出该文件类型,比如被包括为文件访问请求的一部分,由用户输入提供,是文件中所固有的(例如,由作为文件的名称的一部分的扩展标识出的,作为与文件相关联的元数据被标识出的),等等。
标识出支持所标识出的文件类型的文件的一个或多个文件宿主(动作806)。这些一个或多个文件宿主可以是如上所讨论的各种不同类型的文件宿主,比如其他应用。可以以不同方式标识文件宿主所支持的文件类型,比如在如以上讨论的登记处理期间。
显示包括托管区的用户界面(动作808)。在托管区内,所述一个或多个文件宿主中的至少一个显示用户界面的、允许所述至少一个文件宿主保存文件的一部分。如上所讨论的,用户可以经由在托管区中显示的用户界面选择文件要被保存的位置。如上所讨论的,显示用户界面的一部分的文件宿主可以改变。附加地,如上所讨论的,应用可以不知道哪个文件宿主正在托管区中显示用户界面,并且文件宿主可以按照该文件宿主所期望的那样在托管区中裁剪用户界面。
结论
这里讨论了由各种不同模块执行的各种不同动作,比如,传送、接收、发送、存储、生成、获得等等。应该注意的是,各种不同模块可以使得这样的动作被执行。使得动作被执行的特定模块包括执行该动作的该特定模块本身,或者可替换地,调用或者以其他方式访问执行该动作(或者结合该特定模块执行该动作)的另一组件或模块的该特定模块。
尽管已经用特定于结构特征和/或方法动作的语言对本主题作了描述,但应理解,在所附权利要求中限定的主题未必局限于上述的具体特征或动作。相反,上述具体特征和动作是作为实施权利要求的示例形式来公开的。

Claims (10)

1.一种计算设备中的方法,所述方法包括:
从应用接收文件访问请求;
标识出所述文件访问请求的一个或多个文件类型;
标识出支持所标识出的一个或多个文件类型的文件的多个文件宿主中的一个或多个文件宿主,所述多个文件宿主包括至少一个是另一个应用的文件宿主,该另一个应用不同于从中接收到文件访问请求的应用;以及
显示包括托管区的用户界面,在该托管区中,所述用户界面的一部分标识出能够被选择来供获取的、所述至少一个文件宿主的一个或多个文件。
2.如权利要求1所述的方法,所述另一个应用在计算设备上运行,所述至少一个文件宿主显示所述用户界面的一部分,该部分标识出能够被选择来供获取的、所述至少一个文件宿主的一个或多个文件。
3.如权利要求1所述的方法,所述应用在计算设备上以受限的方式运行,所述受限的方式阻止所述应用干扰所述另一个应用并且阻止所述另一个应用干扰所述应用。
4.如权利要求1所述的方法,所述多个文件宿主包括在不同于所述计算设备的一个或多个设备上运行的服务提供者的一个或多个其他应用。
5.如权利要求1所述的方法,所述应用不知道所述多个文件宿主中的每一个所使用的数据模型。
6.如权利要求1所述的方法,还包括:
接收对所述标识的文件宿主中的至少一个的一个或多个文件的用户选择;以及
将用户选择的一个或多个文件返回给所述应用。
7.一种计算设备,包括:
文件管理模块,所述文件管理模块实施包括以下步骤的动作:
从应用接收文件访问请求;
标识出要由所述应用保存的文件的文件类型;
标识出支持所标识出的文件类型的文件的一个或多个文件宿主;以及
显示包括托管区的用户界面,在该托管区中,所述用户界面的一部分针对所述一个或多个文件宿主中的至少一个而被定制,允许由所述至少一个文件宿主保存文件,所述用户界面使得所述至少一个文件宿主能够显示针对所述至少一个文件宿主定制的所述用户界面的所述一部分,并且被配置用来将所述至少一个文件宿主限制为在该托管区中显示所述用户界面的所述一部分。
8.如权利要求7所述的计算设备,所述至少一个文件宿主显示针对所述至少一个文件宿主定制的所述用户界面的所述一部分。
9.如权利要求7所述的计算设备,所述显示包括显示所述文件能够被保存在其中的所述至少一个文件宿主的一个或多个位置的标识符,所述文件管理模块还实施包括以下步骤的动作:
接收对所述一个或多个位置中的一个的用户选择;以及
向所述至少一个文件宿主提供所述文件以将所述文件存储在用户选择的位置。
10.如权利要求7所述的计算设备,所述应用不知道该托管区中所述用户界面的所述一部分为所述一个或多个文件宿主中的哪一个显示。
CN201180071198.7A 2011-05-27 2011-10-09 利用不同文件宿主实现文件访问的方法和计算设备 Active CN103562908B (zh)

Applications Claiming Priority (4)

Application Number Priority Date Filing Date Title
US13/117,598 2011-05-27
US13/117,598 US8819586B2 (en) 2011-05-27 2011-05-27 File access with different file hosts
US13/117598 2011-05-27
PCT/US2011/055528 WO2012166186A1 (en) 2011-05-27 2011-10-09 File access with different file hosts

Publications (2)

Publication Number Publication Date
CN103562908A CN103562908A (zh) 2014-02-05
CN103562908B true CN103562908B (zh) 2017-03-22

Family

ID=47220145

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201180071198.7A Active CN103562908B (zh) 2011-05-27 2011-10-09 利用不同文件宿主实现文件访问的方法和计算设备

Country Status (6)

Country Link
US (4) US8819586B2 (zh)
EP (1) EP2715532B1 (zh)
JP (1) JP5932982B2 (zh)
KR (2) KR101798697B1 (zh)
CN (1) CN103562908B (zh)
WO (1) WO2012166186A1 (zh)

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9547694B1 (en) 2002-05-25 2017-01-17 hopTo Inc. Aggregated search
US8418257B2 (en) 2010-11-16 2013-04-09 Microsoft Corporation Collection user interface
US8819586B2 (en) * 2011-05-27 2014-08-26 Microsoft Corporation File access with different file hosts
US20130060842A1 (en) * 2011-08-21 2013-03-07 World Software Corporation Remote desktop and data management system
US9965134B2 (en) * 2012-09-14 2018-05-08 Advanced Micro Devices, Inc. Method and apparatus for providing a user interface for a file system
WO2014101208A1 (zh) * 2012-12-31 2014-07-03 华为技术有限公司 一种获取文件的方法和装置
US9473562B2 (en) * 2013-09-12 2016-10-18 Apple Inc. Mediated data exchange for sandboxed applications
CN104461709B (zh) * 2014-12-12 2018-07-17 北京国双科技有限公司 任务计划的控制方法和装置
US10187446B2 (en) * 2015-03-23 2019-01-22 Sonicwall Inc. Firewall multi-level security dynamic host-based sandbox generation for embedded URL links
JP2022052179A (ja) * 2020-09-23 2022-04-04 富士フイルムビジネスイノベーション株式会社 ファイル管理装置およびプログラム

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1532698A (zh) * 2003-03-24 2004-09-29 在壳层浏览器中的可扩展对象预览器
CN101167121A (zh) * 2005-04-22 2008-04-23 微软公司 文件浏览器的情况专用化

Family Cites Families (74)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5974549A (en) 1997-03-27 1999-10-26 Soliton Ltd. Security monitor
US6407752B1 (en) 1997-04-29 2002-06-18 International Business Machines Corporation Method and system for a user interface for remote FTP hosts
US6266682B1 (en) 1998-08-31 2001-07-24 Xerox Corporation Tagging related files in a document management system
JP2001075998A (ja) 1999-09-08 2001-03-23 Toshiba Corp 電子ファイリングシステム及びファイル一覧表示方法
US8781940B2 (en) * 2000-01-26 2014-07-15 Ebay Inc. Method and apparatus for facilitating user selection of a category item in a transaction
US7707505B1 (en) 2000-03-23 2010-04-27 Insweb Corporation Dynamic tabs for a graphical user interface
US7188319B2 (en) * 2000-04-21 2007-03-06 Microsoft Corporation Displaying graphical information and user selected properties on a computer interface
US20020099944A1 (en) 2001-01-19 2002-07-25 Bowlin Bradley Allen Method and apparatus which enable a computer user to prevent unauthorized access to files stored on a computer
US6765596B2 (en) 2001-02-27 2004-07-20 International Business Machines Corporation Multi-functional application launcher with integrated status
US20030013483A1 (en) 2001-07-06 2003-01-16 Ausems Michiel R. User interface for handheld communication device
US20040153445A1 (en) 2003-02-04 2004-08-05 Horvitz Eric J. Systems and methods for constructing and using models of memorability in computing and communications applications
US8041878B2 (en) * 2003-03-19 2011-10-18 Samsung Electronics Co., Ltd. Flash file system
US7409644B2 (en) * 2003-05-16 2008-08-05 Microsoft Corporation File system shell
US7627552B2 (en) * 2003-03-27 2009-12-01 Microsoft Corporation System and method for filtering and organizing items based on common elements
US7240292B2 (en) * 2003-04-17 2007-07-03 Microsoft Corporation Virtual address bar user interface control
US7421438B2 (en) * 2004-04-29 2008-09-02 Microsoft Corporation Metadata editing control
US7650575B2 (en) 2003-03-27 2010-01-19 Microsoft Corporation Rich drag drop user interface
WO2004090722A1 (en) 2003-04-11 2004-10-21 Star Softcomm Pte Ltd Data isolation system and method
US7539631B1 (en) * 2003-10-06 2009-05-26 Microsoft Corporation Method, system and program for providing subscription-based virtual computing services
US7480655B2 (en) 2004-01-09 2009-01-20 Webroor Software, Inc. System and method for protecting files on a computer from access by unauthorized applications
US8707209B2 (en) * 2004-04-29 2014-04-22 Microsoft Corporation Save preview representation of files being created
US7647559B2 (en) 2004-09-30 2010-01-12 Microsoft Corporation Method and computer-readable medium for navigating between attachments to electronic mail messages
WO2006038987A2 (en) * 2004-09-30 2006-04-13 Citrix Systems, Inc. A method and apparatus for assigning access control levels in providing access to networked content files
US7711835B2 (en) 2004-09-30 2010-05-04 Citrix Systems, Inc. Method and apparatus for reducing disclosure of proprietary data in a networked environment
US7444360B2 (en) 2004-11-17 2008-10-28 International Business Machines Corporation Method, system, and program for storing and using metadata in multiple storage locations
US20060242122A1 (en) 2005-04-22 2006-10-26 Microsoft Corporation Systems, methods, and user interfaces for storing, searching, navigating, and retrieving electronic information
US8365063B2 (en) 2005-06-28 2013-01-29 International Business Machines Corporation Accessible list navigation
WO2007005072A1 (en) * 2005-06-29 2007-01-11 William Parrish Site plan tool
US20070006321A1 (en) 2005-07-01 2007-01-04 International Business Machines Corporation Methods and apparatus for implementing context-dependent file security
US9202045B2 (en) 2005-11-17 2015-12-01 Koninklijke Philips N.V. System for managing access control
US7664924B2 (en) 2005-12-01 2010-02-16 Drive Sentry, Inc. System and method to secure a computer system by selective control of write access to a data storage medium
US20100153671A1 (en) 2005-12-01 2010-06-17 Drive Sentry Inc. System and method to secure a computer system by selective control of write access to a data storage medium
US7503009B2 (en) 2005-12-29 2009-03-10 Sap Ag Multifunctional icon in icon-driven computer system
US20070162857A1 (en) 2006-01-06 2007-07-12 Ralf Weber Automated multimedia authoring
KR100714709B1 (ko) 2006-01-11 2007-05-04 삼성전자주식회사 숨김 영역 관리 장치 및 방법
US7496576B2 (en) 2006-03-30 2009-02-24 Microsoft Corporation Isolated access to named resources
US8515826B2 (en) * 2006-05-18 2013-08-20 Bryan C. Norman Made-to-order direct digital manufacturing enterprise
US20080127354A1 (en) 2006-11-28 2008-05-29 Microsoft Corporation Condition based authorization model for data access
US7907125B2 (en) 2007-01-05 2011-03-15 Microsoft Corporation Recognizing multiple input point gestures
US8689132B2 (en) 2007-01-07 2014-04-01 Apple Inc. Portable electronic device, method, and graphical user interface for displaying electronic documents and lists
US20080228924A1 (en) * 2007-03-15 2008-09-18 Tilman Herberger System and method for creation of automated content dependent procedures in an online environment
US20080320397A1 (en) 2007-06-19 2008-12-25 Microsoft Corporation Integrated sharing of electronic documents
US20090158181A1 (en) 2007-12-18 2009-06-18 Mellmo Llc User interface method and apparatus to navigate a document file
US20090166098A1 (en) 2007-12-31 2009-07-02 Apple Inc. Non-visual control of multi-touch device
US20090282332A1 (en) 2008-05-12 2009-11-12 Nokia Corporation Apparatus, method and computer program product for selecting multiple items using multi-touch
US20090309847A1 (en) 2008-06-12 2009-12-17 You I Labs, Inc. Apparatus and method for providing multi-touch interface capability
US20100107085A1 (en) 2008-10-29 2010-04-29 The Go Daddy Group, Inc. Control panel for managing multiple online data management solutions
US8904004B2 (en) 2009-04-10 2014-12-02 Open Invention Network, Llc System and method for maintaining mappings between application resources inside and outside isolated environments
US8686952B2 (en) 2008-12-23 2014-04-01 Apple Inc. Multi touch with multi haptics
US8291069B1 (en) * 2008-12-23 2012-10-16 At&T Intellectual Property I, L.P. Systems, devices, and/or methods for managing sample selection bias
US8473862B1 (en) * 2009-05-21 2013-06-25 Perceptive Pixel Inc. Organizational tools on a multi-touch display device
KR101626117B1 (ko) 2009-06-22 2016-05-31 삼성전자주식회사 클라우드 스토리지를 제공하는 클라이언트, 중개 서버 및 방법
US8407613B2 (en) 2009-07-13 2013-03-26 Apple Inc. Directory management on a portable multifunction device
US8601363B2 (en) * 2009-07-20 2013-12-03 Facebook, Inc. Communicating information about a local machine to a browser application
US8417705B2 (en) * 2009-10-30 2013-04-09 International Business Machines Corporation Graphically displaying a file system
US20110246941A1 (en) 2009-11-05 2011-10-06 Gonzalez George E Visual Interface Direct Alphanumeric Navigation Through Displayed Items
US8850572B2 (en) * 2010-01-15 2014-09-30 Apple Inc. Methods for handling a file associated with a program in a restricted program environment
US20110213971A1 (en) 2010-03-01 2011-09-01 Nokia Corporation Method and apparatus for providing rights management at file system level
JP5797382B2 (ja) 2010-06-09 2015-10-21 株式会社リコー ファイル交換システム、ファイル交換方法、モバイル機器及びプログラム
US20120124091A1 (en) 2010-11-12 2012-05-17 Microsoft Corporation Application file system access
US8819593B2 (en) * 2010-11-12 2014-08-26 Microsoft Corporation File management user interface
US8418257B2 (en) 2010-11-16 2013-04-09 Microsoft Corporation Collection user interface
US20120236201A1 (en) * 2011-01-27 2012-09-20 In The Telling, Inc. Digital asset management, authoring, and presentation techniques
US8819586B2 (en) * 2011-05-27 2014-08-26 Microsoft Corporation File access with different file hosts
US20130179414A1 (en) * 2012-01-06 2013-07-11 Microsoft Corporation Mechanisms for connecting files between applications
US9262535B2 (en) * 2012-06-19 2016-02-16 Bublup Technologies, Inc. Systems and methods for semantic overlay for a searchable space
US9965134B2 (en) * 2012-09-14 2018-05-08 Advanced Micro Devices, Inc. Method and apparatus for providing a user interface for a file system
US9323855B2 (en) * 2013-02-05 2016-04-26 Facebook, Inc. Processing media items in location-based groups
US9473562B2 (en) * 2013-09-12 2016-10-18 Apple Inc. Mediated data exchange for sandboxed applications
US10365798B1 (en) * 2016-01-08 2019-07-30 Microsoft Technology Licensing, Llc Feedback manager for integration with an application
JP6899510B2 (ja) * 2016-04-14 2021-07-07 Line株式会社 表示制御方法、端末、及びプログラム
US10838920B2 (en) * 2017-05-05 2020-11-17 Esoptra NV Plug-in function platform and methods
US11539686B2 (en) * 2017-10-12 2022-12-27 Mx Technologies, Inc. Data aggregation management based on credentials
US11461385B2 (en) * 2018-01-12 2022-10-04 40 North Labs LLC Event-based methods and systems for managing photographic content

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1532698A (zh) * 2003-03-24 2004-09-29 在壳层浏览器中的可扩展对象预览器
CN101167121A (zh) * 2005-04-22 2008-04-23 微软公司 文件浏览器的情况专用化

Also Published As

Publication number Publication date
US20120304119A1 (en) 2012-11-29
US10042851B2 (en) 2018-08-07
EP2715532A1 (en) 2014-04-09
EP2715532A4 (en) 2014-12-17
US20180314709A1 (en) 2018-11-01
JP5932982B2 (ja) 2016-06-08
KR101895185B1 (ko) 2018-09-04
US11132333B2 (en) 2021-09-28
KR20140027332A (ko) 2014-03-06
KR20170126015A (ko) 2017-11-15
CN103562908A (zh) 2014-02-05
JP2014522521A (ja) 2014-09-04
US20200356527A1 (en) 2020-11-12
US20140325380A1 (en) 2014-10-30
KR101798697B1 (ko) 2017-11-16
WO2012166186A1 (en) 2012-12-06
US8819586B2 (en) 2014-08-26
EP2715532B1 (en) 2020-03-18

Similar Documents

Publication Publication Date Title
CN103562908B (zh) 利用不同文件宿主实现文件访问的方法和计算设备
US8745502B2 (en) System and method for interfacing interactive systems with social networks and media playback devices
US8595641B2 (en) Methods, apparatus and systems for displaying and/or facilitating interaction with secure information via channel grid framework
JP6220452B2 (ja) オブジェクトベースのコンテキストメニューの制御
US8521857B2 (en) Systems and methods for widget rendering and sharing on a personal electronic device
CN103608811B (zh) 用于所连接的设备的上下文感知应用模型
KR20170091142A (ko) 웹 콘텐츠 태깅 및 필터링
US20100211638A1 (en) Method and device for creating computer applications
CN108156503A (zh) 一种生成礼物的方法及装置
CN110476162B (zh) 使用导航助记符控制显示的活动信息
US20120047568A1 (en) Digital Asset Management on the Internet
US20140013193A1 (en) Methods and systems for capturing information-enhanced images
CN102446094A (zh) 用于有效地实现系统和桌面配置增强的装置和方法
CN107430609A (zh) 针对企业环境的浏览器新标签页的生成
KR20090000254A (ko) 컨텐츠 편집툴을 이용한 멀티미디어 컨텐츠 편집 서비스제공 방법
US20180227255A1 (en) Method and system for distributing digital content
JP2002183034A (ja) Webページ作成装置、Webページ作成システム、Webページ作成方法及びWebページ作成プログラムを記録した記録媒体

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
ASS Succession or assignment of patent right

Owner name: MICROSOFT TECHNOLOGY LICENSING LLC

Free format text: FORMER OWNER: MICROSOFT CORP.

Effective date: 20150625

C41 Transfer of patent application or patent right or utility model
TA01 Transfer of patent application right

Effective date of registration: 20150625

Address after: Washington State

Applicant after: Micro soft technique license Co., Ltd

Address before: Washington State

Applicant before: Microsoft Corp.

C14 Grant of patent or utility model
GR01 Patent grant