共享应用程序状态的制作方法_4

文档序号:9401936阅读:来源:国知局
可接受值。应注意,模板 或变换可被分解为前缀部分及动态部分或"网络尾部"部分。此外,由本发明提供的格式只 是作为实例而提供且不旨在限制本发明的范围。
[0077] 多平台应用程序的每一应用程序开发者可注册对应于多平台应用程序的数据,其 包含用于产生资源识别符的模板、用于使用模板的规则及对应于多平台应用程序的额外元 数据。例如,应用程序开发者可注册多平台应用程序的名称、应用程序资源识别符16的格 式、网络资源识别符18的格式、出现在应用程序资源识别符16中的本机应用程序124的名 称、本机应用程序124经配置以在其上执行的操作系统、服务于网络应用程序32的网络服 务器30的域名、可包含在资源识别符中的参数26的不同类型及/或不同类型的参数26的 可接受变量类型。在一些实施方案中,转换库220被实施为数据库,使得可至少按多平台应 用程序名称搜索转换库220。响应于接收到对特定多平台应用程序的查询,转换库220可返 回用于产生特定多平台应用程序的资源识别符的规则及/或模板。
[0078] 在一些实施方案中,转换库220可进一步存储指令集22或用于产生指令集22的 指令集模板。在此类实施方案中,每一开发者可提供用于访问多平台应用程序的状态的指 令。例如,每一开发者可提交.lavaScripr?代码,其定义网络浏览器122或操作系统120如 何访问多平台应用程序的状态。在此类情形中,指令集22可存储在转换库220中且可链接 到其对应多平台应用程序的条目。在一些实施方案中,指令集22是可用于任何多平台应用 程序的通用指令集。以下提供通用指令集的伪代码实例:
[0079] 分析应用程序资源识别符;
[0080] 从应用程序资源识别符识别本机应用程序名称;
[0081] 从应用程序资源识别符识别一或多个参数;
[0082] 用一或多个参数启动本机应用程序;
[0083] 如果成功地启动本机应用程序,那么结束脚本;
[0084] 否则,将网络请求传输到网络资源识别符中指示的网址;
[0085] 结束;
[0086] 在另一实例中,资源识别符服务器50可确定多个应用程序资源识别符16,使得每 一应用程序资源识别符16对应于不同操作系统类型。以下提供此情形的伪代码实例:
[0087] 确定装置的操作系统类型;
[0088] 识别具有操作系统类型的应用程序资源识别符;
[0089] 分析所识别的应用程序资源识别符;
[0090] 从应用程序资源识别符识别本机应用程序名称;
[0091] 从应用程序资源识别符识别一或多个参数;
[0092] 用一或多个参数启动本机应用程序;
[0093] 如果成功地启动本机应用程序,那么结束脚本;
[0094] 否则,将网络请求传输到网络资源识别符中指示的网址;
[0095] 结束;
[0096] 前述伪代码实例只是作为实例而提供且不旨在有所限制。实例可被实施为呈任何 适当程序设计或脚本语言的指令集22。
[0097] 在操作中,请求分析模块216经由通信装置212从计算装置10接收解析请求14。 响应于接收到解析请求14,请求分析模块216从解析请求14提取多平台应用程序的引用 24 (例如,名称)及一或多个参数26。
[0098] 识别符产生模块218产生应用程序资源识别符16及网络资源识别符18。在一些 实施方案中,识别符产生模块218从请求分析模块216获得对多平台应用程序的引用24及 一或多个参数26。识别符产生模块218用对多平台应用程序的引用24查询转换库220。转 换库220返回对应于多平台应用程序的模板。在一些实施方案中,转换库220返回可对于 特定多平台应用程序产生的每一可能资源识别符的模板。例如,如果ZYXplayer应用程序 包含用于i〇S及AMDEOiD?的本机应用程序124,那么转换库220可返回用于产生用于本 机应用程序124的iOS版本的应用程序资源识别符16的第一模板、用于产生用于本机应用 程序124的ANDROimi版本的应用程序资源识别符16的第二模板,及用于产生用于ZYX 播放器应用程序的网络应用程序32版本的网络资源识别符18的第三模板。替代地,转换 库220可返回用于应用程序资源识别符16的单个模板,借此识别符产生模块218可通过用 其上可执行本机应用程序124的各种操作系统填充定义操作系统类型的参数字段产生多 个应用程序资源识别符16。在获得模板时,识别符产生模块218通过用从解析请求14提取 的一或多个参数值填充模板的参数字段来产生各种资源识别符。
[0099] 识别符产生模块218可进一步确定连同资源识别符一起传输的指令集。指令集22 可为通用指令集22或多平台应用程序所特有的指令集22。此外,在一些实施方案中,识别 符产生模块218可经配置以将一或多个地址资源识别符及一或多个网络资源识别符18插 入到指令集22中。识别符产生模块218可经由通信装置212将一或多个应用程序资源识 别符16、一或多个网络资源识别符18及指令集22传输到请求计算装置10。
[0100] 图5的资源识别符服务器50只是作为实例而提供且不旨在限制本发明的范围。预 期资源识别符服务器50的变动且资源识别符服务器50的变动是在本发明的范围内。
[0101] 图6说明用于确定对应于多平台应用程序的状态的资源识别符的方法250的操作 的实例布置。在一些实施方案中,方法250是由资源识别符服务器50的计算装置210执行。
[0102] 在操作260处,请求分析模块216接收并分析解析请求14。如先前讨论,解析请 求14包含定义对多平台应用程序的引用24及指示应用程序的状态的一或多个参数26的 信息。请求分析模块216可识别对多平台应用程序的引用24以及一或多个参数26,请求分 析模块216可将引用24及一或多个参数26提供给识别符产生模块218。
[0103] 在操作264处,识别符产生模块218获得用于产生资源识别符的模板。识别符产 生模块218可用对多平台应用程序的引用24查询转换库220。转换库220返回对应于多平 台应用程序的模板,且在一些实施例中返回应用于模板的规则。
[0104] 在操作268处,识别符产生模块218基于信息及模板产生至少一个应用程序资源 识别符16及至少一个网络资源识别符18。如先前讨论,每一模板包含至少一个参数字段。 因此,识别符产生模块218用解析请求14中接收的一或多个参数值填充每一所检索模板的 参数字段。在其中应用程序开发者提供在不同操作系统上执行的本机应用程序124的情形 中,识别符产生模块218可产生一个以上应用程序资源识别符16,使得每一应用程序资源 识别符16对应于本机应用程序124的不同版本。类似地,在应用程序开发者维护移动网站 及"完整版本"网站的情况下,识别符产生模块218可产生对应于移动网站的第一网络资源 识别符18及对应于完整版本网站的第二网络资源识别符18。
[0105] 在操作272处,识别符产生模块218确定用于访问多平台应用程序的状态的指令 集22。如先前讨论,指令集22可为关于任何数目的多平台应用程序的通用指令集。在此 类实施方案中,识别符产生模块218从存储器装置214检索通用指令集。在其中每一指令 集22经配置用于特定多平台应用程序的实施方案中,识别符产生模块218可从例如转换库 220检索关于多平台应用程序的指令集22。在一些实施方案中,识别符产生模块218可进 一步将所产生的资源识别符插入到指令集22中。
[0106] 在操作276处,识别符产生模块218将一或多个应用程序资源识别符16、一或多个 网络资源识别符18及指令集22传输到计算装置10。
[0107] 图6的方法250只是作为实例而提供且不旨在有所限制。此外,预期方法250的 变动且方法250的变动是在本发明的范围内。例如,方法250可经修改以在用户计算装置 10上执行。在此类实施方案中,用户计算装置10可从发送计算装置8接收对多平台应用 程序的引用24及一或多个参数26,且可脱机产生资源识别符。在此类实施方案中,转换库 220及识别符产生模块218可由计算装置10的处理装置110执行。
[0108] 如先前讨论,用户计算装置10或8可经配置以确定对应于应用程序状态的资源识 别符。例如,图2E说明经配置以确定对应于应用程序状态的一或多个资源识别符的用户计 算装置10。在此类实施方案中,用户计算装置10可执行客户端,例如网络浏览器122或应 用程序资源识别符客户端。用户计算装置10可接收对多平台应用程序的引用24及指示应 用程序的状态的一或多个参数26。在一些实施方案中,可以动态URL的形式接收引用24及 参数26。用户计算装置10可基于引用24及参数26确定应用程序资源识别符16。例如, 用户计算装置10可接收对ZYXplayer应用程序的引用24及一或多个参数26。基于引用 24,计算装置10的客户端可产生应用程序资源识别符16并启动ZYXplayer本机应用程序。
[0109] 在一些此类实施方案中,用户计算装置10可将网络请求传输到由引用24指示的 网络服务器30。网络请求可包含网络服务器30的文件系统中的指令集(例如,JavaScript? 代码)的路径。响应于接收到网络请求,网络服务器30将存储在由路径指示的位置处的指 令集22提供到用户计算装置10。用户计算装置10接收指令集22并基于指令集22及所接 收的参数26产生应用程序资源识别符16。用户计算装置10接着可尝试使用应用程序资源 识别符16或网络资源识别符18访问应用程序。
[0110] 指令集22可提供包含用于产生应用程序资源识别符16的格式或模板的变换。此 外,变换可包含用于产生网络资源识别符18的格式或模板。变换可为包含用于产生资源 识别符16的格式或模板的对象。例如,变换可包含用于产生应用程序资源识别符16的模 板,包含如何从网络资源识别符16分析参数26并将参数26格式化为应用程序资源识别 符16。指令集22还可包含以下字段:应用程序的名称;对应于网络应用程序32的网络前 缀;对应于本机应用程序124的本机前缀;变换的标题;识别应用程序的主页的网络资源 识别符18的主页的变换的描述;识别底层应用程序的图标图像的图标识别符;及各种版次 (edition)数据。网络前缀可提供网络资源识别符18的根,例如对应于网络应用程序32的 域名。在一些实施方案中,网络前缀可匹配网络请求被传输到的资源识别符。本机前缀是 应用程序资源识别符16的根。本机前缀指示将要启动的本机应用程序124。版次数据可包 含:指示用户可在其中下载应用程序的页面的下载资源识别符、本机应用程序124的各种 版次已被编程用于的操作系统、每一版次的名称及每一版次的图标资源识别符。
[0111] 图7说明用于访问可由用户计算装置10且特定地说与用户计算装置10相关联的 客户端(例如,网络浏览器122)执行的应用程序的状态的方法300的操作的实例集合。虽 然为了解释目的参考网络浏览器122,但是客户端可能是指例如操作系统级API函数、程序 设计库函数、网络浏览器122的附加组件、扩展或插件、在加载时间运行且追溯地尝试在本 机应用程序124中打开网页URL的在应用程序的网站上执行的JavaScript?程序,及/或拦 截在指向特定应用程序域的超链接上的点击事件的网页上的Java Scri pi S?阐数。
[0112] 在操作310处,用户计算装置10接收网络资源识别符18。网络资源识别符18可 接收自另一用户计算装置8或远程服务器,例如搜索引擎。网络资源识别符18可包含网 络服务器30的网址及指示应用程序的状态的一或多个参数26。例如,用户计算装置10可 接收葡萄相关主题的微博应用程序的网络资源识别符18,例如http://grapes. example, com/concord. html? u = Jenny&c = red。在此实例中,微博应用程序也可经由本机应用 程序124访问。
[0113] 在操作312处,网络浏览器122可产生对网络服务器30的网址的网络请求。网络 请求可包含到指令集22的路径。例如,网络浏览器122可在网络请求中包含路径"appurl. json",使得指令集22的网络资源识别符18是呈http://grapes. example, com/appurl. json形式的静态URL。应注意,在一些实施方案中,网络服务器30可预留到指令集22的预 定路径(例如,appurl. json),使得可在[domain_name]/appurl. json处访问任何网络服务 器30的指令集22。
[0114] 在操作314处,网络浏览器122从网络服务器30接收指令集22。如先前提及,指 令集22可包含网络前缀、本机前缀及一或多个变换。在葡萄微博应用程序的实例中,指令 集22可包含以下指令:
[0116] 指令集22包含网络前缀、本机前缀及变换的定义。在此实例中,由葡萄微博应用 程序接收的参数26包含页面、用户及颜色。变换提供用于将参数26包含在应用程序资源 识别符16及网络资源识别符18中的格式或模板。前述指令集22只是作为实例而提供。
[0117] 在操作316处,网络浏览器122基于指令集22识别网络资源识别符18中的参数 26。在一些实施方案中,网络浏览器122基于指令集22中含有的网络前缀字段识别网络资 源识别符18的域名部分。网络资源识别符18的剩余部分(例如,网络资源识别符18的"动 态部分"或"网络尾部")可与域名部分隔离。网络浏览器122可扫描网络资源识别符18的 网络尾部以基于定义在变换中的网络资源识别符18的网络尾部部分的格式确定各种参数 值。在接下来的实例中,网络浏览器122可推断葡萄微博应用程序接收"页面"参数、"颜色" 参数及"用户"参数。此外,
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1