JAVA商店制造技术

技术编号:15724166 阅读:354 留言:0更新日期:2017-06-29 09:29
本申请涉及JAVA商店。具体而言,公开了一种计算机可读介质包括使计算机系统执行一种方法的计算机可读代码。该方法包括:接收应用程序;接收应用程序的应用信息;以及部分地基于应用信息来确定对应用程序的访问特权。该方法还包括:使用应用程序和访问特权,生成应用程序的部署软件包;和发布所述应用程序。

【技术实现步骤摘要】
JAVA商店本申请是申请日为2010年5月24日、专利技术名称为“JAVA商店”的中国专利申请201080022852.0的分案申请。相关申请的交叉引用本申请要求在35U.S.C.§119(e)下于2009年5月29日在BernardA.Traversat、JonathanI.Schwartz、JamesA.Gosling、JoshuaM.Marinacci、MichaelJ.Duigou、HenryJen、MohamedM.Abdelaziz、BrianGoetz、AnantK.Mithal、DusanPalvica、JeanYao、GemmaWatson、EricN.Klein、Jr.,OctavianTanase、JohnE.Muhlner、AurelioGarcia-Ribeyro、及ThomasV.Ng的名下提交的标题为“Java商店”的美国临时专利申请No.61/182,303的优先权,该临时专利申请的全部内容在此通过引用而并入。
本申请涉及JAVA商店。具体而言,涉及用于发布应用程序的方法和系统。
技术介绍
软件开发人员在全国、甚至在全世界正在不断地创建新的应用程序。软件开发可以使用各种平台来完成,这些平台包括但不限于JavaTM和JavaFXTM(和是由SunMicrosystems,Inc.,MountainView,CA.拥有的注册商标)。当开发新的应用程序时,开发人员必须寻找一种途径,使得所述应用程序可用于对它感兴趣的那些用户。这可以例如通过征求可能对这样一种应用程序感兴趣的用户来完成。开发人员例如可以经由可拆卸存储设备,如CD-ROM,来分发应用程序的拷贝。
技术实现思路
一般地,在一个方面,本专利技术涉及一种计算机可读介质,该计算机可读介质包括使计算机系统执行一种方法的计算机可读代码。所述方法包括:接收应用程序;接收应用程序的应用信息;及部分地基于应用信息来确定对应用程序的访问特权。所述方法还包括:使用应用程序和访问特权来生成应用程序的部署软件包,并发布所述应用程序。一般地,在一个方面,本专利技术涉及一种用于发布应用程序的系统。所述系统包括处理器和存储器,该存储器包括能够由处理器执行的计算机可读代码,该计算机可读代码被配置成接收应用程序和应用程序的应用信息。所述计算机可读代码还被配置成:部分地基于应用信息来确定对应用程序的访问特权;和使用应用程序和访问特权来生成应用程序的部署软件包。计算机可读代码还被配置成发布所述应用程序,以使部署软件包可用于从包含下列的组中选择的至少一个:安装在客户设备上和在客户设备上预览。本专利技术的其它方面根据如下描述和附属权利要求书将是显然的。附图说明图1示出按照本专利技术一个实施例的系统。图2示出按照本专利技术一个实施例的仓库的体系结构。图3-6示出按照本专利技术一个或多个实施例的方法。图7-20示出根据本专利技术一个或多个实施例的例子。图21示出按照本专利技术一个或多个实施例的计算机系统。具体实施方式现在将参照附图详细地描述本专利技术的具体实施例。在各个附图(也称作图)中的类似元素为了一致性由类似附图标记指示。在本专利技术的实施例中,陈述了多个具体细节以便提供本专利技术的更彻底理解。然而,对于本领域的技术人员来说,显然可以实践本专利技术而不用这些具体细节。在其它实例中,不再详细地描述已知特征以避免使本专利技术模糊。一般地,本专利技术的实施例涉及发布和分发应用程序。更明确地说,本专利技术的实施例涉及应用程序(例如,Java或JavaFX应用程序)的发布和检查,这些应用程序能够在Java运行环境(JRE,JavaRuntimeEnvironment)中执行,而与JRE在其上执行和分发应用程序的计算平台无关。根据本专利技术的一个或多个实施例,这涉及:确定所述应用程序是适当的应用程序;和确定所述应用程序的访问特权。在本专利技术的一个实施例中,应用程序一旦被编译,就处于字节-代码格式。编译后的应用程序被配置成在Java虚拟机(JVM,JavaVirtualMachine)上执行。更明确地说,JVM包括启动JRE的执行和允许应用程序在JRE内执行的功能。应用程序的执行包括读取和验证字节-代码、确定相应的本机-平台机器代码、以及将相应的本机-平台机器代码发给客户设备OS和/或硬件。在本专利技术的一个实施例中,JVM可以实施一个或多个“沙箱”,其中,每个沙箱是JRE内的隔离执行环境。在沙箱内执行的应用程序可仅与JVM和沙箱内的其它应用程序进行交互;然而,应用程序可与在沙箱外执行的应用程序进行交互。而且,JVM可对应用程序可如何在给定沙箱内执行设置进一步的限制。图1示出按照本专利技术一个实施例的系统。该系统包括一个或多个应用程序开发人员(110)、仓库(120)、以及一个或多个客户设备(140)。下面讨论这些组件的每一个。在本专利技术的一个实施例中,开发人员(110)生成、创建、或获得应用程序(150)。根据本专利技术的一个或多个实施例,所述应用程序可以是但不限于Java(任何版本、样式)和JavaFX应用程序。开发人员然后将这些应用程序(150)提供给仓库(120)以便分发。另外,根据本专利技术的一个或多个实施例,开发人员(110)向仓库(120)提供应用信息(155)(即,与应用程序有关的数据)。关于应用信息的更多细节将在图8-11中提供。根据本专利技术的一个或多个实施例,开发人员(110)也从仓库(120)接收关于已经提交的应用程序(即,应用程序(150))的数据。根据本专利技术的一个或多个实施例,这种数据可以包括客户使用数据(170)和应用度量(175)。据本专利技术的一个或多个实施例,客户使用数据(170)可相应于详细说明给定应用程序在一个或多个客户设备(140)上如何使用的数据(例如,没有任何个人身份信息)。根据本专利技术的一个或多个实施例,客户使用数据(170)可以包括诸如用户多么频繁地启动和/或停止应用程序(150)、用户访问了什么页面、用户按哪种顺序在应用程序中的各个页面中导航、页面被如何访问、用户如何与用户接口进行交互(例如,用户点击了哪些按钮、等等)、以及访问页面花费的时间之类的信息。另外,开发人员(110)可以接收应用度量(175)。根据本专利技术的一个或多个实施例,应用度量(175)可以包括应用程序已被安装或再安装的次数、应用程序已被观看的次数、应用程序已被用户除去的次数、以及应用程序已导致灾难性错误(即,应用程序“崩溃”)的次数。根据本专利技术的一个或多个实施例,应用度量(175)由仓库(120)生成,如下面描述的那样。在本专利技术的一个实施例中,仓库相应于一个或多个计算机系统(例如,服务器),这些计算机系统被配置成与开发人员和客户设备对接。一般地,根据本专利技术的一个或多个实施例,仓库(120)从开发人员(110)接收应用程序,并且通过将它们提供给客户设备(140)来将它们提供给用户。根据本专利技术的一个或多个实施例,将应用程序(150)提供给仓库(120),该应用程序(150)打包在标准Java存档(JAR,JavaArchive)文件中。仓库被配置成存储一个或多个应用程序。而且,仓库可以存储同一个应用程序的不同版本(例如,版本1、版本1.1、版本2、等等),其中,每个版本包括不同特征和/或内容。例如,根据本专利技术的一个或多个实施例,应用程序的不同版本文档来自技高网
...
JAVA商店

【技术保护点】
一种用于发布应用程序的方法,所述方法包括:接收所述应用程序;接收应用程序的应用信息;为检查员直接在计算机系统的检查员入口上执行所述应用程序,所述检查员入口对于所述检查员来说能经由统一资源定位符访问;部分地基于所述应用信息和所述检查员来确定对应用程序的访问特权,其中当所述访问特权指定仅沙箱执行时,所述访问特权将所述应用程序的执行限制到沙箱,其中当所述访问特权指定有限访问执行时,所述访问特权允许对所述沙箱外的资源的有限访问,并且其中所述沙箱是在运行时环境内的隔离执行环境;设置应用程序的数字权利管理DRM设定,所述数字权利管理DRM设定指定所述应用程序能被复制到多个客户设备;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第一客户设备类型,生成所述应用程序的第一部署软件包;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第二客户设备类型,生成所述应用程序的第二部署软件包;将所述应用程序发布到仓库;从具有所述第一客户设备类型并且与在所述仓库处的用户账户相关联的第一客户设备接收对所述应用程序的第一请求,其中所述用户账户与所述应用程序的已购买拷贝相关联;向所述第一客户设备提供所述应用程序的第一部署软件包,其中所述第一客户设备使用在所述第一客户设备上的运行时环境在所述沙箱内执行所述第一部署软件包;从具有所述第二客户设备类型并且与所述用户账户相关联的第二客户设备接收对所述应用程序的第二请求;以及在不要求购买所述应用程序的另一拷贝的情况下,向所述第二客户设备提供所述第二部署软件包,其中所述第二客户设备使用在所述第二客户设备上的运行时环境在所述沙箱内执行所述第二部署软件包。...

【技术特征摘要】
2009.05.29 US 61/182,3031.一种用于发布应用程序的方法,所述方法包括:接收所述应用程序;接收应用程序的应用信息;为检查员直接在计算机系统的检查员入口上执行所述应用程序,所述检查员入口对于所述检查员来说能经由统一资源定位符访问;部分地基于所述应用信息和所述检查员来确定对应用程序的访问特权,其中当所述访问特权指定仅沙箱执行时,所述访问特权将所述应用程序的执行限制到沙箱,其中当所述访问特权指定有限访问执行时,所述访问特权允许对所述沙箱外的资源的有限访问,并且其中所述沙箱是在运行时环境内的隔离执行环境;设置应用程序的数字权利管理DRM设定,所述数字权利管理DRM设定指定所述应用程序能被复制到多个客户设备;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第一客户设备类型,生成所述应用程序的第一部署软件包;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第二客户设备类型,生成所述应用程序的第二部署软件包;将所述应用程序发布到仓库;从具有所述第一客户设备类型并且与在所述仓库处的用户账户相关联的第一客户设备接收对所述应用程序的第一请求,其中所述用户账户与所述应用程序的已购买拷贝相关联;向所述第一客户设备提供所述应用程序的第一部署软件包,其中所述第一客户设备使用在所述第一客户设备上的运行时环境在所述沙箱内执行所述第一部署软件包;从具有所述第二客户设备类型并且与所述用户账户相关联的第二客户设备接收对所述应用程序的第二请求;以及在不要求购买所述应用程序的另一拷贝的情况下,向所述第二客户设备提供所述第二部署软件包,其中所述第二客户设备使用在所述第二客户设备上的运行时环境在所述沙箱内执行所述第二部署软件包。2.根据权利要求1所述的方法,其中,所述方法进一步包括:从所述第一客户设备接收客户使用数据,其中,所述客户使用数据包括关于所述应用程序在第一客户设备上的使用的信息。3.根据权利要求2所述的方法,其中,所述方法进一步包括:在除去个人身份信息之后,将客户使用数据提供给应用程序的开发人员。4.根据权利要求2所述的方法,其中,所述客户使用数据是使用单独的应用程序获得的。5.根据权利要求1所述的方法,其中,所述方法进一步包括:当所述第一客户设备不包括所述应用程序的最新版本,并且所述第一客户设备试图执行除了所述应用程序的最新版本以外的应用程序版本时,将所述应用程序的最新版本提供给所述第一客户设备。6.根据权利要求1所述的方法,其中,所述第一客户设备是从包括如下的组中选择的一种:连接到有线网络的计算机、连接到无线网络的计算机、2G移动设备、3G移动设备、个人数字助理、智能电话、以及机顶盒。7.根据权利要求1所述的方法,其中,所述数字权利管理DRM设定由在所述第一客户设备上的运行环境来实施。8.根据权利要求1所述的方法,其中,按归档文件格式接收所述应用程序。9.根据权利要求1所述的方法,其中,按照网络启动协议来生成所述部署软件包。10.根据权利要求9所述的方法,其中,所述访问特权由运行环境来实施。11.根据权利要求1所述的方法,其中,所述应用程序是Java应用程序。12.一种用于发布应用程序的系统,包括:处理器;以及包括能被所述处理器执行的计算机可读代码的存储器,所述计算机可读代码被配置成:接收应用程序和所述应用程序的应用信息;为检查员直接在所述处理器的检查员入口上执行所述应用程序,所述检查员入口对于所述检查员来说能经由统一资源定位符访问;部分地基于应用信息和所述检查员来确定对应用程序的访问特权;其中当所述访问特权指定仅沙箱执行时,所述访问特权将所述应用程序的执行限制到沙箱,其中当所述访问特权指定有限访问执行时,所述访问特权允许对所述沙箱外的资源的有限访问,并且其中所述沙箱是在运行时环境内的隔离执行环境;设置应用程序的数字权利管理DRM设定,所述数字权利管理DRM设定指定所述应用程序能被复制到多个客户设备;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第一客户设备类型,生成所述应用程序的第一部署软件包;使用所述应用程序、所述数字权利管理DRM设定和所述访问特权并且基于第二客户设备类型,生成所述应用程序的第二部署软件包;将所述应用程序发布到仓库,以使所述第一部署软件包可用于选自由在所述第一客户设备上安装和在所述第一客户设备上预览组成的组中的至少一个,其中所述第一客户设备具有第一客户设备类型并且与在所述仓库处的用户账户相关联,其中所述用户账户与所述应用程序的已购买拷贝相关联;从所述第一客户设备接收对所述应用程序的第一请求;向所述第一客户设备提供所述应用程序的第一部署软件包,...

【专利技术属性】
技术研发人员:B·A·特拉弗萨特J·A·戈斯林M·J·杜伊高H·詹M·M·阿布德拉齐兹B·戈茨
申请(专利权)人:甲骨文美国公司
类型:发明
国别省市:美国,US

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1