CN109313589B - 实现与外部功能的交互 - Google Patents

实现与外部功能的交互 Download PDF

Info

Publication number
CN109313589B
CN109313589B CN201780038360.2A CN201780038360A CN109313589B CN 109313589 B CN109313589 B CN 109313589B CN 201780038360 A CN201780038360 A CN 201780038360A CN 109313589 B CN109313589 B CN 109313589B
Authority
CN
China
Prior art keywords
external service
productivity application
application
interface
functionality
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
CN201780038360.2A
Other languages
English (en)
Other versions
CN109313589A (zh
Inventor
S·S·穆尔塔尼
A·斯维特
K·K·Y·李
A·N·穆塔
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 CN109313589A publication Critical patent/CN109313589A/zh
Application granted granted Critical
Publication of CN109313589B publication Critical patent/CN109313589B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • 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
    • G06F3/0482Interaction with lists of selectable items, e.g. menus
    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/30Creation or generation of source code
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/34Network arrangements or protocols for supporting network services or applications involving the movement of software or configuration parameters 
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • H04W12/069Authentication using certificates or pre-shared keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Business, Economics & Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Human Computer Interaction (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Security & Cryptography (AREA)
  • Stored Programmes (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

提供的是通过生产力应用使能与外部服务功能的交互。应用程序中的功能通常是将外部或第三方服务集成到应用程序中。为了能够访问功能,例如为了测试目的,将密钥全局唯一标识符(GUID)输入到应用程序的指定界面,并且发送启用外部服务功能的请求,其中该请求提供对提供与外部服务功能交互的资源的指示。应用程序通过在生产力应用内提供用于与外部服务功能交互的界面,接收资源并通过生产力应用使能与外部服务功能的交互。可以使用各种GUID来启用不同的功能。此外,可以使用另一GUID来禁用与外部服务功能的交互。

Description

实现与外部功能的交互
背景技术
软件开发公司经常与其他应用程序开发者或服务提供者形成伙伴关系,以开发集成各种服务功能的产品。例如,生产力应用开发者可以与云存储服务提供者合作开发应用程序,使用户能够通过生产力应用访问云存储服务,或通过云存储服务访问生产力应用。
应用程序开发者通常使用网站托管的应用程序市场或应用程序(app)商店来分发软件应用程序,其中使得用户能够浏览各种类别,查看关于应用程序的信息,以及获取用于下载到计算设备的应用程序。应用程序开发者可以从发布应用程序版本以供公司外部用户进行测试中受益,这使应用程序开发者能够在将应用程序发布给公众之前接收反馈并修复错误。在特定示例中,开发者将受益于将集成应用程序的测试版本发布给第三方合作伙伴以在使应用程序公开可用之前测试集成。但是,传统的应用商店不允许开发者向第三方用户发布应用程序的测试版本。因此,开发者被迫使用其他渠道来分发测试应用程序。
发明内容
提供本发明内容是为了以简化的形式介绍一些概念,这些概念将在下面的具体实施方式部分中进一步描述。本发明内容不旨在确定所要求保护的主题的关键特征或必要特征,也不旨在帮助确定所要求保护的主题的范围。
各方面涉及用于实现与外部服务功能(feature)的交互的自动化系统、方法和计算机存储介质。例如,应用程序中的外部服务功能可以是第三方服务功能,其可以基于用户需求和共享密钥的知识而与应用程序集成。应用程序的指定界面可操作以接收由应用程序开发者(例如,服务提供者)向用户共享的密钥全局唯一标识符(GUID)。响应于在指定界面中接收GUID,发送启用外部服务功能的请求。该请求提供对提供用于与外部服务功能交互的资源的指示。在一些示例中,通过网络将请求发送到服务提供者。在其他示例中,请求是应用程序的内部请求。响应于该请求,接收关联于与外部服务功能交互的资源,并且启用经由应用程序与外部服务功能的交互。在一个示例中,资源包括用于与外部服务功能交互的接口。在另一示例中,资源包括用于解锁在应用程序中预加载的锁定界面的代码。可以使用各种GUID来启用不同的特征。此外,指定的GUTD可用于禁止与外部服务功能的交互。
示例被实现为计算机过程、计算系统或诸如设备、计算机程序产品或计算机可读介质的制品。根据一个方面,该计算机程序产品是计算机系统可读并且编码用于执行计算机过程的指令的计算机程序的计算机存储介质。
在附图和下面的说明书中阐述了一个或多个方面的细节。其它的特征和优点将从下面详述的阅读以及相关附图的浏览中变得显而易见。应当理解,前面的概述和下面的详述仅是说明性的,不限制权利要求。
附图说明
包含在本公开中并构成本公开的一部分的附图示出了各个方面。在图中:
图1是示出用于使生产力应用能够与外部服务功能交互的示例系统的组件的框图;
图2A是示例应用程序用户界面显示的图示,并示出用户在选择应用程序特征;
图2B是图2A的示例应用程序用户界面显示被更新以显示应用程序被启用而与之交互的服务的列表的图示;
图3是示出选择反馈界面的示例应用程序用户界面显示的图示;
图4是示例应用程序用户界面显示的图示,示出了在反馈界面中输入密钥;
图5A是示例应用程序用户界面显示的图示,并示出用户在选择应用程序特征;
图5B是图5A的示例应用程序用户界面显示被更新以显示使应用程序能够基于输入的密钥与之进行交互的服务的列表的图示;
图6是示出用于使生产力应用能够与外部服务功能交互的示例方法中涉及的一般阶段的流程图;
图7是示出计算设备的示例物理组件的框图;
图8A和8B是移动计算设备的框图;并且
图9是分布式计算系统的框图。
具体实施方式
以下的详细说明参照附图。尽可能地,在附图和以下描述中使用相同的附图标记来表示相同或相似的元件。尽管可以描述本发明的各方面,但修改、改动和其他实施方式是可能的。例如,可以对附图中所示的元件进行替换、添加或修改,并且可以通过对所公开的方法代替、重新排序或添加阶段来修改本文所描述的方法。因此,以下的详细描述并不限制本发明,而是由所附权利要求限定本发明的适当范围。示例可以采取硬件实现或完全软件实现的形式,或组合软件和硬件方面的实现。因此,以下详细描述不被认为是限制性的。
本公开的各方面涉及一种用于使生产力应用能够与外部服务功能交互的方法、系统和计算机存储介质。例如,第三方用户(例如与产品和服务集成相关联的开发合作伙伴)能够具有对在公开可用的应用程序中的外部服务功能的预发布访问权限。根据示例,可以与用户共享可用作密钥的全局唯一标识符(GUID)。用户能够将GUID输入到生产力应用的指定界面中,这使得生产力应用显示用于使用户能够选择启用外部服务功能的功能项(functionality)。在接收到启用外部服务功能的选择时,发送请求,以提供对提供与外部服务功能交互的资源的指示。响应于该请求,接收关联于与外部服务功能交互相关联的资源,并且通过在生产力应用内提供用于与外部服务功能交互的界面来实现与外部服务功能的交互。
通过在生产力应用内提供用于响应于接收到关联于与外部服务功能交互相关联的资源来与外部服务功能交互的界面,本公开解决了使服务提供者和第三方合作伙伴能够在遵守应用商店策略的同时测试预发布特征的挑战,并且有利地提高用于下载生产力应用的数据传输效率,其中可以基于访问权限和用户需求来集成附加的第三方服务。此外,节省了带宽,允许用户保持在数据使用上限内。
现在参考图1,示出了示出用于使生产力应用能够与外部服务功能交互的示例系统100的各方面的框图。示例系统100包括客户端计算设备102,其中客户端102可以是用于执行用于实施多种任务的应用程序的各种类型的计算设备之一(例如,平板计算设备、台式计算机、移动通信设备、膝上型计算机、膝上型/平板电脑混合计算设备、大屏幕多点触摸显示器、游戏设备、智能电视、可穿戴设备、连接的汽车、智能家居设备或其他类型的计算设备)。
在示例中,客户端102包括通信接口106形式的软件应用程序。通信接口106说明可操作以使客户端102能够与各种其他实体(例如,其他客户、提供者、服务器、网站)进行通信和交互的软件模块、系统或设备。例如,通信接口106可以被配置为web浏览器。与其他实体的交互可以包括在实体之间以各种形式(例如,电子邮件、即时消息、文本消息等)发送和接收电子消息,从其他实体获得资源(例如,内容和服务),从在线应用商店(app store 118)访问和/或下载各种应用程序104,等等。在一些示例中,客户端102包括应用商店界面108,其说明可操作以允许客户端访问应用商店118的软件模块、系统或设备,通过该应用商店118可以使各种应用程序104可供客户端102使用。
在一个示例中,使用户能够从应用商店118选择和下载的应用程序104包括生产力应用,诸如办公室生产力套件、会计软件、图形应用、游戏应用、数据库程序以及任何数量的其他类型的应用程序。用户与之交互的应用数据的示例包括文字处理文档、电子表格、数据库、照片、游戏环境等。用户可以利用客户端102上的应用程序104来执行各种任务,其可以包括例如编写,计算,绘制,组织,准备和查看演示文稿,发送和接收电子邮件,做笔记和组织笔记,制作音乐等。应用程序104可以包括胖客户端应用程序,其可以本地存储在客户端102上(如图1所示),或者可以包括可以驻留在远程服务器上并且可以通过网络112或网络的组合(例如,因特网、广域网、局域网)访问的瘦客户端应用程序(即,web应用程序)。瘦客户端应用程序可以托管在浏览器控制的环境中,或者以浏览器支持的语言编码,并且依赖于公共web浏览器以在客户端102上呈现应用程序可执行文件。
应用商店界面108可以以各种方式实现,以便于访问和导航应用程序104的数据库,选择和/或购买应用程序,以及将应用程序下载到客户端102。在一些示例中,应用商店界面108实现为独立的客户端应用程序和/或通信接口106的组件,例如实现为web浏览器的插件。应用商店界面108还可以实现为web托管的应用,客户端102可以通过网络(例如,“在云中”)与服务提供者一起访问和运行。因此,应用商店界面108可以以不同的方式实现,用于可以具有不同配置和能力的不同客户端设备。
应用程序开发者(即,服务提供者114)经常将beta软件或测试版本的应用程序发布给有限的或有时无限的用户组以用于测试目的。也就是说,通常,开发者将在商业发布应用程序之前发布测试版本,以便beta或测试用户可以测试功能并向开发者报告他们在应用程序中遇到的任何主要或次要错误或问题。因此,在向公众商业发布最终版本的应用程序之前,开发者能够解决应用程序的任何问题。
然而,传统的应用商店118不允许开发者(即,服务提供者114)发布应用程序104的测试版本以供第三方用户110访问。也就是说,应用商店118可以允许开发者发布应用程序104的测试版本,用于内部分发给服务提供者114的选定数量的设备以用于测试目的,但禁止服务提供者将应用程序的测试版本分发给第三方用户110。如上所述,通常,服务提供者114与外部服务124形成伙伴关系,用于开发将外部服务的功能与应用程序的功能集成的应用程序104。因此,期望使得与外部服务124相关联的用户(即,第三方用户110)能够在使公众与集成特征交互之前测试应用程序104的集成功能,例如,以测试和修复任何错误或不准确,以便应用程序在商业发布时将以最佳方式执行。
根据示例,应用程序104可操作以实现与一个或多个外部服务功能120的交互。在一个示例中,应用程序104通过诸如因特网的网络112与外部服务124交互,以允许用户利用外部服务124提供的功能。可以与例如生产力应用的应用程序104集成的外部服务功能120的一个示例提供使用户能够将文档保存到与外部服务124相关联的基于web的存储站点或者直接从应用程序104访问存储在与外部服务124相关联的基于web的存储站点中的文档的功能项。外部服务功能120可以与服务提供者114(应用程序104的提供者)与第三方服务之间的伙伴关系相关联。应当意识到,以上示例不旨在是限制性的,并且与可以利用应用程序104启用的外部服务功能120的许多其他示例的交互在本公开的范围内。
根据一个方面,可以不自动启用与外部服务功能120的交互。例如,当从应用商店118下载生产力应用104时,应用程序104可以不包括用于使应用程序104能够与外部服务功能120交互的界面,或者可以包括外部服务功能接口126,但是可以需要额外的资源122以使能界面的使用。在一些示例中,与外部服务功能120的交互旨在对一般用户公开不可用,并且需要资源122(例如,界面、内容、元数据)以使能与特征120的交互。资源122可以远程定位在服务提供者服务器114上,或者可以包括在应用程序104中。在一个示例中,客户端102通过网络112(例如因特网)与服务提供者服务器114通信地耦合,可以从服务提供者服务器114接收资源122。服务提供者服务器114可以通过一个或多个服务器计算设备来实现。
在一些示例中,服务提供者114包括资源管理器116。资源管理器116被示出为具有可操作以管理可通过网络112获得的各种资源122的软件模块、系统或设备。在一个示例中,资源管理器116管理用于与生产力应用104内的外部服务功能120交互的外部服务功能接口126。在另一个示例中,资源管理器116管理用于使得能够在生产力应用104中预加载的外部服务功能接口126的元数据。在另一个示例中,资源管理器116管理通过网络112提供内容。例如,资源管理器116用于提供服务目录,该服务目录包括与外部服务功能120相关联的外部服务124的列表,生产力应用104能够与外部服务功能120进行交互。
根据示例,除了与被锁定或不可公开访问的外部服务功能120相关联的资源之外,由资源管理器116管理的资源122还包括与公共可用外部服务功能120相关联的一些资源,例如测试或beta功能。根据一个方面,对与锁定或不可公开访问的外部服务功能120相关联的资源的访问需要访问许可,例如密钥。
根据一个方面,资源管理器116用于从生产力应用104接收请求,其中该请求提供对提供资源122以与外部服务功能120交互的指示。例如,该请求可以包括标志,其通知资源管理器116将指定资源122返回给应用程序。在一个示例中,该请求向资源管理器116提供对返回用于启用预加载的外部服务功能接口126的元数据的指示。在另一示例中,该请求向资源管理器116提供返回外部服务功能接口126以启用与外部服务功能120的交互的指示。在另一个示例中,该请求向资源管理器116提供对返回由请求指示的内容的指示,例如包括测试或beta版外部服务功能的特定外部服务目录。
在各个方面,应用程序104包括反馈界面128,其操作以从应用程序104的用户接收反馈,并将所接收的反馈发送到服务提供者114。例如,应用程序104的客户或用户通常利用反馈界面128向应用程序开发者(即,服务提供者114)提供反馈,用于传达用户对应用程序的意见,用户对应用程序的体验,或者开发者可用于改进应用程序104的其他信息。图4中示出了示例反馈界面128,并且将在下面进一步详细描述。
根据一个方面,诸如反馈界面128之类的指定界面用于接收全局唯一标识符(GUID)输入,其中GUID可用作启用外部服务功能120的密钥。GUID是服务提供者114和用户之间的共享密钥。根据示例,用户与外部服务124相关联,例如负责测试生产力应用104中的外部服务功能120的交互功能项的开发者或测试者。GUID可以是服务提供者114与用户之间的多个共享GUID之一。
在一个示例中,GUID充当应用程序104的触发器,以向服务提供者114发出信号,用于请求指定资源122以基于输入GUID而与外部服务功能120交互。根据一个方面,可以存在与不同的外部服务功能120相关联的多个GUID。例如,并且如图2A和5A所示,响应于在指定的界面中接收GUID的输入(例如,反馈界面128),用于选择启用外部服务功能120的功能项204显示在应用程序用户界面202中。生产力应用104用于接收对启用外部服务功能120的选择的指示,例如通过选择功能项204,并且作为响应,发送启用外部服务功能120的请求。
作为响应,资源管理器116用于向应用程序104发送响应,该响应包括关联于与外部服务功能120交互的资源122。例如,资源122使应用程序104能够通过以下方式与外部服务功能120交互:在生产力应用104内提供用于与外部服务功能120交互的界面。在一个示例中,界面126使生产力应用104能够与第三方服务(例如测试或beta版服务)交互,从而允许用户110在公开发布之前测试该特征。
在另一示例中,GUID是禁用与外部服务功能120的交互的指定GUID。例如,用户110可以将指定的GUID输入到指定的界面以关闭与测试特征的交互并使应用程序返回到正常状态。在一个示例中,当在反馈界面128中输入与禁用与外部服务功能120的交互相关联的GUID时,应用程序104可操作以向服务提供者114发送针对与发布或公开可用特征的交互相关联的资源122(例如,内容、元数据)的请求。
图2A-B示出了示例应用程序用户界面显示,其示出了用户在不利用本公开的各方面的情况下可能经历的内容。现在参考图2A,示出了示例应用程序用户界面显示202。此外,图2A示出了用户在选择用于选择外部服务功能的功能项204。用户被示出为在选择“添加地点”功能项204以选择在线文档存储服务帐户以使用户能够从应用程序104打开,创建,编辑并保存文件回到存储服务。
在选择“添加地点”功能204时,生产力应用104可操作以与服务提供者114通信以接收数据(即,资源122),例如包括在线文档存储服务的服务目录。现在参考图2B,更新应用程序用户界面显示202以显示生产力应用能够与其进行交互的外部服务功能120a,b的列表206。例如,在所示示例中,外部服务功能120a,b是集成的在线文档存储服务208a,b,其可公开地用于应用程序104。
图3-5B示出了应用程序用户界面显示的序列,其示出了用户110利用本公开的各方面可以体验的内容。现在参考图3,用户110被示出为选择用于显示指定界面的命令302,例如反馈界面128。例如,示例应用程序用户界面显示202由从应用商店118下载到计算设备102的应用程序104提供。
在选择控件302时,应用程序104更新用户界面显示200以显示指定界面(例如,反馈界面128),如图4所示。根据一个方面并如图所示,使用户110能够将GUID 402输入到反馈界面128中,其中GUID是服务提供者114与用户110之间的共享密钥。根据示例,GUID 402可操作为用于授予用户对资源122的访问以用于与外部服务功能120交互的密钥。
现在参考图5A,响应于在指定界面(例如,反馈界面128)中接收GUID402的输入,在应用程序用户界面202中显示用于选择启用外部服务功能120的功能项204。如图5A所示,用户110选择功能项204以启用外部服务功能120,其中生产力应用104可操作以接收对选择的指示。作为响应,生产力应用104发送启用外部服务功能120的请求。在一个示例中,生产力应用104包括基于输入的GUID 402的标记以及对资源122的请求。因此,服务提供者114是可操作以接收对资源122的请求,以使生产力应用104能够与外部服务功能120交互。
现在参考图5B,更新应用程序用户界面显示202以显示生产力应用能够与其进行交互的外部服务功能120的列表206。如图所示,响应于接收使得应用程序104能够与附加外部服务功能120c交互的资源122,将附加外部服务功能120c添加到列表206。因此,用户110能够选择外部服务功能120c并与该功能交互。例如,用户110能够在向公众发布功能之前经由生产力应用104与外部服务功能120交互。
已经参考图1-5B描述了操作环境和各种用户界面显示示例,图6是示出用于使生产力应用能够与外部服务功能交互的示例方法600中涉及的一般阶段的流程图。方法600在操作602处开始并且前进到操作604,其中生产力应用104从应用商店118下载到计算设备102。例如,生产力应用104可以是各种类型的应用程序之一,例如文字处理应用程序、电子表格应用程序、幻灯片演示应用程序等。
方法600前进到操作606,其中用户110打开生产力应用104,然后进行到操作608,其中用户经由指定的界面(例如反馈用户界面128)将共享的GUID 402输入到应用程序中,如图4所示。响应于接收到GUID 402,方法600前进到操作610,其中显示功能项204以供选择以启用外部服务功能120,例如,如图5A所示。根据示例,生产力应用104确定输入GUID 402是否有效以及输入GUID 402与哪个外部服务功能120相关联。例如,可以输入不同的GUIDS402以启用与特定外部服务功能120的交互或禁用特定外部服务功能120。
在操作612,接收对启用外部服务功能120的选择的指示,并且作为响应,方法600前进到操作614,其中发送启用外部服务功能120的请求。根据示例,该请求提供对提供资源122以与外部服务功能120交互的指示。例如,该请求提供对提供用于启用预加载的外部服务功能接口126的元数据的指示。在另一示例中,该请求提供对提供外部服务功能接口126以启用与外部服务功能120的交互的指示。在另一示例中,该请求提供对提供由请求指示的内容的指示,例如包括测试或beta版外部服务功能的特定外部服务目录。
方法600前进到操作616,其中生产力应用104接收关联于与外部服务功能120交互相关联的资源122。方法600继续到操作618,其中通过在生产力应用内提供外部服务功能接口126来启用经由生产力应用104与外部服务功能120的交互。根据示例,界面126使生产力应用104能够与第三方服务(例如测试或beta版服务)交互,从而允许用户110在公开发布之前测试该功能。方法600在操作698结束。
虽然已经在与在计算机上的操作系统上运行的应用程序一起执行的程序模块的一般上下文中描述了实现方式,但是本领域技术人员将认识到各方面也可以与其他程序模块组合地实现。通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。
本文所描述的方面和功能可以通过许多计算系统来操作,包括但不限于台式计算机系统,有线和无线计算系统,移动计算系统(例如,移动电话,上网本,平板电脑或平板式计算机,笔记本计算机和膝上型电脑),手持设备,多处理器系统,基于微处理器或可编程的消费电子产品,小型计算机和大型计算机。
此外,根据一个方面,本文描述的方面和功能可以在分布式系统(例如,基于云的计算系统)上操作,其中应用功能项、存储器、数据存储和检索以及各种处理功能通过分布式计算网络(如因特网或内联网)相互远程地操作。根据一个方面,通过板载计算设备显示器或通过与一个或多个计算设备相关联的远程显示单元来显示各种类型的用户界面和信息。例如,各种类型的用户界面和信息被显示在壁面上并且在壁面上进行交互,在壁面上投影有各种类型的用户界面和信息。与实践实现方式的多个计算系统的交互包括:按键输入,触摸屏输入,语音或其他音频输入,其中相关联的计算设备配备有用于捕获和解释用户手势以用于控制计算设备的功能项的检测(例如,照相机)功能项的手势输入,等等。
图7-9和相关描述提供了对其中实践示例的各种操作环境的讨论。然而,关于图7-9示出和讨论的设备和系统是出于示例和说明的目的,而不是限制用于实践本文所述方面的大量计算设备配置。
图7是示出可以实施本公开的示例的计算设备700的物理组件(即,硬件)的框图。在基本配置中,计算设备700包括至少一个处理单元702和系统存储器704。根据一个方面,根据计算设备的配置和类型,系统存储器704包括但不限于易失性存储器(例如,随机存取存储器)、非易失性存储器(例如,只读存储器)、闪速存储器或这种存储器的任何组合。根据一个方面,系统存储器704包括操作系统705和适于运行软件应用程序104的一个或多个程序模块706。根据一个方面,系统存储器704包括应用程序104。例如,操作系统705适合于控制计算设备700的操作。此外,各方面结合图形库、其他操作系统或任何其他应用程序来实施,并且不限于任何特定应用或系统。该基本配置在图7中由虚线708中的那些组件示出。根据一方面,计算设备700具有附加功能或功能项。例如,根据一个方面,计算设备700包括例如磁盘、光盘或磁带之类的附加数据存储设备(可移动和/或不可移动)。图7中通过可移动存储设备709和不可移动存储设备710示出了这种附加存储。
如上所述,根据一个方面,多个程序模块和数据文件被存储在系统存储器704中。当在处理单元702上执行时,程序模块706(例如,应用程序104)执行包括但不限于图6中所示的方法600中的一个或多个阶段的处理。根据一个方面,可以按照示例使用其他程序模块,其他程序模块包括诸如电子邮件和通讯录应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用程序等应用。
根据一个方面,各方面在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路或包含电子元件或微处理器的单个芯片上实现。例如,通过片上系统(SOC)实现各方面,其中图7中所示的每个或许多组件集成到单个集成电路上。根据一个方面,这种SOC设备包括一个或多个处理单元、图形单元、通信单元、系统虚拟化单元和各种应用功能项,它们都作为单个集成电路集成(或“烧录”)到芯片基板上。当通过SOC操作时,本文描述的功能项通过与计算设备700的其他组件集成到单个集成电路(芯片)上的专用逻辑来操作。根据一个方面,本公开的方面使用能够执行诸如与(AND)、或(OR)和非(NOT)的逻辑操作的其他技术来实施,包括但不限于机械、光学、流体和量子技术。此外,各方面在通用计算机或任何其他电路或系统中实施。
根据一个方面,计算设备700具有一个或多个输入设备712,诸如键盘、鼠标、笔、声音输入设备、触摸输入设备等。根据一个方面,还包括输出设备714,如显示器、扬声器、打印机等。上述设备是示例,并且可以使用其他设备。根据一方面,计算设备700包括允许与其他计算设备718进行通信的一个或多个通信连接716。合适的通信连接516的示例包括但不限于:射频(RF)发射器、接收器和/或收发器电路;通用串行总线(USB),并行和/或串行端口。
本文使用的术语计算机可读介质包括计算机存储介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构或程序模块的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器704、可移动存储设备709和非可移动存储设备710都是计算机存储介质示例(即,存储器存储)。根据一个方面,计算机存储介质包括RAM、ROM、电可擦除可编程只读存储器(EEPROM)、闪速存储器或其他存储器技术,CD-ROM,数字通用盘(DVD)或其他光存储器,磁带盒,磁带,磁盘存储或其他磁存储设备,或任何其他可以用于存储信息并且可以由计算设备700访问的制品。根据一个方面,任何这样的计算机存储介质是计算设备700的一部分。计算机存储介质不包括载波或其他传播的数据信号。
根据一个方面,通信介质由计算机可读指令、数据结构、程序模块或诸如载波或其他传输机制的调制数据信号中的其他数据来实现,并且包括任何信息传递介质。根据一个方面,术语“调制数据信号”描述了以对信号中的信息进行编码的方式设置或改变一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接的有线介质,以及诸如声学、射频(RF)、红外和其它无线介质的无线介质。
图8A和8B示出了可以实践各方面的移动计算设备800,例如移动电话、智能电话、平板个人计算机、膝上型计算机等。参考图8A,示出了用于实现各方面的移动计算设备800的示例。在基本配置中,移动计算设备800是具有输入元件和输出元件的手持式计算机。移动计算设备800通常包括显示器805和允许用户将信息输入到移动计算设备800中的一个或多个输入按钮810。根据一个方面,移动计算设备800的显示器805用作输入设备(例如,触摸屏显示器)。如果包括,可选的侧面输入元件815允许进一步的用户输入。根据一方面,侧面输入元件815是旋转开关、按钮或任何其它类型的手动输入元件。在替代示例中,移动计算设备800包含更多或更少的输入元件。例如,在一些示例中,显示器805可以不是触摸屏。在替代示例中,移动计算设备800是诸如蜂窝电话的便携式电话系统。根据一个方面,移动计算设备800包括可选的小键盘835。根据一个方面,可选的小键盘835是物理小键盘。根据另一方面,可选的小键盘835是在触摸屏显示器上产生的“软”小键盘。在各个方面,输出元件包括用于显示图形用户界面(GUI)、视觉指示器820(例如,发光二极管)和/或音频换能器825(例如扬声器)的显示器805。在一些示例中,移动计算设备800包括用于向用户提供触觉反馈的振动换能器。在又一示例中,移动计算设备800包输入和/或输出端口,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口)用于向外部设备发送信号或从外部设备接收信号。在又一示例中,移动计算设备800包含外围设备端口840,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,HDMI端口)用于向外部设备发送信号或从外部设备接收信号。
图8B是示出移动计算设备的一个示例的体系结构的框图。也就是说,移动计算设备800包括实现一些示例的系统(即,体系结构)802。在一个示例中,系统802被实现为能够运行一个或多个应用(例如浏览器,电子邮件,日历,通讯录管理器,消息传递客户端,游戏和媒体客户端/播放器)的“智能电话”。在一些示例中,系统802被集成为诸如集成个人数字助理(PDA)和无线电话之类的计算设备。
根据一个方面,将一个或多个应用程序104加载到存储器862中并在操作系统864上或与操作系统864相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(PIM)程序、文字处理程序、电子表格程序、因特网浏览器程序、消息传递程序等。根据一个方面,应用程序104被加载到存储器862中。系统802还包括存储器862内的非易失性存储区域868。非易失性存储区域868用于存储持久信息,如果系统802断电,则持久信息不会丢失。应用程序850可以使用信息且将信息存储在非易失性存储区域868中,诸如电子邮件或由电子邮件应用使用的其它消息等。同步应用(未示出)也驻留在系统802上,并且被编程为与驻留在主计算机上的对应的同步应用进行交互,以将存储在非易失性存储区域868中的信息与存储在主计算机上的对应信息同步。应当意识到,其他应用可以被加载到存储器862中并在移动计算设备800上运行。
根据一个方面,系统802具有电源870,电源870被实现为一个或多个电池。根据一方面,电源870还包括外部电源,例如AC适配器或用于补充或对电池再充电的电源对接支架。
根据一个方面,系统802包括执行发送和接收射频通信的功能的无线电872。无线电872促进通过通信运营商或服务提供商在系统802和“外界”之间的无线连接。发送到无线电872以及自无线电872发送是在操作系统864的控制下进行的。换句话说,无线电872接收到的通信可以经由操作系统864传播到应用程序850,反之亦然。
根据一个方面,视觉指示器820用于提供视觉通知和/或音频接口874用于经由音频换能器825产生可听的通知。在所示示例中,视觉指示器820是发光二极管(LED),音频换能器825是扬声器。这些设备可以直接耦合到电源870,使得当被激活时,即使处理器860和其他组件可能关闭以保持电池电力,它们也在由通知机制规定的持续时间内保持接通。LED可能被编程为无限期地接通,直到用户采取动作来指示设备的加电状态。音频接口874用于向用户提供可听见的信号并从其接收可听见的信号。例如,除了耦合到音频换能器825之外,音频接口874还可以耦合到麦克风以接收可听的输入,诸如促进电话对话。根据一个方面,系统802还包括视频接口876,其使得板载照相机830的操作能够记录静止图像、视频流等。
根据一个方面,实现系统802的移动计算设备800具有附加的功能或功能项。例如,移动计算设备800包括诸如磁盘、光盘或磁带的附加数据存储设备(可移动和/或不可移动)。这种附加存储在图8B中由非易失性存储区868示出。
根据一个方面,由移动计算设备800生成或捕获且经由系统802存储的数据/信息被本地存储在移动计算设备800上,如上所述。根据另一方面,数据可以存储在可由设备经由无线电872或者经由移动计算设备800与关联移动计算设备800的单独的计算设备(例如,诸如因特网的分布式计算网络中的服务器计算机)之间的有线连接访问的任意数量的存储介质上。应当理解的是,这些数据/信息可以通过移动计算设备800经由无线电872或者经由分布式计算网络来访问。类似地,根据一个方面,根据公知的数据/信息传输和存储手段,包括电子邮件和协作数据/信息共享系统,这些数据/信息可轻易地在计算设备之间传输以便存储和使用。
图9示出了用于使生产力应用能够与如上所述的外部服务功能交互的系统的体系结构的一个示例。与应用程序104相关联地开发,交互或编辑的内容能够存储在不同的通信信道或其他存储类型中。例如,可以使用目录服务922、网络门户924、邮箱服务926、即时消息存储库928或社交网络站点930来存储各种文档。应用程序104可操作以使用这些类型的系统等中的任何一种,以使生产力应用能够与外部服务功能交互,如本文所述。根据一个方面,服务器920将应用程序104提供给客户端905a,b,c。作为一个示例,服务器920是通过web提供应用程序104的web服务器。服务器920通过网络940在web上向客户端905提供应用程序104。作为示例,客户端计算设备被实现并体现在个人计算机905a、平板计算设备905b或移动计算设备905c(例如,智能手机)中或其他计算设备。客户端计算设备的这些示例中的任一个均可以从存储库916获得内容。
根据各方面,上面参照方法、系统和计算机程序产品的框图和/或操作说明来描述例如实现方式。框中记载的功能/动作可以按照任何流程图所示的顺序发生。例如,取决于所涉及的功能项/动作,连续示出的两个框实际上可以基本同时执行,或者有时可以以相反的顺序执行框。
在本申请中提供的一个或多个示例的描述和说明不旨在以任何方式限制或限缩所要求保护的本发明的范围。在该申请中提供的方面、示例和细节被视为足以传达所有权以及使得其他技术人员能够实现和使用所要求保护的发明的最佳方式。实现方式不应被解释为限于本申请中提供的任何方面、示例或细节。无论是组合地或者单独地显示和描述,各个特征(结构上的和方法上的)都意在被选择性地包含或省去以产生具有特定特征集合的示例。已经提供了本申请的描述和说明,本领域技术人员可以设想落入在本申请体现的总的发明构思的较宽方面的精神内的、没有脱离该较宽范围的变型例、修改例和可选的示例。

Claims (15)

1.一种用于使生产力应用能够与外部服务功能交互的计算机实现的方法,包括:
在生产力应用的指定界面中接收第一全局唯一标识符(GUID)的输入;
响应于接收到第一GUID,显示用于选择以启用所述外部服务功能的功能项;
接收对启用所述外部服务功能的选择的指示;
发送启用所述外部服务功能的请求,其中所述请求提供对提供用于与所述外部服务功能交互的资源的指示;
接收关联于与所述外部服务功能交互的所述资源;
通过在所述生产力应用内提供用于与所述外部服务功能交互的界面,启用与所述外部服务功能的交互;
在所述生产力应用的所述指定界面中接收第二GUID的输入;以及
基于接收到的第二GUID,禁用与所述外部服务功能的交互。
2.如权利要求1所述的方法,其中,在生产力应用的指定界面中接收所述第一GUID的输入包括在反馈界面中接收所述第一GUID,所述反馈界面旨在向所述生产力应用的开发者传达用户对所述生产力应用的意见或用户对所述生产力应用的体验。
3.如权利要求1所述的方法,其中发送启用所述外部服务功能的所述请求包括通过网络将所述请求发送到与所述生产力应用相关联的服务提供者。
4.如权利要求1所述的方法,其中在生产力应用的指定界面中接收所述第一GUID的输入之前,从应用商店下载所述生产力应用,其中所述生产力应用包括用于与所述外部服务功能交互的预加载的锁定界面。
5.如权利要求1所述的方法,其中在生产力应用的指定界面中接收所述第一GUID的输入之前,从与所述生产力应用相关联的服务提供者接收所述第一GUID。
6.一种用于使生产力应用能够与外部服务功能交互的系统,所述系统包括计算设备,所述计算设备包括:
至少一个处理设备;以及
存储指令的至少一个计算机可读数据存储设备,当由所述至少一个处理设备执行时,所述指令能够操作以提供生产力应用,用于:
在所述生产力应用的指定界面中接收第一服务提供者提供的密钥的输入;
响应于接收到所述第一服务提供者提供的密钥,显示用于选择以启用外部服务功能的功能项;
接收对启用所述外部服务功能的选择的指示;
发送启用所述外部服务功能的请求,其中所述请求提供对提供用于与所述外部服务功能交互的资源的指示;
接收关联于与所述外部服务功能交互的所述资源;
通过在所述生产力应用内提供用于与所述外部服务功能交互的界面,启用与所述外部服务功能的交互;
在所述生产力应用的所述指定界面中接收服务提供者提供的第二密钥;以及
基于接收到的服务提供者提供的第二密钥,禁用与所述外部服务功能的交互。
7.如权利要求6所述的系统,其中所述生产力应用的指定界面是反馈界面,所述反馈界面旨在向所述生产力应用的开发者传达用户对所述生产力应用的意见或用户对所述生产力应用的体验。
8.如权利要求6所述的系统,其中在发送启用所述外部服务功能的请求时,所述生产力应用能够操作以通过网络将所述请求发送到服务提供者。
9.如权利要求8所述的系统,其中在接收关联于与所述外部服务功能交互的所述资源时,所述生产力应用能够操作以接收用于启用利用所述生产力应用与所述外部服务功能交互的界面。
10.如权利要求9所述的系统,其中,所述界面是由外部服务开发的应用编程接口。
11.如权利要求6所述的系统,其中所述生产力应用包括用于与所述外部服务功能交互的预加载的锁定界面。
12.如权利要求11所述的系统,其中,接收关联于与所述外部服务功能交互的所述资源包括接收用于解锁预加载的锁定界面以启用与所述外部服务功能的交互的代码。
13.如权利要求6所述的系统,其中所述生产力应用能够操作以从服务提供者接收服务提供者提供的多个密钥,其中所述服务提供者提供的多个密钥中的一个是所述服务提供者提供的第二密钥。
14.如权利要求6所述的系统,其中所述外部服务功能是预发布第三方服务功能。
15.一种计算机可读存储设备,包括计算机可读指令,当由处理单元执行时,其能够操作以:
在生产力应用的反馈界面中接收服务提供者提供的全局唯一标识符(GUID)的输入,所述反馈界面被配置为接收用户对所述生产力应用的意见或用户对所述生产力应用的体验,并且向所述生产力应用的开发者提供所述用户的意见;
响应于接收所述服务提供者提供的GUID,显示用于选择以启用第三方服务功能的功能项;
接收对启用所述第三方服务功能的选择的指示;
发送启用所述第三方服务功能的请求,其中所述请求提供对提供用于与所述第三方服务功能交互的资源的指示,所述资源包括以下之一:
用于与所述生产力应用内的所述第三方服务功能交互的界面;或者
用于解锁所述生产力应用中的预加载的锁定界面的代码;
接收关联于与所述第三方服务功能交互的资源;以及
通过在所述生产力应用内提供用于与所述第三方服务功能交互的所述界面,启用经由所述生产力应用而与所述第三方服务功能的交互。
CN201780038360.2A 2016-06-22 2017-06-15 实现与外部功能的交互 Active CN109313589B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/190,091 2016-06-22
US15/190,091 US10310718B2 (en) 2016-06-22 2016-06-22 Enabling interaction with an external service feature
PCT/US2017/037576 WO2017222901A1 (en) 2016-06-22 2017-06-15 Enabling interaction with an external service feature

Publications (2)

Publication Number Publication Date
CN109313589A CN109313589A (zh) 2019-02-05
CN109313589B true CN109313589B (zh) 2022-09-06

Family

ID=59270131

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780038360.2A Active CN109313589B (zh) 2016-06-22 2017-06-15 实现与外部功能的交互

Country Status (4)

Country Link
US (1) US10310718B2 (zh)
EP (1) EP3475821A1 (zh)
CN (1) CN109313589B (zh)
WO (1) WO2017222901A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10192199B2 (en) 2011-11-16 2019-01-29 Microsoft Technology Licensing, Llc Enabling service features within productivity applications
US11599826B2 (en) 2020-01-13 2023-03-07 International Business Machines Corporation Knowledge aided feature engineering
US11294648B2 (en) * 2020-05-22 2022-04-05 Salesforce.Com, Inc. Application development architecture for mobile applications
US11474793B2 (en) 2020-05-22 2022-10-18 Salesforce.Com, Inc. Polymorphic application architecture

Family Cites Families (34)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CA2808275C (en) * 2000-06-22 2016-11-15 Microsoft Corporation Distributed computing services platform
IL160342A0 (en) 2001-08-15 2004-07-25 Qualcomm Inc Test enabled application execution
US7516440B2 (en) 2001-10-18 2009-04-07 Bea Systems, Inc. System and method for providing a java interface to an application view component
US6606460B2 (en) * 2001-12-21 2003-08-12 Kabushiki Kaisha Toshiba Apparatus having a help function, image-forming apparatus, and method and program for displaying help information
US8176334B2 (en) 2002-09-30 2012-05-08 Guardian Data Storage, Llc Document security system that permits external users to gain access to secured files
US7831515B2 (en) * 2003-08-05 2010-11-09 Intraware. Inc. Method and system for subscription-based, entitlement-driven license key generation and distribution for digital goods
US7725605B2 (en) 2004-08-06 2010-05-25 Salesforce.Com, Inc. Providing on-demand access to services in a wide area network
US7849329B2 (en) * 2004-09-01 2010-12-07 Microsoft Corporation Licensing the use of a particular feature of software
US8566298B1 (en) * 2005-07-28 2013-10-22 Symantec Operating Corporation Method and apparatus for sharing resource locks amongst applications
CN101390032A (zh) * 2006-01-05 2009-03-18 眼点公司 用于存储、编辑和共享数字视频的系统和方法
JP2008211379A (ja) * 2007-02-23 2008-09-11 Fujitsu Ltd 表示制御プログラムおよび携帯端末装置
US8555176B2 (en) * 2007-03-12 2013-10-08 Microsoft Corporation Third party menus for enabling collaboration
US8774825B2 (en) * 2007-06-28 2014-07-08 Apple Inc. Integration of map services with user applications in a mobile device
CA2751554C (en) * 2009-02-05 2015-07-21 Wwpass Corporation Centralized authentication system with safe private data storage and method
US8306504B1 (en) * 2009-12-17 2012-11-06 Sprint Communications Company L.P. Determining access to a feature of a mobile device
US20130024394A1 (en) * 2010-03-31 2013-01-24 Rakuten, Inc. Server apparatus, reaction transmitting program, recording medium having computer-readable reaction transmitting program recorded thereon, terminal device, reaction counting method, and reaction counting system
US8918854B1 (en) * 2010-07-15 2014-12-23 Proxense, Llc Proximity-based system for automatic application initialization
US8800050B2 (en) 2010-11-09 2014-08-05 Microsoft Corporation Security system for computing resources pre-releases
US8577334B1 (en) * 2011-06-16 2013-11-05 Sprint Communications Company L.P. Restricted testing access for electronic device
US20130080603A1 (en) * 2011-09-27 2013-03-28 Microsoft Corporation Fault Tolerant External Application Server
US10192199B2 (en) * 2011-11-16 2019-01-29 Microsoft Technology Licensing, Llc Enabling service features within productivity applications
CN103209200B (zh) * 2012-01-16 2017-06-23 上海耀诚通信科技有限公司 云服务交换系统及服务查询和交换方法
US8955067B2 (en) * 2012-09-12 2015-02-10 Capital One, Na System and method for providing controlled application programming interface security
US8887181B1 (en) * 2012-09-25 2014-11-11 Amazon Technologies, Inc. Application add-on platform
US9313203B2 (en) * 2013-03-15 2016-04-12 Symantec Corporation Systems and methods for identifying a secure application when connecting to a network
US9645914B1 (en) 2013-05-10 2017-05-09 Google Inc. Apps store with integrated test support
US20150032509A1 (en) 2013-07-29 2015-01-29 SR Solutions, Inc. Gathering user information based on user interactions
US9785760B2 (en) * 2013-11-14 2017-10-10 Adobe Systems Incorporated Method and apparatus for managing software entitlements
US9087156B2 (en) 2013-11-15 2015-07-21 Google Inc. Application version release management
CN103763091B (zh) * 2014-01-09 2017-11-07 广东欧珀移动通信有限公司 一种应用程序加密、解密方法及加密、解密装置
US9826045B2 (en) * 2014-09-26 2017-11-21 Oracle International Corporation Efficient means to test server generated applications on mobile device
US20170046531A1 (en) * 2015-08-14 2017-02-16 Strong Bear Llc Data encryption method and system for use with cloud storage
US20170083292A1 (en) * 2015-09-18 2017-03-23 Amazon Technologies, Inc. Visual content development
CN105677330B (zh) * 2015-12-31 2019-04-19 杭州华为数字技术有限公司 一种用户交互提供方法及装置

Also Published As

Publication number Publication date
US10310718B2 (en) 2019-06-04
CN109313589A (zh) 2019-02-05
US20170371521A1 (en) 2017-12-28
EP3475821A1 (en) 2019-05-01
WO2017222901A1 (en) 2017-12-28

Similar Documents

Publication Publication Date Title
US9578114B2 (en) External service application discovery method
US20170185573A1 (en) Memory conserving versioning of an electronic document
US8892601B2 (en) Creating web applications using cloud-based friction-free databases without requiring web hosting knowledge
US20160342665A1 (en) Interactive command line for content creation
CN104769581B (zh) 用于提供经链接的笔记记录的系统和方法
TW201346596A (zh) 使用文件註解來追蹤共同編輯之衝突
US9171099B2 (en) System and method for providing calculation web services for online documents
CN109313589B (zh) 实现与外部功能的交互
US20140372369A1 (en) Managing Changes to Shared Electronic Documents Using Change History
US10997253B2 (en) Contact creation and utilization
US20130290851A1 (en) User interface web services
US11036712B2 (en) Latency-reduced document change discovery
US11080243B2 (en) Synchronizing virtualized file systems
KR102368945B1 (ko) 외부 콘텐츠 아이템과의 인코딩된 연관을 제공하는 기법
US10678809B2 (en) Synchronizing non-file content stored on a collaborative workspace environment
US9563713B2 (en) Automatic mobile application redirection
US20180121406A1 (en) Embedded service provider display for a collaborative workspace environment
US11496453B2 (en) Binary experimentation on running web servers
US20180007133A1 (en) Server-to-server content distribution

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant