用于软件应用程序的跨平台开发的环境及方法

文档序号:6533313阅读:333来源:国知局
用于软件应用程序的跨平台开发的环境及方法
【专利摘要】一种方法可包含获得内容文件,其中所述内容文件包含一或多个呈现文件,其中每一呈现文件包含相应指令,所述相应指令在由单独计算装置于运行时进行解译时经配置以提供在所述单独计算装置上执行的软件应用程序的(a)功能性及(b)用户接口中的至少一者。所述方法可包含将所述内容文件提供到所述单独计算装置。在提供所述内容文件之后,所述方法可包含识别至少第一呈现文件的改变且将至少所述第一呈现文件提供到所述单独计算装置,其中所述软件应用程序经配置以作为所述软件应用程序的(a)所述功能性及(b)所述用户接口中的至少一者来执行所述第一呈现文件而不需要在所述单独计算装置上重新安装或重新加载所述软件应用程序。
【专利说明】用于软件应用程序的跨平台开发的环境及方法
[0001] 巧关申请案帘叉参考
[0002] 本申请案主张标题为"用于软件应用程序的跨平台开发的环境及方 法(Environment and Method for Cross-Platform Development of Software Applications)"且于2012年10月22日提出申请的美国申请案13/657, 149的优先权,所 述美国申请案主张标题为"用于无线计算装置的软件开发的环境及方法巧nviro皿ent and Method for Development of Software for Wireless Computing Devices)"且于2012年 2月7日提出申请的第61/595, 945号临时申请案及标题为"用于无线计算装置的软件开发 的环境及方法巧nvironment and Method for Development of Software for Wireless Computing Devices)"且于2012年5月3日提出申请的第61/642, 187号美国临时申请案 两者的优先权,所述申请案中的每一者的内容特此W全文引用的方式并入。

【背景技术】
[0003] 在一些实例中,无线计算装置可包含蜂窝式电话、智能电话、个人数字助理、便携 式多媒体播放器及平板计算机。可下载用W在无线计算装置上运行的软件应用程序。在一 些实施方案中,基于Web的应用程序商店可提供下载到无线计算装置的装置特定、平台特 定或操作系统特定软件应用程序。
[0004] 当开发用于分布到多种计算装置的软件应用程序时,不同平台能力及编程语言兼 容性(例如,化jective-CJava、C#等)可致使开发者产生相同软件应用程序的多个版本。 举例来说,当开发用于分布到多种无线装置(例如智能电话、平板计算机及手持式游戏装 置)的软件应用程序时,软件程序员可需要针对每一装置制造商及/或操作系统平台且通 常针对跨越单个装置制造商及/或操作系统平台的各种平台产生不同版本。另外,软件开 发者可开发用于作为在线(例如,基于浏览器的)软件应用程序而分布的软件的另一版本。
[0005] 对于一些计算装置平台,软件开发工具包(SDK)或集成开发环境(IDE)(例如,苹 果公司(Apple, Inc.)的xCode?、加拿大渥太华的Eclipse基金会巧clipse Foundation) 的Eclipse、微软公司(Microsoft)的Visual SUidio?、纽约阿蒙克市的国际商用机器公司 (International Business Machines Co;rp.) (IBM)的用于 WcbSphcrc篡软件的 Rational Application developer等)由用于平台可兼容软件应用程序的开发的制造商提供。购买 每一软件开发工具包及了解每一软件开发工具包的能力及功能性所花费的费用及时间可 能在配设(provision)跨越多个开发平台的软件应用程序时对开发者是不利的。
[0006] 需要一种给软件开发者提供用W开发可经准备用于部署于多个计算装置平台上 的跨平台软件应用程序的工具及功能性的开发环境。


【发明内容】

[0007] 在一些实施方案中,本发明可针对用于计算装置的软件开发的环境及方法。在一 些实施方案中,开发过程可包含用于部署于两个或两个W上计算装置平台上的软件应用 程序的跨平台开发。在一些实例中,计算装置平台可是指一组特定配置参数,例如W下各 项中的一或多者;装置操作系统(例如,华盛顿州雷德蒙德市的微软公司的Microsor促' Window's霞、Linux?、加利福尼亚州库比蒂诺市的苹果公司的Apple篡Mac?〇S、安 大略省滑铁卢市的行动研究有限公司(Research in Motion Limited)的行动研究 巧IM) Blackberry? OS等)、操作系统版本、装置应用程序格式(例如,苹果公司的Apple? iOS?、加利福尼亚州口洛帕克市的谷歌公司的An化oid?、微软公司的Windows⑧化one、加 利福尼亚州帕洛阿尔巧市的惠普公司化ewlett-Packard Company)的化Im? webOS?、爱尔 兰都柏林的埃森哲公司(Accen化re化C)的Symbian?、韩国首尔的H星电子公司(Samsung Electronics)的Bada?等)及装置外围配置(例如,输入及输出装置,例如在一些实例中, 传感器、扬声器、麦克风、虚拟键盘及/或小型键盘、按钮及其它物理控制输入等)。
[0008] 如本文中所描述,在一些实施方案中,集成云环境(IC巧可提供用于开发可经编 译W在两个或两个W上计算装置平台上运行的跨平台软件应用程序的接口。在一些实施 方案中,集成云环境可包含用于针对若干个无线计算装置平台而设计、建构、编译、测试及 /或分布软件应用程序的特征。在一些实施方案中,集成云环境可另外提供用于针对基于 web的应用程序(例如,基于浏览器的Web应用程序、可与马萨诸塞州坎布里奇市的脸谱 公司(Facebook,Inc.)的Faccbook嚴兼容的应用程序、服务器侧Web应用程序,例如微软 公司的ASP.肥T等)而设计、建构、编译、测试及/或分布软件应用程序的特征。在一些 实施方案中,集成云环境可给开发者提供从个别软件开发工具包(SDK)或集成开发环境 (I呢)(例如,苹果公司的xCode?、加拿大渥太华的Eclipse基金会的Eclipse、微软公司 的Visual S化化0⑥、纽约阿蒙克市的国际商用机器公司(IBM)的用于WebSphere⑥软件的 Rational Application developer等)移除的开发环境及/或通常用于开发用于无线计算 装置的各种平台的软件应用程序及Web应用程序的编程语言(例如,化jective-C、Java、 C#等)。在一些实施方案中,用于跨平台软件应用程序的开发的集成云环境可涉及安装于 本地开发计算装置上的应用程序开发者接口W用于开发及模拟跨平台软件应用程序的平 台独立版本。在一些实施方案中,用于跨平台软件应用程序的开发的集成云环境可涉及经 由因特网浏览器程序呈现给开发者的应用程序开发者接口。应用程序开发者接口可给开发 者提供到集成云环境的通信信道W用于(举例来说)使用针对朝向特定计算装置平台的应 用程序开发而提供的各种软件开发工具包或集成开发环境的方面来用平台特定文件编译 平台独立开发文件。
[0009] 在一些实施方案中,用于各种计算装置的跨平台开发可经由允许开发者经由非经 编译资源文件(例如,如本文中所使用的"呈现文件")定义应用程序的大部分行为的抽象 层而实现,在一些实例中,非经编译资源文件例如;例如超文本标记语言(HTML)的标记语 言、例如化vaScript的解译语言及例如级联样式表(CS巧的样式表语言。举例来说,呈现文 件可包含用于与装置外围设备(例如传感器、控制件及输入/输出机构)交互的命令。在 一些实施方案中,呈现文件可进一步包含用于与基于Web的服务(例如装置或平台特定应 用程序编程接口(API))交互的命令。在一些实施方案中,用于将呈现文件翻译成平台特定 无线计算装置命令的抽象层可使用马里兰州森林小丘市(Forest Hill)的Apache软件基 金会(Apache Software Foundation)的 Apache Cordova 平台来开发。
[0010] 在一些实施方案中,可在运行时在计算装置上解译呈现文件W实现用户与计算装 置之间的交互。在一些实施方案中,呈现文件可由计算装置的浏览器引擎特征解译。在一 些实施方案中,呈现文件可经提供用于在计算装置上所再现的"无窗口 "(例如,全屏、不界 定浏览器边界等)web浏览器接口中呈现。在一些实施方案中,呈现文件可与若干个媒体文 件组合,例如在应用程序的执行期间可经由到并入呈现文件中的媒体文件的链路存取及呈 现的音频、图像及视频文件。在一些实施方案中,媒体文件与呈现文件的组合可称为跨平台 应用程序项目的"内容文件"。
[0011] 在一个方面中,本发明针对一种方法,所述方法包含通过计算装置的处理器而获 得若干个内容文件,其中所述内容文件包含一或多个呈现文件,其中所述一或多个呈现文 件中的每一呈现文件包含相应指令,所述相应指令在由单独计算装置的处理器于运行时进 行解译时经配置W提供在单独计算装置上执行的软件应用程序的(a)功能性及化)用户接 口中的至少一者。所述方法可进一步包含将所述内容文件提供到所述单独计算装置。在提 供所述内容文件之后,所述方法可进一步包含通过所述计算装置的所述处理器而识别所述 若干个呈现文件中的至少第一呈现文件的改变及将至少所述第一呈现文件提供到所述单 独计算装置,其中所述软件应用程序经配置W作为所述软件应用程序的(a)所述功能性及 化)所述用户接口中的至少一者来执行所述第一呈现文件而不需要在所述单独计算装置上 重新安装或重新加载所述软件应用程序。
[0012] 在一些实施例中,所述内容文件进一步包含一或多个媒体文件。所述相应指令在 于运行时进行解译时可经配置W在浏览器应用程序内提供所述软件应用程序的所述用户 接口。所述浏览器应用程序可经配置W对所述用户不可见。
[0013] 在一些实施例中,提供所述内容文件可包含经由无线连接将所述内容文件从所述 计算装置推送到所述单独计算装置。提供所述内容文件可包含将所述内容文件上传到可由 所述单独计算装置存取的网络存储区域。提供所述内容文件可包含提供含有所述内容文件 的安装可执行文件W供下载。
[0014] 所述安装可执行文件可包含无窗口浏览器应用程序。所述安装可执行文件可包含 更新代理,其中所述更新代理在所述软件应用程序的执行期间经配置W接收一或多个额外 内容文件,其中所述一或多个额外内容文件中的至少一者包含用于所述内容文件中的第一 内容文件的替换文件并用所述替换文件替换所述第一内容文件。所述更新代理可进一步经 配置W在用所述替换文件替换所述第一内容文件之后刷新所述软件应用程序的当前用户 接口 W利用所述替换文件。
[0015] 在一些实施例中,所述方法可进一步包含呈现所述软件应用程序在移动装置模拟 器内的模拟,其中所述移动装置模拟器解译所述一或多个呈现文件中的至少一者的所述指 令W在移动装置上模拟所述软件应用程序的功能性。所述移动装置模拟器可包含一或多个 控制件,其中所述一或多个控制件在由所述计算装置的用户激活时经配置W将输入供应到 所述软件应用程序。所述方法可进一步包含经由所述一或多个控制件中的第一控制件接收 定向输入,且响应于所述定向输入而改变所述移动装置模拟器的显示部分的定向。
[0016] 所述方法可进一步包含经由所述一或多个控制件中的第一控制件接收装置类型 输入,且响应于所述装置类型输入而修改所述装置模拟器的外观,其中所述装置模拟器包 含移动装置框架及显示区。所述方法可进一步包含响应于所述装置类型输入而刷新由所述 移动装置模拟器呈现的当前用户接口。所述方法可进一步包含通过所述计算装置的所述处 理器而识别所述若干个呈现文件中的至少第二呈现文件的改变且刷新由所述移动装置模 拟器呈现的当前用户接口W包含来自所述第二呈现文件的信息。
[0017] 在一些实施例中,将所述第一呈现文件提供到所述单独计算装置包含响应于接收 到来自所述计算装置的用户的请求而提供所述第一呈现文件。所述请求可识别一或多个计 算装置,其中所述一或多个计算装置包含所述单独计算装置。
[0018] 所述方法可进一步包含在提供所述内容文件之前准备包含所述内容文件的安装 文件。准备所述安装文件可包含将数字签名添加到所述安装文件。
[0019] 在一些实施例中,所述方法进一步包含将所述内容文件存储于版本控制的项目目 录中。所述方法可进一步包含在存储地址处接收对至少所述第一呈现文件的请求,其中提 供所述第一呈现文件包含在存储地址处提供所述第一呈现文件W供下载。所述存储地址可 包含U化。提供所述第一呈现文件可包含打开与所述第二计算装置的文件更新连接。所述 第二计算装置可在先前所安装的无窗口浏览器应用程序内执行所述软件应用程序。
[0020] 在一个方面中,所述本发明针对一种方法,所述方法包含通过计算装置的处理器 而获得若干个内容文件,其中所述内容文件包含一或多个呈现文件。所述方法可包含;通过 所述计算装置上执行的伴随应用程序而存取所述若干个内容文件;及通过所述伴随应用程 序而解译所述一或多个呈现文件中的至少第一呈现文件,其中解译所述第一呈现文件包含 再现软件应用程序的(a)功能性及化)用户接口中的至少一者。所述方法可包含通过所述 伴随应用程序而识别用W获得一或多个替换内容文件的请求,且响应于所述请求而通过所 述伴随应用程序存取至少第一替换呈现文件,其中所述第一替换呈现文件经配置W替换所 述第一呈现文件。所述方法可包含通过所述伴随应用程序而刷新所述软件应用程序的用户 接口 W呈现从所述第一替换呈现文件解译的信息。
[0021] 在一些实施例中,所述请求包含在所述单独计算装置的触摸屏接口上执行的手 势。所述请求可包含经由通过所述单独计算装置的扫描特征来扫描机器可读记号而获得的 扫描数据。所述扫描数据可包含网络地址。存取所述替换呈现文件可包含存取用W获得所 述替换呈现文件的网络地址。所述伴随应用程序可包含无窗口浏览器,其中所述软件应用 程序的所述用户接口在所述无窗口浏览器内再现。
[0022] 在一个方面中,本发明针对一种系统,所述系统包含处理器及存储一组指令的非 暂时性计算机可读媒体,所述指令在由所述处理器执行时致使所述处理器获得若干个内容 文件,其中所述内容文件包含一或多个呈现文件,其中所述一或多个呈现文件中的每一呈 现文件包含相应指令,所述相应指令在由单独计算装置的处理器于运行时进行解译时经配 置W提供在所述单独计算装置上执行的软件应用程序的(a)功能性及化)用户接口中的 至少一者。所述指令在执行时可致使所述处理器将所述内容文件提供到若干个单独计算装 置,且在提供所述内容文件之后,识别所述若干个呈现文件中的至少第一呈现文件的改变 并将至少所述第一呈现文件提供到所述若干个单独计算装置中的至少第一计算装置,其中 所述软件应用程序经配置W作为所述软件应用程序的(a)所述功能性及化)所述用户接口 中的至少一者来执行所述第一呈现文件而不需要重新安装或重新加载所述软件应用程序。
[0023] 在一些实施例中,所述第一计算装置经由有线连接而与所述系统通信。提供所述 至少所述第一呈现文件可包含将所述至少第一呈现文件提供到第二计算装置,其中所述第 二计算装置经由无线连接而与所述系统通信。所述指令在执行时可进一步致使所述处理器 在提供所述至少第一呈现文件之前识别无线网络上的所述若干个计算装置中的至少一个 计算装置,其中所述至少一个计算装置包含所述第一计算装置。将所述第一呈现文件提供 到所述第一计算装置可包含跨越所述无线网络而提供所述第一呈现文件。将所述第一呈现 文件提供到所述第一计算装置可包含打开与在所述第一计算装置上执行的下载代理的文 件共享连接。
[0024] 在一些实施例中,所述系统进一步包含输入装置,其中所述指令在执行时进一步 致使所述处理器在提供所述至少第一呈现文件之前经由所述输入装置而接收所述若干个 计算装置中的至少一个计算装置的指示,其中所述至少一个计算装置包含所述第一计算装 置。提供所述第一呈现文件可包含响应于所述指示而将所述第一呈现文件提供到所述至少 一个计算装置。
[0025] 在一个方面中,本发明针对一种存储一组指令的非暂时性计算机可读媒体,所述 指令在由处理器执行时致使所述处理器获得若干个内容文件,其中所述内容文件包含一或 多个呈现文件,其中所述一或多个呈现文件中的每一呈现文件包含相应指令,所述相应指 令在由单独计算装置的处理器于运行时进行解译时经配置W提供在所述单独计算装置上 执行的软件应用程序的(a)功能性及化)用户接口中的至少一者。所述指令在执行时可进 一步致使所述处理器将所述内容文件提供到所述单独计算装置,且在提供所述内容文件之 后,识别所述若干个呈现文件中的至少第一呈现文件的改变并将至少所述第一呈现文件提 供到所述单独计算装置,其中所述软件应用程序经配置W作为所述软件应用程序的(a)所 述功能性及化)所述用户接口中的至少一者来执行所述第一呈现文件而不需要在所述单 独计算装置上重新安装或重新加载所述软件应用程序。
[0026] 在一些实施例中,获得所述若干个内容文件包含经由网络从远程计算装置获得所 述若干个内容文件的至少一部分。所述指令在执行时可进一步致使所述处理器响应于识别 所述第一呈现文件的所述改变而导致所述第一呈现文件在可由所述远程计算装置存取的 存储库中的复制。将所述第一呈现文件提供到所述单独计算装置可包含致使所述第一呈现 文件可由所述单独计算装置经由所述网络存取。

【专利附图】

【附图说明】
[0027] 连同附图一起参考W下说明将更明了及更好地理解本发明的前述及其它目标、方 面、特征及优点,附图中:
[0028] 图IA到IF是图解说明可用于创建用于计算装置的软件应用程序的软件开发环境 的系统图;
[0029] 图2A到2C是图解说明可用于开发用于计算装置的软件应用程序的实例方法的流 程图;
[0030] 图3A及3B是图解说明可用于开发用于计算装置的软件应用程序的额外实例方法 的流程图;
[0031] 图4A及4B是图解说明可用于开发用于计算装置的软件应用程序的进一步实例方 法的流程图;
[0032] 图5A到甜图解说明可用于创建用于计算装置的软件应用程序的软件开发环境的 实例用户接口;
[0033] 图6是用于创建用于计算装置的软件应用程序的另一实例网络环境的框图;
[0034] 图7是计算装置及移动计算装置的框图。
[0035] 当连同图式一起时,依据下文所陈述的详细说明将更明了本发明的特征及优点, 其中在通篇中相似参考字符识别对应元件。在图式中,相似元件符号通常指示相同、功能上 类似及/或结构上类似的元件。

【具体实施方式】
[0036] 在一些实施方案中,本发明可针对用于计算装置的软件开发的环境及方法。在 一些实施方案中,开发过程可包含用于部署于两个或两个W上计算装置平台上的软件应 用程序的跨平台开发。在一些实例中,计算装置平台可是指一组特定配置参数,例如W下 各项中的一或多者;装置操作系统(例如,华盛顿州雷德蒙德市的微软公司的Microsoll嚴 Windows?、Linux?、加利福尼亚州库比蒂诺市的苹果公司的Apple? Mac? 0S、安大略省 滑铁卢市的行动研究有限公司的行动研究巧IM) Blackberry? OS等)、操作系统版本、装置 应用程序格式(例如,苹果公司的Apple? iOS?、加利福尼亚州口洛帕克市的谷歌公司的 An化oid?、微软公司的Windows液化one、加利福尼亚州帕洛阿尔巧市的惠普公司的化Im? webOS?、爱尔兰都柏林的埃森哲公司(Accen化re化C)的Symbian?、韩国首尔的H星电子 公司的Bada?等)及装置外围配置(例如,输入及输出装置,例如在一些实例中,传感器、扬 声器、麦克风、虚拟键盘及/或小型键盘、按钮及其它物理控制输入等)。
[0037] 如本文中所描述,在一些实施方案中,集成云环境(IC巧可提供用于开发可经编 译W在两个或两个W上计算装置平台上运行的跨平台软件应用程序的接口。在一些实施 方案中,集成云环境可包含用于针对若干个无线计算装置平台而设计、建构、编译、测试及 /或分布软件应用程序的特征。在一些实施方案中,集成云环境可另外提供用于针对基于 web的应用程序(例如,基于浏览器的Web应用程序、可与马萨诸塞州坎布里奇市的脸谱公 司的Faccbook货兼容的应用程序、服务器侧Web应用程序,例如微软公司的ASP.肥T等) 而设计、建构、编译、测试及/或分布软件应用程序的特征。在一些实施方案中,集成云环 境可给开发者提供从个别软件开发工具包(SDK)或集成开发环境(IDE)(例如,苹果公司 的xCode?、加拿大渥太华的Eclipse基金会的Eclipse、微软公司的Visual Studio嚴、纽约 阿蒙克市的国际商用机器公司(IBM)的用于WcbSphcr城软件的Rational Application developer等)移除的开发环境及/或通常用于开发用于无线计算装置的各种平台的软件 应用程序及Web应用程序的编程语言(例如,化jective-C、Java、C#等)。在一些实施方 案中,用于跨平台软件应用程序的开发的集成云环境可涉及安装于本地开发计算装置上的 应用程序开发者接口W用于开发及模拟跨平台软件应用程序的平台独立版本。在一些实施 方案中,用于跨平台软件应用程序的开发的集成云环境可涉及经由因特网浏览器程序呈现 给开发者的应用程序开发者接口。应用程序开发者接口可给开发者提供到集成云环境的通 信信道W用于(举例来说)使用针对朝向特定计算装置平台的应用程序开发而提供的各种 软件开发工具包或集成开发环境的方面来用平台特定文件编译平台独立开发文件。
[0038] 在一些实施方案中,用于各种计算装置的跨平台开发可经由允许开发者经由非经 编译资源文件(例如,如本文中所使用的"呈现文件")定义应用程序的大部分行为的抽象 层而实现,在一些实例中,非经编译资源文件例如;例如超文本标记语言(HTML)的标记语 言、例如化vaScript的解译语言及例如级联样式表(CSS)的样式表语言。举例来说,呈现 文件可包含用于与装置外围设备(例如传感器、控制件及输入/输出机构)交互的命令。 在一些实施方案中,呈现文件可进一步包含用于与基于Web的服务(例如装置或平台特定 应用程序编程接口(API))交互的命令。在一些实施方案中,用于将呈现文件翻译成平台特 定无线计算装置命令的抽象层可使用马里兰州森林小丘市的Apache软件基金会的Apache Cordova平台来开发。
[0039] 在一些实施方案中,可在运行时在计算装置上解译呈现文件W实现用户与计算装 置之间的交互。在一些实施方案中,呈现文件可由计算装置的浏览器引擎特征解译。在一 些实施方案中,呈现文件可经提供用于在计算装置上所再现的"无窗口 "(例如,全屏、不界 定浏览器边界等)web浏览器接口中呈现。在一些实施方案中,呈现文件可与若干个媒体文 件组合,例如在应用程序的执行期间可经由到并入呈现文件中的媒体文件的链路存取及呈 现的音频、图像及视频文件。在一些实施方案中,媒体文件与呈现文件的组合可称为跨平台 应用程序项目的"内容文件"。
[0040] 在一些实施方案中,图IA到IF可图解说明用于开发用于部署到包含两个或两个 W上装置平台的若干个计算装置的跨平台软件应用程序的集成云环境的变化形式。举例来 说,图IA到IC可图解说明使用用于开发跨平台软件应用程序的桌面客户端应用程序的集 成云环境,而图ID到IF可图解说明使用用于开发跨平台软件应用程序的实施云的(例如, 基于浏览器的)应用程序的集成云环境。
[0041] 转到图1A,集成云环境100可包含与云网络104通信的开发计算装置102 (例如, 膝上型计算机、桌面计算机、平板计算机、笔记型计算机或可出于软件开发目的而配置的其 它计算装置)。在一些实施方案中,云网络104可包含用于产生平台特定计算装置应用程序 的开发服务器106、用于将与如所收集的跨平台软件应用程序项目有关的项目文件110 (例 女口,内容文件及其它文件)存储(举例来说)于项目目录112中的项目存储库108及用于 启用开发计算装置102与云网络104之间的开发环境接口的web服务器114。
[0042] 在一些实施方案中,为开始集成云环境100中的开发,开发者可首先将开发客户 端应用程序116下载及安装于开发计算装置102上。在一些实例中,开发客户端应用程序 116可从网络云104(例如,如所图解说明)下载、经由另一网络(例如,经由Web浏览器或 基于Web的应用程序商店等)下载或经由可由开发计算装置102(在一些实例中,例如光盘 (CD)、数字视频盘值VD)或通用串行总线扣SB)存储器装置)存取的可移除计算机可读媒 体而安装。
[0043] 在一些实施方案中,开发客户端应用程序116可实现开发接口 118在开发计算装 置102上的本地呈现。在一些实施方案中,开发客户端应用程序116可包含特征或包含对 基于云的特征(例如,经由web服务器114而提供)的存取W用于经由开发接口 118使用 呈现文件及其它(例如,媒体、元数据等)文件来编程及调试跨平台软件应用程序。
[0044] 在一些实施方案中,开发客户端应用程序116可进一步包含特征或包含对基于云 的特征(例如,经由web服务器114而提供)的存取W用于经由开发接口 118而在两个或 两个W上计算装置平台上模拟软件应用程序。举例来说,可呈现具有第一屏幕大小W及第 一外围及控制特征的第一装置模拟器W模拟第一装置平台(例如,例如开发接口 118中所 呈现的装置模拟器120),且可呈现具有第二屏幕大小W及第二外围及控制特征的第二装置 模拟器W模拟第二装置平台。
[0045] 在一些实施方案中,装置模拟器120可包含用于模拟传感器、输入/输出元件及所 模拟装置平台上的其它特征的行为的一或多个传感器输入/输出模拟特征。举例来说,将 详细论述与图5A到甜中所图解说明的用户接口有关的此些特征。
[0046] 在一些实施方案中,一旦开发者对所模拟应用程序的性能感到满意,开发者便可 将任何本地所存储项目文件122 (例如,呈现文件、媒体文件等)上传到项目存储库108,在 项目存储库108中,本地所存储项目文件122可存储(举例来说)为项目目录112中的项 目文件110的一部分。在一些实施方案中,开发客户端应用程序116在跨平台软件应用程 序的开发期间可复制及/或维持项目存储库108中的项目文件122中的一或多者。举例来 说,在保存文件后,开发客户端应用程序116可起始新或经修改文件到项目存储库108的上 传。在一些实施方案中,项目文件122可保留在开发计算装置102本地直到开发者请求产 生一或多个平台特定应用程序文件(例如,可执行文件、安装文件、运行时间文件的可下载 绑定,例如压缩文件等)时为止。
[0047] 为实现平台特定应用程序文件的产生,在一些实施方案中,开发客户端应用程序 116可将本地所存储项目文件122的一部分复制到项目存储库108。举例来说,依据项目存 储库108,项目文件110可与平台特定文件124组合W创建平台特定应用程序文件。在一 些实施方案中,更新代理126可包含于平台特定应用程序文件中(举例来说)W在对目标 计算装置的测试期间实现内容文件的部分更新。在一些实施方案中,平台特定应用程序文 件可包含平台特定或装置特定电子签名(举例来说)W允许特定目标计算装置将平台特定 应用程序文件辨识为信任文件而非恶意软件或可能病毒。在一些实施方案中,开发客户端 应用程序116可上传目标无线计算装置信息,在一些实例中,包含装置品牌、型号、操作系 统、操作系统版本或唯一装置识别符。在一些实施方案中,开发客户端应用程序116可上传 开发者信息,例如,在一些实施方案中,关于开发者的人口统计信息(例如,名称、联系信息 等)及如由签名颁发机构提供的身份验证的证书,例如对应于特定无线装置平台的签名颁 发机构。
[0048] 在一些实施方案中,开发客户端应用程序116可提供来自开发者的关于在平台特 定应用程序文件的构建中是否包含更新代理126的指示。举例来说,开发者可指定平台特 定应用程序文件中包含更新代理126 W允许平台特定应用程序文件中的每一者在相应目 标计算装置上的应用程序的执行期间部分地更新。在另一实例中,开发者可具有产生调试 模式应用程序文件(例如,包含更新代理126)或生产模式应用程序文件(例如,待经由应 用程序商店、基于Web的下载站点或其它分布机构分布到最终用户)的选项。
[0049] 转到图1B,在一些实施方案中,集成云环境130可进一步包含一组目标无线计算 装置132,例如智能电话132a、翻盖式电话13化及个人数字助理(PDA) 132c。如所图解说 明,目标无线计算装置132中的每一者个别地(举例来说)通过插入到开发计算装置102的 端口的线或电线栓接到开发计算装置102。在一些实施方案中,除经由有线连接连接到开发 计算装置102外,目标无线计算装置132中的一或多者可由开发计算装置102经由无线机 构存取。举例来说,目标无线计算装置132中的一或多者可连接到与开发计算装置102相 同的局域网络(LAN)、校园网络、Wi-Fi?网络或其它无线网络连接。在一些实施方案中,特 定目标无线计算装置132与开发计算装置102之间的直接连接或无线连接的选择可部分地 基于与出于开发目的而上传的新可执行文件有关的目标无线计算装置132的特定品牌或 平台的权限。举例来说,特定品牌或平台可不提供用于开发模式应用程序文件的无线下载 的机会。
[0050] 如所图解说明,在一些实施方案中,一组平台特定可执行文件134(例如,安装文 件、应用程序文件等)可从云网络104递送到开发计算装置102。在一些实施方案中,平台 特定可执行文件134可各自定制到特定目标无线计算装置132。在一些实施方案中,开发 客户端应用程序116可识别属于目标无线计算装置132中的特定一者的平台特定可执行文 件134中的每一者且将相关联平台特定可执行文件134下载到每一相应目标无线计算装置 132。举例来说,第一平台特定开发可执行文件134a可通过开发客户端应用程序116推送 到智能电话132a,而第二平台特定可执行文件134b可推送到翻盖式电话13化且第H平台 特定可执行文件134c可推送到PDA 132c。在一些实施方案中,在从开发客户端应用程序 116上传平台特定可执行文件134后,平台特定可执行文件134中的每一者即刻可自动安装 于相应目标无线计算装置132上。在其它实施方案中,开发者可起始在每一目标无线计算 装置132上的安装。
[0051] 转到图1C,在一些实施方案中,经更新开发客户端应用程序140可进一步包含目 标无线计算装置132中的每一者与开发计算装置102之间的无线通信。举例来说,目标无 线计算装置132中的每一者可连接到与开发计算装置102相同的无线网络,而在目标无线 计算装置132中的每一者之间未必连接到相同无线网络。举例来说,翻盖式电话13化可连 接到Wi-Fi?网络,而PDA 132c可连接到Bluetoo化⑩网络。在一些实施方案中,更新代理 126可包含唯一无线识别符W使得开发客户端应用程序116能够辨识给定网络上的目标无 线计算装置132中的每一者。在一些实施方案中,更新代理126可包含唯一识别符W使得 开发客户端应用程序116能够辨识每一相应目标无线计算装置132上运行的特定平台特定 开发应用程序142 (例如,使用特定平台特定可执行文件134而安装,如关于图IB所描述)。
[0052] 在测试目标无线计算装置132中的每一者上的平台特定开发应用程序142时,在 一些实施方案中,开发者可选择修改内容文件144中的一或多者(例如,经由开发计算装置 102上的开发接口 118)。举例来说,内容文件144可包含在运行时间期间通过呈现文件存 取的一或多个呈现文件或媒体文件。在一些实施方案中,举例来说在保存每一经修改内容 文件144后或在请求用经修改内容文件144更新平台特定应用程序142后,可将对内容文 件144的改变提供到云网络104。在一些实施方案中,对内容文件144做出的修改可添加到 项目存储库108中的项目文件110。在一些实施方案中,经更新内容文件144可替换存储于 项目存储库108中的现有项目文件110。在一些实施方案中,经更新内容文件144中的一或 多者可作为现有项目文件110的新版本添加到项目目录112。
[0053] 如果在运行时间期间解译经修改内容文件144而非将其编译成二进制可执行文 件,那么在一些实施方案中,经修改内容文件144可推送到目标无线计算装置132中的一或 多者W供由相应平台特定开发应用程序142使用。在一些实施方案中,开发客户端应用程 序116可打开与目标无线计算装置132中的每一者的文件传送连接。举例来说,在一些实 施方案中,经由平台特定开发应用程序142中的每一者运行的更新代理126可实现与开发 客户端应用程序116的文件共享会话的创建。尽管图解说明为跨越无线连接而传送,但在 一些实施方案中,目标无线计算装置132中的一或多者可栓接到开发计算装置102。另外, 尽管目标无线计算装置132中的每一者图解说明为接收内容文件144的副本,但在一些实 施方案中,开发者可选择目标无线计算装置132用于接收内容文件144的一部分。举例来 说,开发者可在不将经更新内容文件144提供到翻盖式电话13化及PDA 132c的情况下检 验智能电话132a上的功能性。
[0054] 在一些实施方案中,经由平台特定开发应用程序142中的每一者运行的更新代理 126可监视相应目标无线计算装置132上的内容文件目录W辨识内容文件的添加或更新。 在一些实施方案中,在辨识到新或经更新内容文件后,更新代理126即刻可刷新平台特定 开发应用程序142的当前呈现。W此方式,举例来说,由开发者做出的修改可立即反映于每 一经更新目标无线计算装置132上的用户接口中而不需要重新加载或重新开始相应平台 特定开发应用程序142。
[00巧]在一些实施方案中,在类似集成云环境150中,开发者可通过连接到云网络104中 的web服务器114而开发且测试跨平台软件应用程序W在web客户端应用程序156内工作。 在一些实施方案中,web客户端应用程序156可为基于浏览器的程序W用于递送服务器侧 开发客户端应用程序164。举例来说,Web客户端应用程序呈现文件151可提供(例如,下 载)到开发计算装置102 W经由开发接口 118而实现开发。在一些实施方案中,web客户 端应用程序156可为能够与由web服务器114提供的开发客户端应用程序164集成在一起 的桌面或移动装置应用程序。如同关于图IA所描述的集成云环境100,在一些实施方案中, web客户端应用程序156及/或开发客户端应用程序164可用于呈现包含装置模拟器120 的开发接口 118。
[0056] 在开发跨平台软件应用程序时,开发者可创建一或多个内容文件及/或将一或多 个内容文件上传到web服务器114。在一些实施方案中,内容文件可存储于项目目录112的 项目文件110内,举例来说存储于项目存储库108内。
[0057] 在一些实施方案中,开发者可将伴随应用程序安装可执行文件152下载到目标无 线计算装置132中的一或多者。在一些实施方案中,伴随应用程序安装可执行文件152可 经由移动装置应用程序服务器158 (举例来说经由包含经提供W供购买或免费的若干个移 动装置应用程序的应用程序商店160)可获得。在一些实施方案中,两个或两个W上移动装 置应用程序服务器可提供对伴随应用程序安装可执行文件152的存取。举例来说,应用程 序商店160可为平台特定应用程序商店,例如苹果公司的用于iPhone?的Apple?应用程序 商店。在一些实施方案中,移动装置应用程序服务器158可从云网络104提供于单独网络 166内。在其它实施方案中,网络166可包含于云网络104内。伴随应用程序可执行文件 152a、15化及152c中的每一者可经产生W与特定操作系统及/或装置平台一起操作。举例 来说,伴随应用程序可执行文件152a可经产生用于安装于目标无线计算装置132a的装置 平台上。
[0058] 在下载伴随应用程序安装可执行文件152后,相应伴随应用程序162a、162b、162c 即刻可安装于相应目标无线计算装置132a、132b、132c上。在一些实施方案中,伴随应用程 序162可用于产生用于呈现经由开发客户端应用程序164及web客户端应用程序156开发 的内容文件144的壳体环境。在一些实施方案中,伴随应用程序162可包含用于呈现内容 文件144的无窗口浏览器特征。在一些实施方案中,伴随应用程序162可包含额外功能性, 例如接收代理(未图解说明)能够从云网络104接收内容文件且更新代理(未图解说明) 经配置W允许(举例来说)在请求后即刻及/或自动地在伴随应用程序162内更新内容文 件。
[0059] 转到图1E,在已安装伴随应用程序162之后,与当前项目(例如,如经由开发客户 端应用程序164及web客户端应用程序156而开发的、项目目录112中所积累的)有关的 内容文件122可下载及再现于伴随应用程序162内。举例来说,伴随应用程序162可表现 为用于开启开发客户端应用程序164及web客户端应用程序156内所开发的跨平台软件应 用程序的功能性的壳体。可在伴随应用程序162内开启此功能性,举例来说,开发应用程序 170a、17化、170c。在一些实施方案中,伴随应用程序162可组织两个或两个W上开发应用 程序(例如,对应于两个或两个W上跨平台软件应用程序项目)或单个开发应用程序的两 个或两个W上版本W用于跨平台软件应用程序的持续测试及开发。
[0060] 如图IF中所图解说明,在跨平台开发应用程序已部署到目标无线计算装置132之 后,可修改、更新或添加一或多个内容文件144。在一些实施方案中,可将内容文件144拉 到目标无线计算装置132。举例来说,在菜单选择、预设定触摸屏手势或对网络位置的存取 后,目标无线计算装置132中的每一者可即刻接收一或多个内容文件144。在一些实施方案 中,内容文件144的下载可由构建到伴随应用程序162中的功能性辅助。在一些实施方案 中,内容文件144可自动地推送到目标无线计算装置132中的一或多者。举例来说,经由与 云网络104的网络连接或经由与计算装置102的无线连接,内容文件144可递送到目标无 线计算装置132中的一或多者。
[0061] 在一些实施方案中,在下载内容文件144后,伴随应用程序162即刻可重新产生目 前显示W自动地检索内容文件144内所提供的新内容。举例来说,类似于关于图IA到IC 所描述的更新代理126的功能性可构建到伴随应用程序162中,W此方式,伴随应用程序 162a、16化及162c可分别呈现经更新开发应用程序170' a、170' b及170' Co
[0062] 在一些实施方案中,一旦开发者已确定测试应用程序如所期望地起作用,项目文 件110便可与(举例来说)开发服务器106内的平台特定文件124合并W构建部署应用程 序。在一些实施方案中,部署应用程序可提供到计算装置102或传送到应用程序商店,例如 关于图ID所描述的应用程序商店158。
[0063] 图2A到2C呈现图解说明用于开发跨平台软件应用程序的一组方法200、270、280 的流程图。举例来说,方法200可与方法270 (例如,在涉及客户端安装的开发解决方案的 情况中)或方法280 (例如,在涉及基于浏览器的开发环境的情况中)组合。
[0064] 转到图2A,在一些实施方案中,方法200可W存取用于开发跨平台软件应用程序 的开发客户端应用程序(202)开始。在一些实施方案中,存取开发客户端应用程序可包含 安装用于与集成云开发环境介接的客户端应用程序。在一些实施方案中,开发客户端应用 程序可经由轻客户端或浏览器接口而提供。
[0065] 在一些实施方案中,可创建跨平台软件应用程序项目(204)。在一些实施方案中, 项目可与一或多个开发文件、目标计算装置及用于开发跨平台软件应用程序的其它资源相 关联。在一些实施方案中,在创建新项目后,即刻可将一或多个基本呈现文件添加到项目目 录(例如,本地的及/或经由网络云可存取的)。举例来说,基本呈现文件可配置有标准包 含物及结构W提供用于呈现应用程序接口的粗略框架。在一些实施方案中,基本呈现文件 可包含描述在一些实例中包含文本、控制件及图像的应用程序的呈现的至少一个标记语言 文件。此外,在一些实施方案中,基本呈现文件可包含用于描述可适合于在运行时呈现的样 式的一或多个样式表文件加上可支持(例如,在一些实例中)响应于用户起始的动作(例 女口,控制选择、文本输入、语音输入等)及响应于装置事件(例如,响应于装置传感器事件) 而将执行的编程动作的一或多个解译语言文件。在特定实例中,基本呈现文件可包含用于 与无窗口浏览器呈现引擎介接的化vaScript文件、用于建立基本显示设定的St^e. CSS文 件及用于将各种呈现文件链接在一起的index, html文件。
[0066] 在一些实施方案中,可包含抽象层库W实现对包含于特定无线计算装置平台中的 特征、输入/输出元件、传感器及/或外围装置的调用。举例来说,可包含Apache Cordova W提供对无线计算装置平台的特征的存取。举例来说,使用抽象层可获得的类属函数可映 射到特定传感器装置、输入/输出装置或个别计算装置平台的其它特征(例如,经由应用程 序编程接口),从而允许开发者在不知晓关于如每平台级别上所实施的特征的特定信息的 情况下与该些特征交互。在一些实例中,抽象层可包含对扬声器元件、加速度计元件、全球 定位系统(GP巧元件或许多计算装置常见的其它元件的类属调用。
[0067] 在一些实施方案中,开发者可在创建新项目之前注册具有集成云环境的新用户账 户或登录具有集成云环境的现有账户。在项目创建期间,一或多个项目目录可经创建用于 存储跨平台软件应用程序的开发中所使用的项目材料(例如,元数据、呈现文件、媒体文 件、可执行文件等)。
[0068] 在一些实施方案中,可呈现用于开发用于跨平台软件应用程序项目的呈现文件的 应用程序开发用户接口(206)。在一些实施方案中,呈现文件可形成在运行时将解译为跨平 台软件应用程序的用户接口的一组平台独立内容文件的一部分。在一些实施方案中,应用 程序开发用户接口可包含用于编辑呈现文件(例如,HTML、CSS及化vaScript文件等)的 编辑器。在一些实施方案中,编辑器可包含语法着色、语法格式化、重构及/或代码导航能 力W使得开发者能够易于创建及修改用于跨平台软件应用程序项目的一组相关内容文件。
[0069] 在一些实施方案中,可呈现用于将内容文件添加到跨平台软件应用程序项目的项 目文件导航接口(208)。在一些实施方案中,项目文件导航接口可包含含有与一或多个计算 装置平台有关的原生平台代码文件的几个文件及目录W及平台独立内容(例如呈现文件 及媒体文件)的文件及目录。在一些实施方案中,可在网络云中管理原生平台代码文件,而 可在开发计算装置上在本地复制平台独立文件。在一些实施方案中,开发者可将文件从其 它项目目录拷贝到当前项目目录中W在开发新跨平台软件应用程序中使用。举例来说,开 发者可已在集成云环境中创建一或多个跨平台软件应用程序。在一些实施方案中,开发者 可将一或多个本地所存储媒体文件(例如音频、图像及视频文件)拖放到项目文件导航接 口中。
[0070] 在一些实施方案中,跨平台软件应用程序的模拟可在装置模拟器中运行(210)。举 例来说,在创建、编辑及解决项目内容中的任何预编译程序错误(例如内容文件中的链接 问题)之后,开发者可选择构建跨平台软件应用程序的模拟器版本W用于在开发客户端应 用程序中进行测试。在一些实施方案中,装置模拟器可再现为开发客户端应用程序中的覆 盖。在一些实施方案中,装置模拟器可作为开发计算装置的显示区域(例如,内建或外部监 视器等)上的单独应用程序而开启。在一些实施方案中,装置模拟器可经配置W模拟若干 个不同计算装置平台。在一些实例中,装置模拟器可包含用于智能电话、PDA、平板计算机、 便携式多媒体装置及其它计算装置或装置平台的多种品牌及型号的模拟结构。在一些实施 方案中,模拟器可包含用于改变模拟结构的控制件W模拟装置或装置平台的不同类型、品 牌及/或型号。
[0071] 在一些实施方案中,开发者可经由模拟结构上所图解说明的控制件而与模拟交 互。举例来说,开发者可选择(例如,经由触摸屏上的手势、用鼠标或其它指针装置进行点 击等)按钮或其它控制件,例如模拟结构中所再现的内建键盘的键。在一些实施方案中,开 发者可使用连接到开发计算装置的输入装置(例如键盘及/或鼠标)W将输入(例如,登录 信息、对基于触摸屏的控制件的"触摸"等)提供到由装置模拟器再现的所模拟应用程序。
[0072] 在一些实施方案中,开发者可将输入"命令"的文件馈送到装置模拟器。举例来说, 测试呈现文件可含有若干个输入命令W用于模拟到跨平台软件应用程序的模拟的输入,例 女口,在一些实例中,地理位置信息及加速度计读数。
[0073] 在一些实施方案中,装置模拟器可包含用于模拟用户输入(例如传感器数据及装 置定向)的特征。举例来说,装置模拟器可包含输入机构W提供地理位置信息、加速度信 息、光电传感器输入、麦克风输入或其它所模拟输入。
[0074] 在模拟期间,基于所模拟应用程序的功能性(212),在一些实施方案中,可接收对 跨平台软件应用程序项目的更新(214)。举例来说,开发者可在与装置模拟器交互与更新 一或多个内容文件之间进行切换W调整所模拟应用程序的行为。在一些实施方案中,在所 模拟应用程序正由装置模拟器执行时,可将对在运行时间期间可解译的一或多个内容文件 的更新施加到所模拟应用程序。在一些实施方案中,可响应于经更新内容文件而刷新装置 模拟器的显示W将包含由开发者提供的改变的所模拟应用程序的外貌呈现给开发者。在 一些实例中,在经更新内容文件内所做出的改变可影响所再现文本的大小、位置、色彩或字 形,添加或移除交互式控制,给屏幕添加背景图像,或响应于与所模拟装置结构或其它所模 拟输入的交互而修改所模拟应用程序的行为。
[00巧]在某一时刻,开发者可决定在目标计算装置上运行跨平台软件应用程序。转到图 2B,在一些实施方案(例如涉及本地开发客户端应用程序的实施方案)中,方法200之后可 能接着为方法270,方法270 W接收一或多个目标计算装置的选择(216)而开始。在一些实 施方案中,开发者可从目标计算装置的一列可用品牌及/或型号选择一或多个目标计算装 置。在一些实施方案中,目标计算装置平台可由开发者而非计算装置的特定品牌或型号的 指示供应。
[0076] 在一些实施方案中,开发者可注册具有项目或具有集成云环境的一或多个计算装 置(例如,经由用户账户)。在一些实施方案中,计算装置中的一或多者可注册为具有无线 计算平台(例如,Apple篡iOS?、Google An化OicT等)的开发装置。举例来说,装置可配 设为"开发装置"W在开发过程期间实现开发应用程序通过开发者的直接加载。举例来说, 开发装置的配设可由特定计算装置平台决断。在一些实施方案中,配设或证书可由开发者 上传W对具有集成云环境的装置进行身份验证。在一些实施方案中,所供应配设或证书可 与用户账户相关联,W使得可关于与开发者相关联的任何项目使用计算装置。
[0077] 在一些实施方案中,关于此注册的信息可作为元数据提供到待与项目相关联的集 成云环境。在一些实施方案中,开发者可从一列所注册目标计算装置选择一或多个目标计 算装置。
[0078] 在其它实施方案中,开发客户端应用程序可识别与开发计算装置通信的一或多个 计算装置。举例来说,开发客户端应用程序可检索关于与开发计算装置通信的每一计算装 置的信息(例如,识别符、平台信息等)并将该些信息作为选择为目标计算装置的候选呈现 给用户。在一些实施方案中,在检测计算装置后,集成云环境即刻可确定计算装置的平台是 否需要配设为开发装置。如果是,那么在一些实施方案中,集成云环境可提示开发者供应将 计算装置配设为用于相关联平台的开发装置的证据。
[0079] 在一些实施方案中,可起始开发应用程序可执行文件的编译(218)。在一些实施方 案中,开发者可经由开发客户端应用程序的用户接口选择起始用于在选择目标计算装置上 安装跨平台软件应用程序的应用程序可执行文件的产生的控制件(例如,"在目标计算装置 上运行"、"编译用于目标计算装置的测试应用程序"等)。举例来说,响应于此控制件的选 择,开发客户端应用程序可起始用于所选择的每一目标计算装置的平台特定应用程序可执 行文件(例如,可执行应用程序文件、安装文件等)的编译。在一些实施方案中,一或多个 内容文件可上传到集成云环境W用于包含于开发应用程序可执行文件的编译中。
[0080] 在一些实施方案中,可接收一或多个开发应用程序可执行文件(220)。举例来说, 开发计算装置可从云网络接收一或多个开发应用程序可执行文件。在一些实施方案中,开 发应用程序可执行文件可包含用W安装于目标计算装置上及与目标计算装置介接的平台 特定功能及框架。在一些实施方案中,开发应用程序可执行文件可包含用于经由目标计算 装置平台进行检验或授权的数字签名。在一些实施方案中,开发应用程序可执行文件可包 含用于在安装于目标计算装置上之后部分地更新开发应用程序的更新代理。
[0081] 在一些实施方案中,可识别一或多个目标计算装置(222)。举例来说,如果未进行 关于一或多个目标计算装置的选择,那么开发客户端应用程序可识别与开发计算装置通信 的一或多个目标计算装置。在一些实施方案中,目标计算装置可与开发计算装置直接(例 女口,栓接、有线)通信。在一些实施方案中,目标计算装置中的一或多者可与开发计算装置 无线通信。
[0082] 在一些实施方案中,对于每一所识别目标计算装置(226),可将对应应用程序可执 行文件推送到目标计算装置(224)。在一些实施方案中,开发客户端应用程序可将每一可执 行文件推送到相应目标计算装置。在一些实施方案中,开发者可将应用程序可执行文件手 动传送到对应目标计算装置。在一些实施方案中,应用程序可执行文件可经配置W在下载 到目标计算装置后即刻自动安装。在一些实施方案中,开发客户端应用程序可起始目标计 算装置中的一或多者上的所下载应用程序可执行文件的安装的执行。在一些实施方案中, 应用程序可执行文件可在下载后即刻开始安装。在一些实施方案中,开发者可起始应用程 序可执行文件在目标计算装置上的手动安装。
[0083] 在一些实施方案中,可识别无线网络上的一或多个目标计算装置(228)。举例来 说,在开发计算装置应用程序下载及安装于每一目标计算装置上之后的某一时刻,开发者 可断开先前直接连接到开发计算装置的目标计算装置中的至少一者。关于所述实例进一步 地,目标计算装置可与和开发计算装置相同的无线网络(例如,Wi-Fi?、Blucl.〇〇比:货等)通 信。
[0084] 在一些实施方案中,可接收一或多个内容文件的更新或添加(230)。举例来说,经 由开发客户端应用程序用户接口,开发者可在与目标计算装置中的一或多者上运行的开发 应用程序交互期间响应于所观察到行为而将修改应用于内容文件中的一或多者。举例来 说,显示器的一部分可不如所预期而再现,或控制件可不W预期方式作出响应。在一些实施 方案中,开发者可经由修改内容文件中的一或多者及/或添加一或多个新内容文件而将修 理应用于行为。如果经修改及/或新内容文件包含仅在运行时间期间解译的文件,那么在 一些实施方案中,包含于开发计算装置应用程序中的更新代理可经配置W接收且集成所更 新内容文件与开发计算装置应用程序。
[0085] 对于每一目标计算装置(238),如果可获得与目标计算装置的无线连接(232),那 么在一些实施方案中,可经由无线连接将经更新及/或所添加内容文件推送到目标计算装 置但34)。在一些实施方案中,构建到开发应用程序中的更新代理可经配置W经由无线网络 建立与开发计算装置的文件共享连接。在其它实施方案中,文件共享连接可配置于目标计 算装置与开发计算装置之间而不需要的更新代理的辅助。举例来说,无线计算装置平台通 信协议可用于建立无线目标计算装置与开发计算装置之间的连接。如果不可获得与目标计 算装置的无线连接(232),那么在一些实施方案中,可经由直接(例如,有线、栓接)连接将 经更新及/或所添加内容文件推送到目标计算装置(236)。在有线或无线情况中,在一些实 施方案中,开发客户端应用程序可将内容文件推送到每一目标计算装置上的当前含有由开 发应用程序使用的内容文件的目录结构中。在一些实施方案中,编译成开发应用程序的更 新代理可检索推送到临时目录中的一或多个文件且将所述文件移动到活动目录(例如,由 开发应用程序读取的目录)中。
[008引转到图2C,方法200可W方法280继续,方法280 W将下载信息提供到目标计算装 置(240)而开始。举例来说,在准备项目的内容文件后,可给开发者提供参考W使目标计算 装置指向用W下载内容文件的网络位置。在一些实施方案中,在开发计算装置的显示区内 可提供快速响应(QR)代码。举例来说,目标无线计算装置的扫描特征可用于扫描QR代码 W检索其中可获得内容文件的网络位置,例如统一资源定位器扣化)。在一些实施方案中, 位置可提供到开发计算装置的显示区域,举例来说作为文本或作为超链接。在一些实施方 案中,对于任何额外装置(242),可W类似方式提供下载信息。
[0087] 在一些实施方案中,目标计算装置可使用下载信息来下载内容文件(246)。在一些 实施方案中,可将内容文件下载到表现为用于证明开发应用程序的功能性的壳体的伴随应 用程序中。开发者可继续测试目标计算装置上的开发应用程序。
[008引在某一稍后时间点处,在一些实施方案中,可接收一或多个内容文件的添加或对 一或多个内容文件的更新(248)。举例来说,经由开发客户端应用程序用户接口,开发者可 在与目标计算装置中的一或多者上运行的开发应用程序交互期间响应于所观察到行为而 将修改应用于内容文件中的一或多者。举例来说,显示器的一部分可不如所预期而再现,或 控制件可不W预期方式作出响应。在一些实施方案中,开发者可经由修改内容文件中的一 或多者及/或添加一或多个新内容文件而将修理应用于行为。在一些实施方案中,伴随应 用程序可经配置W接收且集成经更新及/或额外内容文件。
[0089] 如果存在与特定目标计算装置所建立的连接(250),那么在一些实施方案中,可将 内容文件推送到目标计算装置(256)。举例来说,在一些实施方案中,在内容文件的初始下 载后,即刻可在集成云环境与目标计算装置之间建立共享网络连接。在其它实施方案中,可 将一或多个内容文件直接从开发计算装置推送到目标计算装置(例如,在将内容文件从云 网络下载到开发计算装置之后)。
[0090] 在一些实施方案中,内容文件可经提供W供下载(252)。举例来说,内容文件可经 提供W供在与一组初始内容文件相同的网络位置处或在不同网络位置处下载。
[0091] 在一些实施方案中,目标计算装置可拉取经更新内容文件(254)。在一些实施方案 中,开发者可使用QR代码、U化或其它输入信息来起始下载。在其它实施方案中,网络位置 可存储于目标计算装置(例如,通过伴随应用程序的特征)内,且在从开发者接收特定输入 后即刻可自动拉取内容文件。举例来说,在选择显示内的菜单项后或在经由目标计算装置 的触摸屏识别特定手势后,可将内容文件拉到目标计算装置。对于每一额外目标计算装置 (258),取决于是否存在到用于内容文件的自动推送(256)的目标计算装置的连接(250)或 是否将内容文件拉到(254)目标计算装置,可将内容文件传送到目标计算装置。
[0092] 转到图3A,流程图图解说明在一些实施方案中可用于开发跨平台软件应用程序的 方法300。在一些实施方案中,方法300可W接收与跨平台软件应用程序项目有关的一组 内容文件(302)而开始。在一些实施方案中,内容文件可提供为在运行时间期间将由平台 特定开发应用程序解译的信息。举例来说,内容文件可包含经配置W经由在目标计算装置 上执行的浏览器引擎特征(例如,在"无窗口"浏览器应用程序内)而呈现应用程序图形用 户接口的呈现文件及媒体文件。在一些实施方案中,可将内容文件上传到联网环境,例如 用于产生并入有所述组内容文件的一或多个平台特定应用程序可执行文件的集成云环境。 在一些实施方案中,除内容文件之外,还可接收其它文件或信息,例如,在一些实例中,关于 用于产生平台特定应用程序可执行文件、媒体或用于具有无线计算装置应用程序代码(例 女口,用作应用程序图标的图像等)的编译时间包含物的其它文件的目标计算装置平台的信 息、关于经注册W使用用于开发跨平台软件应用程序的集成云环境的特定项目或开发者的 信息及呈现开发者被授权开发用于一或多个特定计算装置平台的计算装置应用程序的证 据的注册信息、配设信息或证书信息。在一些实施方案中,一或多个其它文件可在一些实例 中基于名称、元数据或文件结构位置而识别为编译时间文件而非解译文件。
[0093] 在一些实施方案中,内容文件及任何其它文件的目的及使用可经由用于将跨平台 软件应用程序映射到用于存取装置特征(例如,传感器、输入/输出元件等)的平台特定命 令的抽象层的目录结构而部分地导出。举例来说,为使用Apache Cordova抽象层来开发应 用程序,可在"WWW"文件目录中提供内容文件。在一些实施方案中,在创建跨平台软件应用 程序时,可在由开发者存取的开发环境中部分地呈现抽象层的目录结构。
[0094] 在一些实施方案中,对于每一目标计算装置平台(308),可将内容文件与对于特定 目标计算装置平台为平台特定的平台特定文件组合W创建用于目标计算装置平台的一组 项目文件(304)。在一些实施方案中,平台特定文件可包含平台特定库W使得用于与装置特 征(例如,传感器、输入/输出元件等)介接的抽象层能够与特定计算装置平台通信。在一 些实施方案中,可从用于创建用于特定计算装置平台的计算装置应用程序的软件开发工具 包(SDK)获得平台特定文件。举例来说,一或多个平台特定SDK可全部或部分地部署于网络 云环境中W用于基于跨平台软件应用程序文件而产生平台特定软件应用程序可执行文件。
[0095] 另外,在一些实施方案中,可将内容文件与其它跨平台文件组合W实现跨平台软 件应用程序的功能性。举例来说,可将内容文件与库、抽象层或其它构造组合W支持一或多 个计算装置平台上的跨平台软件应用程序的功能性。在特定实例中,内容文件可拷贝到并 入有Apache Cordova平台的目录结构中。
[0096] 在一些实施方案中,更新代理还可与项目文件合并W使得在安装于目标计算装置 上时能够更新平台特定开发应用程序(306)。在一些实施方案中,更新代理可包含用于提供 由开发计算装置用于识别在目标计算装置上执行的平台特定开发应用程序的识别机构的 一或多个算法。在一些实施方案中,更新代理可包含用于在目标计算装置与开发计算装置 之间建立文件共享连接W用于从开发计算装置接收经更新内容文件的一或多个算法。在一 些实施方案中,更新代理可包含用于监视用于从开发计算装置推送到目标计算装置的经更 新或新文件的目录(例如内容文件目录或临时目录)的一或多个算法。
[0097] 在一些实施方案中,对于每一目标计算装置平台(314),可编译项目文件W创建用 于目标计算装置平台的相应平台特定开发应用程序可执行文件(310)。在一些实施方案中, 可在集成云环境中使用平台特定SDK的部分产生平台特定开发应用程序可执行文件(例 女口,安装可执行文件)。举例来说,可经由云网络存取经由平台特定SDK提供的编译及构建 操作W编译及构建平台特定开发应用程序可执行文件。
[0098] 此外,在一些实施方案中,对于每一目标计算装置平台(314),可将数字签名添加 到用于特定目标计算装置平台的开发应用程序可执行文件(312)。在一些实施方案中,代码 签名技术可由计算装置平台用于确保代码的完整性。举例来说,数字签名可适用于平台特 定开发可执行文件W允许与所述计算装置平台配置的目标计算装置对应用程序代码的源 (例如,开发者、公司等)进行身份验证。在一些实施方案中,数字签名可适用于平台特定开 发应用程序可执行文件W将关于与代码相关联的意向的信息提供到目标计算装置。在一些 实施方案中,意向可包含哪些装置能力由平台特定开发应用程序(例如,地理位置、Wi-Fi? 等)存取。举例来说,可将意向呈现给用户W将供应到平台特定开发应用程序的存取告知 用户W实现平台特定开发应用程序的功能性。在特定实例中,Apple iOS?可接收包含意向 声明及经身份验证开发者证书的移动配设文件。
[0099] 在一些实施方案中,由开发者提供的元数据可用于编码具有数字签名的可执行文 件。在一些实例中,配设或证书可基于开发者在用W在特定计算装置平台上开发新计算装 置应用程序的请求下提交的应用程序而供应到开发者。关于配设或证书的信息或在一些实 施方案中配设或证书本身可供应到集成云环境W供包含于平台特定开发应用程序可执行 文件中。
[0100] 在一些实施方案中,平台特定开发应用程序可执行文件可提供到开发计算装置 (316)。举例来说,集成云环境可将开发应用程序可执行文件上传到目标计算装置上的目 录。在一些实施方案中,平台特定开发应用程序可执行文件可放置于临时目录中。在其它 实施方案中,开发者可请求平台特定开发应用程序可执行文件的下载。
[0101] 在一些实施方案中,可将内容文件存储于版本受控的项目目录中(318)。举例来 说,在集成云环境中可维持内容文件的多个版本W用于往回滚动到开发的先前阶段或用于 与团队中的额外开发者共享。在一些实施方案中,项目文件及/或平台特定开发应用程序 可执行文件还可存储于版本受控的项目目录。在一些实施方案中,在项目目录中可维持数 字签名数据,例如配设或证书数据。在其它实施方案中,在包含为数字签名之后可删除配设 或证书数据的副本(举例来说)W保护开发者抵抗数字签名数据的盗窃及误用。
[0102] 转到图3B,流程图图解说明在一些实施方案中可用于开发跨平台软件应用程序的 方法330。在一些实施方案中,方法330可W检索与跨平台软件应用程序项目有关的一组内 容文件(332)而开始。在一些实施方案中,内容文件可提供为在运行时间期间将由平台特 定开发应用程序解译的信息。举例来说,内容文件可包含经配置W经由在目标计算装置上 执行的浏览器引擎特征(例如,在"无窗口"浏览器应用程序内)而呈现应用程序图形用户 接口的呈现文件及媒体文件。在一些实施方案中,除内容文件之外,还可接收其它文件或信 息,例如,在一些实例中,关于用于产生平台特定应用程序可执行文件、媒体或用于具有开 发应用程序代码(例如,待用作应用程序图标的图像等)的编译时间包含物的其它文件的 目标计算装置平台的信息、关于经注册W使用用于开发跨平台软件应用程序的集成云环境 的特定项目或开发者的信息及呈现开发者被授权开发用于一或多个特定计算装置平台的 软件应用程序的证据的注册信息、配设信息或证书信息。在一些实施方案中,一或多个其它 文件可在一些实例中基于名称、元数据或文件结构位置而识别为编译时间文件而非解译文 件。
[0103] 在一些实施方案中,内容文件及任何其它文件的目的及使用可经由用于将跨平台 软件应用程序映射到用于存取装置特征(例如,传感器、输入/输出元件等)的平台特定命 令的抽象层的目录结构而部分地导出。举例来说,为使用Apache Cordova抽象层来开发应 用程序,可在"WWW"文件目录中提供内容文件。在一些实施方案中,在创建跨平台软件应用 程序时,可在由开发者存取的开发环境中部分地呈现抽象层的目录结构。
[0104] 在一些实施方案中,可确定存储地址(334)。举例来说,网络位置或U化可经识别 W用于将内容文件提供到联网目标计算装置。在一些实施方案中,存储地址可为仅已知目 标计算装置可存取(例如,所辨识的唯一识别符)或由具有由集成云环境的安全元件辨识 的识别信息(例如,用户识别、口令等)的请求程序存取的地址。
[0105] 在一些实施方案中,可在存储地址处接收请求(336)。在一些实施方案中,请求可 是针对一或多个内容文件的下载。在一些实施方案中,请求可由已知或可识别目标计算装 置接收。在一些实施方案中,目标计算装置的用户可在被允许下载内容文件之前提供身份 验证信息。
[0106] 在一些实施方案中,可将内容文件提供到请求目标计算装置(338)。举例来说,在 目标计算装置或由目标计算装置提供的用户信息的身份验证后,即刻可将一或多个内容文 件下载到目标计算装置。
[0107] 在稍后时间点处,在一些实施方案中,可接收对内容文件的更新(340)。举例来说, 开发者可对开发客户端应用程序内的项目做出改变。在一些实施方案中,经更新内容文件 可用于由一或多个目标计算装置下载。
[010引如果特定目标计算装置经配置用于自动接收经更新内容文件(342),那么在一些 实施方案中,可将内容文件推送到目标计算装置(338)。举例来说,使用所建立网络连接,可 将内容文件自动提供到目标计算装置。在一些实施方案中,在目标计算装置上执行的伴随 应用程序可与集成云环境建立内容文件共享连接。
[0109] 否则,在一些实施方案中,在存储地址处可接收对经更新内容文件的请求(344)。 在一些实施方案中,存储地址可与最初确定的存储地址(334)相同W用于提供与跨平台软 件应用程序项目有关的内容文件。在一些实施方案中,存储地址可经确定并提供到开发者, 举例来说目标计算装置的显示区上的QR代码、册L或文本消息。在一些实施方案中,可将 内容文件从存储地址下载到目标计算装置。
[0110] 图4A图解说明方法400的流程图,在一些实施方案中,方法400可用于执行跨平 台软件应用程序的开发版本的部分更新。在一些实施方案中,方法400可W下载开发应用 程序可执行文件(402)而开始。在一些实施方案中,开发应用程序可执行文件可用于安装 W更新代理特征编译的开发应用程序W用于在测试目标计算装置上的开发应用程序时自 动更新内容文件。在一些实施方案中,可将开发应用程序可执行文件从开发计算装置推送 到经栓接目标计算装置。在其它实施方案中,可经由无线网络连接将开发应用程序可执行 文件从开发计算装置推送到目标计算装置。
[0111] 在一些实施方案中,可执行开发应用程序可执行文件W安装开发应用程序(404)。 在一些实施方案中,开发应用程序可包含使用解译来自一组呈现文件的用户接口指令的浏 览器引擎特征(例如,"无窗口"浏览器接口)而产生的接口。在一些实施方案中,可将呈现 文件安装于译码成开发应用程序的内容文件目录。
[0112] 在一些实施方案中,可打开与开发计算装置的文件更新连接(406)。在一些实施方 案中,开发应用程序的更新代理特征可与开发计算装置通信W建立文件共享连接。在一些 实施方案中,更新代理可将识别经编译W在目标计算装置上运行的开发应用程序的唯一识 别符传输到开发计算装置或W其它方式将所述唯一识别符提供到开发计算装置。
[0113] 在一些实施方案中,可正运行开发应用程序(408)。举例来说,开发者可与开发应 用程序直接交互或导致与开发应用程序的交互(例如,将测试输入馈送到目标计算装置)。
[0114] 在一些实施方案中,可修改内容文件(410)。在一些实施方案中,在测试目标计算 装置上的开发应用程序时,开发者可发现关于开发应用程序的性能的问题。在一些实施方 案中,开发者可更新一或多个内容文件W更改开发应用程序的性能且将经更新内容文件推 送到目标计算装置。举例来说,开发者可改变开发应用程序的用户接口中的控制件的位置。 在一些实施方案中,在选择开发客户端应用程序用户接口中的保存控制件后,即刻可将经 更新内容文件自动推送到运行具有更新代理特征的开发应用程序的一或多个目标计算装 置。在一些实施方案中,开发者可主动选择指导开发客户端应用程序将内容文件推送到目 标计算装置的控制件。
[0115] 在一些实施方案中,在目标计算装置上起作用的更新代理可接收一或多个内容文 件的传送。在一些实施方案中,可将内容文件推送到内容文件目录(例如,由开发应用程序 用于解译用户接口信息的目录)。在一些实施方案中,可将内容文件推送到临时目录。举例 来说,更新代理可辨识一或多个经更新内容文件的接收且将经更新内容文件移动到由开发 应用程序读取的内容文件目录中。在一些实施方案中,开发客户端应用程序可将经更新呈 现文件及新内容文件(例如,经由脚本语言中的包含声明而链接到经更新呈现文件中等) 推送到目标计算装置而非接收仅经更新内容文件。
[0116] 在一些实施方案中,可响应于接收到经修改内容文件而被迫刷新执行开发应用程 序的当前页(例如,视图、用户接口图像等)(412)。在一些实施方案中,更新代理可包含在 开发应用程序从相同点继续运行时用于刷新开发应用程序的用户接口的算法。举例来说, 如果已更新呈现文件W移动当前所显示的用户接口的视图上的控制件的位置,那么页的刷 新可导致控制件在用户接口内的新位置的立即显示。W此方式,在一些实施方案中,可在不 导致开发应用程序的功能性的明显延迟或重新开始的情况下做出对开发应用程序的行为 的修改。在其它实施方案中,更新代理可在正更新内容文件时停止或暂停开发应用程序,接 着重新开始开发应用程序或重新加载开发应用程序W使用经更新内容文件而开始。
[0117] 图4B图解说明方法420的流程图,在一些实施方案中,方法420可用于执行跨平 台软件应用程序的开发版本的部分更新。在一些实施方案中,方法420可W确定伴随应用 程序是否已安装于目标计算装置上(422)而开始。在一些实施方案中,如果伴随应用程序 安装文件、应用程序文件或其它指示符不位于目标计算装置上,那么可下载伴随应用程序 安装可执行文件(424)。在一些实施方案中,可(举例来说)通过浏览或搜索来自目标计算 装置的伴随应用程序而从应用程序商店下载伴随应用程序安装可执行文件。在一些实施方 案中,可在网络存储位置处存取伴随应用程序安装可执行文件。举例来说,U化可具备下载 伴随应用程序安装可执行文件上的信息。在一些实例中,存储位置可提供于再现到开发计 算装置及/或目标计算装置的显示区域的QR代码或文本内。
[0118] 在一些实施方案中,伴随应用程序可包含经配置W再现跨平台软件应用程序的内 容文件的无窗口浏览器功能性。在一些实施方案中,无窗口浏览器功能性可进一步包含抽 象层库W实现对特征、输入/输出元件、传感器及/或包含于特定计算装置平台中的外围装 置的调用。举例来说,可包含Apache Cordova W提供对计算装置平台的特征的存取。在一 些实施方案中,无窗口浏览器内再现的内容文件可包含对使用抽象层可获得的类属函数的 调用。在一些实例中,可将类属函数映射到特定传感器装置、输入/输出装置或个别计算装 置平台的其它特征(例如,经由应用程序编程接口)。举例来说,类属函数可在不知晓关于 如每平台级别上所实施的特征的特定信息的情况下给开发者提供用W与该些特征交互的 机会。举例来说,抽象层可包含对扬声器元件、加速度计元件、全球定位系统佑P巧元件或 许多计算装置常见的其它元件的类属调用。
[0119] 在一些实施方案中,伴随应用程序可包含用W管理创建于用于开发跨平台软件应 用程序的集成云环境中的两个或两个W上跨平台软件应用程序项目的管理特征。举例来 说,与两个或两个W上跨平台软件应用程序项目有关的内容文件可下载到目标计算装置且 由伴随应用程序管理。
[0120] 在一些实施方案中,伴随应用程序可包含用于下载及管理用于一或多个跨平台软 件应用程序项目的内容文件的功能性。举例来说,伴随应用程序可管理用W对具有提供内 容文件的开发服务器的目标计算装置进行身份验证的身份验证信息。在一些实施方案中, 伴随应用程序可追踪用于针对所管理跨平台软件应用程序项目中的每一者下载内容文件 的存储位置。
[0121] 在一些实施方案中,可将开发应用程序内容文件下载到目标计算装置(426)。在一 些实施方案中,可(举例来说)使用目标计算装置的扫描功能来扫描再现到目标计算装置 的显示区的QR代码W获得下载地址。在一些实施方案中,伴随应用程序可包含用于支持内 容文件从网络存储位置的下载的功能性。举例来说,基于用户凭据(例如,开发者用户名、 口令、项目名称等),伴随应用程序可拉取一或多个项目识别符作为用于下载的选项。举例 来说,伴随应用程序可包含图解说明用于将内容文件下载到伴随应用程序的一列选项的菜 单。在一些实施方案中,内容文件可在下载后即刻由伴随应用程序组织。举例来说,伴随应 用程序可创建用于与两个或两个W上跨平台软件应用程序项目有关的内容文件的单独目 5^ O
[0122] 在一些实施方案中,开发应用程序的内容文件可再现于伴随应用程序框架内 (428)。举例来说,伴随应用程序可供应在其内可再现内容文件的无窗口浏览器特征。此外, 在一些实施方案中,伴随应用程序可包含抽象层库。举例来说,抽象层库可实现对特征、输 入/输出元件、传感器及/或包含于特定计算装置平台中的外围装置的调用。举例来说,使 用抽象层可获得的类属函数可映射到特定传感器装置、输入/输出装置或个别计算装置平 台的其它特征(例如,经由应用程序编程接口),从而允许开发者在不知晓关于如每平台级 别上所实施的特征的特定信息的情况下与该些特征交互。在一些实例中,抽象层可包含对 扬声器元件、加速度计元件、全球定位系统(GP巧元件或许多计算装置常见的其它元件的 类属调用。
[0123] 在稍后时间处,在一些实施方案中,可修改用于开发跨平台软件应用程序的集成 云环境内的内容文件(430)。在一些实施方案中,开发者可对跨平台软件应用程序项目做出 修改。举例来说,开发者可将用于配设的一或多个内容文件手动提供到一或多个目标计算 装置。在另一实例中,可(举例来说)在保存项目文件后即刻自动将一或多个内容文件放 置于存储位置中W供检索。
[0124] 在一些实施方案中,可在目标计算装置上可获得自动更新。举例来说,可添加或改 变一或多个内容文件。在一些实施方案中,伴随应用程序可包含用于监视经修改内容文件 的存储位置的功能性。举例来说,伴随应用程序可确定一或多个内容文件不同于用于目前 执行的开发应用程序的所下载内容文件。如果可获得自动更新(432),那么可自动接收经修 改内容文件(436)。
[0125] 替代地,如果不存在自动更新选项或如果在目标计算装置上不激活自动更新,那 么在一些实施方案中,可接收指示用W下载经修改内容文件的请求的手势(434)。在一些实 施方案中,用户在于伴随应用程序内执行时可进入触摸屏手势W起始用于开发应用程序的 内容文件的下载。举例来说,用户可用H个手指敲击且保持达至少一砂钟W起始内容文件 的下载。在其它实例中,用户可使用特定拖动图案或敲击图案来起始内容文件的下载。在 一些实施方案中,在开发应用程序的执行期间,开发者可进入伴随应用程序的菜单模式W 起始内容文件的下载。举例来说,开发者可选择目标计算装置上的菜单或选项键W起始内 容文件的下载。
[0126] 在一些实施方案中,可接收内容文件(436)。举例来说,使用开发应用程序内容文 件的先前所获得存储位置,目标计算装置可下载更新内容文件。在一些实施方案中,伴随应 用程序可管理经更新内容文件的下载。举例来说,伴随应用程序可维持用于存取内容文件 的存储位置的指示(例如,地址等)。在一些实施方案中,伴随应用程序可提供对目标计算 装置作为内容文件的经授权接收者进行身份验证的身份验证信息。在一些实施方案中,可 将整组内容文件下载到目标计算装置。在一些实施方案中,可将内容文件的子组(例如,所 添加及/或所改变的那些内容文件)下载到目标计算装置。
[0127] 在一些实施方案中,可迫使执行开发应用程序的当前页的刷新(438)。在一些实 施方案中,伴随应用程序可包含在开发应用程序从相同点继续运行时用于刷新开发应用程 序的用户接口的刷新特征。举例来说,如果已更新呈现文件W移动当前所显示的用户接口 的页上的控制件的位置,那么所述页的刷新可导致控制件在用户接口内的新位置的立即显 示。W此方式,在一些实施方案中,可在不导致开发应用程序的功能性的明显延迟或重新开 始的情况下做出对开发应用程序的行为的修改。在其它实施方案中,伴随应用程序可在正 更新内容文件时停止或暂停开发应用程序,接着重新开始开发应用程序或重新加载开发应 用程序W使用经更新内容文件而开始。
[012引图5A到甜图解说明用于开发跨平台软件应用程序的实例用户接口的一系列屏幕 截图。在一些实施方案中,屏幕截图可表示W开发客户端应用程序工作的开发者可获得的 特征。在一些实施方案中,屏幕截图可表示W开发客户端应用程序工作的开发者经由web 客户端应用程序可获得的特征。举例来说,web客户端应用程序可再现于Web浏览器程序 内W使用开发客户端应用程序给开发者提供接口。
[0129] 转到图5A,在一些实施方案中,第一屏幕截图500可图解说明用于创建用于跨平 台软件应用程序的新跨平台软件应用程序项目的用户接口。在一些实施方案中,与第一屏 幕截图500交互的开发者可登录到具有用于开发跨平台软件应用程序的集成云环境的开 发者账户。在一些实施方案中,第一屏幕截图500可呈现于因特网浏览器内。在一些实施方 案中,屏幕截图500可呈现为客户端软件应用程序的部分。菜单栏502包含新控制件504a 及我的项目控制件504b。在一些实施方案中,选择新控制件504a可导致(举例来说)第一 屏幕截图500的主面板508中的新项目对话框506的呈现。在一些实施方案中,开发者可 将项目工作空间名称添加于文本输入框510内。举例来说,项目工作空间名称可指示跨平 台软件应用程序的类型或标题。
[0130] 在一些实施方案中,开发者可选择描述控制件512 W键入与新项目有关的简单描 述。在一些实施方案中,可将项目名称及/或项目描述提供到集成云环境W获得来自用于 开发新计算装置应用程序的计算装置平台的权限。举例来说,特定计算装置平台可涉及使 用元数据(例如开发者传记信息及项目信息)来接收用W开发用于安装于计算装置平台上 的经身份验证应用程序的授权的注册。在一些实施方案中,集成云环境可(举例来说)通 过预先配置请求信息而使得开发者能够获得此授权。
[0131] 在一些实施方案中,为关闭对话框506而不创建新项目,开发者可选择取消控制 件516。在一些实施方案中,为接收新项目对话框506内所含有的信息,开发者可选择OK控 制件514。在一些实施方案中,在选择OK控制件514后,集成云环境即刻可产生代表开发者 的项目内容,例如,在一些实例中,项目元数据、本地存储器及/或联网文件存储库中的项 目目录结构及一或多个项目文件,例如用于开发跨平台软件应用程序的基本呈现文件。
[0132] 在一些实施方案中,在经由选择OK控制件514而创建新项目后,项目即刻可经由 菜单栏502中的我的项目控制件514b的选择而存取。
[0133] 转到图5B,在一些实施方案中,第二屏幕截图520可图解说明用于打开用于开发 跨平台软件应用程序的现有跨平台软件应用程序项目的用户接口。如屏幕截图520中所图 解说明,选择菜单栏502中的我的项目控制件504b。打开对话框522可呈现第一项目名称 524"你好世界化ello World)"。在一些实施方案中,打开对话框522内可见任何数目个项 目名称。举例来说,开发者可从一列可用项目名称选择(例如,鼠标息停、单击等)第一项 目名称524。在一些实施方案中,项目可已使用新对话框506而创建,如关于图5A所描述。 在一些实施方案中,工作空间名称"你好世界"可已键入到图5A的文本输入框510中。
[0134] 打开对话框522包含描述控制件526。在一些实施方案中,描述控制件526可呈现 经由新对话框506而键入的信息(例如,如在选择描述控制件512后关于图5A所描述)。 举例来说,可选择描述控制件526 W观看与选定项目(例如,项目名称524 "你好世界")有 关的简单描述。在一些实施方案中,简单描述可进一步包含关于选定项目的元数据,例如, 在一些实例中,开发者名称或识别符、创建日期、对项目做出的最后修改的时间标记等。
[0135] 在一些实施方案中,跨平台软件应用程序项目可由两个或两个W上开发者存取及 修改。举例来说,开发团队可共享对选定项目名称524内所含有的文件的存取。在此情形 中,举例来说,与跨平台软件应用程序项目相关联的元数据可包含经授权W促成跨平台软 件应用程序项目的开发者列表。在一些实施方案中,各种开发者可具有各种权限。举例来 说,一些开发者可具有只读存取,而其它开发者可具有对选定跨平台软件应用程序项目的 文件的读取/写入存取。
[0136] 在一些实施方案中,为关闭对话框522而不选择跨平台软件应用程序项目,开发 者可选择取消控制件529。在一些实施方案中,为打开打开对话框522内选定的跨平台软 件应用程序项目,开发者可选择OK控制件528。在一些实施方案中,在选择OK控制件528 后,集成云环境即刻可向开发者呈现用于与关于命名为"你好世界"的跨平台软件应用程序 的项目文件一起工作的接口。
[0137] 转到图5C,在一些实施方案中,第H屏幕截图530可图解说明开发者用W创建、编 辑及模拟跨平台软件应用程序的开发环境。如所图解说明,在一些实施方案中,第H屏幕截 图530可包含用于选择特定动作(例如添加文件、保存项目内容及运行应用程序)的菜单 栏532、用于编辑与跨平台软件应用程序项目有关的内容的编辑窗格534、用于组织及选择 与跨平台软件应用程序项目相关联的内容的文件导航窗格536及用于添加或选择用于测 试开发应用程序的目标计算装置的装置窗格538。在一些实施方案中,为打开不同跨平台软 件应用程序项目或为创建新跨平台软件应用程序项目,用户可选择菜单栏532中的主页控 制件546a W返回到如(举例来说)由图5A及5B表示的主用户接口。
[013引在一些实施方案中,W项目导航窗格536开始,项目目录"你好世界巧40可包含呈 现文件目录542a、图像文件目录54化、音频文件目录542c及视频文件目录542d。在一些实 施方案中,文件目录542可含有用于开发跨平台软件应用程序的平台独立文件。在一些实 施方案中,文件目录542内所含有的文件可与平台特定文件组合W创建用于下载到特定计 算装置平台的安装可执行文件。在一些实施方案中,平台特定文件可存储于用于开发跨平 台软件应用程序的集成云环境的云网络中。在一些实例中,跨平台软件应用程序可通过经 由浏览器引擎特征呈现应用程序特征(例如在"无窗口"、"无边界"或其它"不可见"浏览 器应用程序内)而起作用。举例来说,呈现文件542a可在运行时经解译W经由浏览器引擎 特征呈现信息。在一些实施方案中,浏览器引擎特征可提供于"伴随"软件应用程序内。举 例来说,开发者可将伴随应用程序下载及安装于目标计算装置上W使得目标计算装置能够 作为用于测试跨平台软件应用程序的开发装置。接着可将项目文件下载到用于测试跨平台 软件应用程序的伴随应用程序中。在一些实施方案中,浏览器引擎特征可与呈现文件542、 平台特定文件及其它文件组合(例如,与其一起编译)W创建开发应用程序可执行文件。
[0139] 呈现文件542a可链接到(举例来说)存储于图像文件目录54化、音频文件目录 542c及/或视频文件目录542d中的媒体项目,例如图像、音频及/或视频。在一些实施方 案中,可W若干个呈现文件格式开发呈现文件542a,例如,在一些实例中,HTML、JavaScript 及CSS。在一些实施方案中,W两个或两个W上呈现文件格式写入的文件可链接在一起W创 建跨平台软件应用程序接口及功能性。举例来说,如第H屏幕截图530中所图解说明,呈现 文件目录542a包含W CSS、化vaScript及HTML写入的文件544。
[0140] 在一些实施方案中,开发者可选择文件导航窗格536中可获得的文件544中的一 者(在一些实施方案中)W观看及编辑编辑窗格534中的信息。举例来说,可在文件导航 窗格536中选择St^e. CSS文件544d,从而在编辑窗格534内呈现St^e. CSS文件544d的 内容。在一些实施方案中,可在编辑窗格534内打开多个文件544。举例来说,style. CSS 文件544d可再现为编辑窗格534内的标签。
[0141] 在一些实施方案中,除选择现有文件544外,开发者可将新文件添加到跨平台软 件应用程序项目。转到菜单栏532,在一些实施方案中,可选择添加控制件54化W将新文件 添加到跨平台软件应用程序项目。在一些实施方案中,选择添加控制件54化可导致可提供 两个或两个W上文件类型(在一些实例中,例如HTML文件、化vaScript文件或CSS文件) 的选项的对话接口的呈现。在一些实施方案中,选择添加控制件54化可导致文件导航窗格 的呈现W从另一跨平台软件应用程序项目(例如,由开发者创建或对开发者可见的项目)、 本地硬盘驱动器或可由开发计算装置存取的另一存储位置输入一或多个文件。举例来说, 开发者可选择添加控制件54化W将一或多个媒体文件(例如图像、音频文件或视频文件) 添加到"你好世界"项目。
[0142] 转到编辑窗格534下方的装置窗格538,在一些实施方案中,所列的一或多个装置 (例如"My i化d"装置549)可指示开发客户端应用程序中的由开发者注册的若干个目标 计算装置。在一些实施方案中,开发客户端应用程序可辨识连接(例如,有线或无线)例开 发计算装置的一或多个目标计算装置。举例来说,可在连接到开发计算装置后即刻识别可 与开发客户端应用程序兼容的目标计算装置(例如,运行于针对其开发客户端应用程序可 产生平台特定计算装置应用程序的平台上)。举例来说,在将目标计算装置经由开发计算 装置的USB端口连接到开发计算装置后,开发客户端应用程序可辨识目标计算装置且输入 关于目标计算装置的信息。在一些实施方案中,开发客户端应用程序可打开对话框W给开 发者提供用于指定关于所识别目标计算装置的信息的一部分的方法。举例来说,开发客户 端应用程序可辨识为iPad 1. 1的目标计算装置型号549a、唯一装置识别符代码549c、为 5. 0. 1的平台操作系统版本549d及为Apple嚴的平台供应商549e W及名称549b (例如,"My iPad")。在一些实施方案中,除自动检测外,可朝向定位所连接目标计算装置而引导开发客 户端应用程序。举例来说,用户接口(未图解说明)中的控制件可经存取W指导开发客户 端应用程序"找出所连接装置"。
[0143] 尽管W装置窗格538图解说明,但在一些实施方案中,在跨平台软件应用程序的 开发期间,含有装置窗格538的第H屏幕截图530的部分可用可辅助开发者定位及修理任 何语法及链接错误的工具栏替换。举例来说,开发者可在编辑窗格534中工作,而下方的消 息窗格提供对错误的指示W及(在一些实施方案中)在定位关于正开发的代码的可能问题 中的导航辅助设备。在一些实施方案中,可给开发者提供用W检验项目文件内的语法及可 能链路错误的控制件。在一些实施方案中,举例来说,在选择保存控制件546c后即刻可自 动地检验项目文件。
[0144] 在一些实施方案中,保存控制件546c的选择可导致所保存文件到网络驱动器(例 如与开发客户端应用程序通信的云网络)的复制,从而导致由屏幕截图530所图解说明的 用户接口的呈现。举例来说,文件导航窗格536内所显示的文件544可远程地位于云网络存 储库中。在一些实施方案中,项目文件544可在项目文件544的开发期间本地存储于(举 例来说)开发计算装置的硬盘驱动器区域内。在一些实施方案中,文件544可在选择运行 控制件546d后即刻上传到云网络。举例来说,跨平台软件应用程序文件544可上传到集成 云环境,其中跨平台软件应用程序文件544可与平台特定文件组合W产生用于部署于特定 目标计算装置平台上的开发应用程序。
[0145] 在某一时间点处,开发者可确定项目是在用于(举例来说)在目标计算装置上还 是在模拟中进行测试的条件中。在一些实施方案中,开发者可选择运行控制件546d W与包 含在装置上选项548a及在模拟器中选项548b的一组下拉菜单选项548 -起呈现。在一 些实施方案中,在装置上选项548a在选择时可呈现准备含有用于部署到装置窗格538内 所列的iPad?装置549的应用程序的可执行文件的选项。在一些实施方案中,在装置上选 项548a在选择时可呈现提供用于将内容文件下载到安装于目标计算装置(例如iPad?装 置549)上的伴随应用程序的存储位置的选项。如所图解说明,可突出显示在模拟器中选 项548b。在一些实施方案中,在选择在模拟器中选项548b后,装置模拟器即刻可呈现于显 示区域中,例如对于一些实例,编辑窗格534、邻近于屏幕截图530的显示器、替换屏幕截图 530的显示器或部分地覆盖屏幕截图530的显示器。
[0146] 举例来说,转到图5D,屏幕截图551可用包含模拟控制面板550、装置定向菜单552 及智能电话样式装置模拟554的模拟器覆盖。在一些实施方案中,智能电话样式装置模拟 554可正在智能电话样式装置模拟554的显示区555中呈现"你好世界"跨平台软件应用 程序项目的模拟,(举例来说)基于文件导航窗格536中所列的内容文件544内所含有的 信息。如所图解说明,显示器555 W第一消息557a"找到我! (Find Me!)"、第二消息 55化"打招呼! (Say Hello !)"及第H消息557c "键入你的名称:巧nter your name ;)" 为特征。在一些实施方案中,开发者可(举例来说)经由控制件558中的一者的选择(例 女口,点击、鼠标息停等)直接与智能电话装置模拟554交互。在一个实例中,开发者可(举 例来说)使用连接到开发计算装置的键盘来选择文本框控制件558d且敲入信息。
[0147] 在一些实施方案中,类似于在目标计算装置上运行的跨平台软件应用程序的功能 性,模拟器可使用浏览器引擎特征(例如用于在开发计算装置的显示区域上再现接口的无 窗口 web浏览器框架)创建。
[0148] 在一些实施方案中,模拟器可包含用于截获被朝向用于将呈现文件命令翻译成平 台特定计算装置命令的抽象层引导的API命令的功能。在一些实例中,被朝向传感器、输入 /输出装置及其它装置特定特征引导的API命令可由模拟器截获。相反地,在一些实施方案 中,模拟器可包含用W提供将由装置特定特征产生的输入的一或多个特征。在一些实施方 案中,模拟控制面板550可包含对机构的存取W模拟定向、地理位置、相机、加速度计、光电 传感器、生物计量及/或其它计算装置平台特征。
[0149] 在一些实施方案中,在开启模拟器后,模拟特征可(举例来说)基于由开发者经由 开发客户端应用程序设定的用户选项而默认为计算装置平台的特定类型。在一些实施方 案中,由模拟器所图解说明的计算装置平台的类型可部分地基于装置窗格538内所列的装 置。举例来说,如果所列的第一装置是智能电话的样式或如果装置窗格538中的所突出显 示装置是智能电话,那么模拟器可默认为显示智能电话类型装置平台。在其它实施方案中, 除W计算装置平台的默认类型显示跨平台软件应用程序的模拟外,用户接口可包含显示可 用于模拟的计算装置平台的两个或两个W上类型选项的在模拟器中菜单选项548b的子菜 单(如图5C中所显示)。
[0150] 在一些实施方案中,开发者可经由装置定向菜单552与智能电话装置模拟554交 互。在一些实施方案中,开发者可选择第一控制件560a W将智能电话装置模拟554的定向 逆时针旋转90°、选择第二控制件56化W将智能电话装置模拟554的定向翻转为倒置的或 选择第H控制件560c W将智能电话装置模拟554顺时针旋转90°。
[0151] 在一些实施方案中,开发者可经由模拟控制面板550存取不同交互机构。如所图 解说明,举例来说,可选择定向控制件562a。在定向控制件562a下方,地理位置控制件56化 在选择时可用地理位置菜单(如关于图祀进一步所描述)替换装置定向菜单552。在模拟 控制面板550的底部,装置选择控制件562c在选择时可给开发者提供用W从智能电话装置 模拟554切换到不同计算装置类型或计算装置平台模拟(例如,在一些实例中,平板计算装 置模拟、PDA装置模拟或多媒体播放器模拟)的机会。
[0152] 转到图祀,在一些实施方案中,屏幕截图551可由包含模拟控制面板550、装置地 理位置菜单564及PDA样式装置模拟566的模拟器覆盖。在一些实施方案中,PDA样式装置 模拟566可使用装置选择控制件562c而选择。举例来说,在选择装置选择控制件562c后, 开发者即刻可W用于选择装置平台的类型的对话框呈现W供由模拟器呈现。在一些实施 方案中,PDA样式装置模拟566可基于新装置(例如,如装置窗格538中所图解说明的"My Bberry"装置568)的添加而呈现。
[0153] PDA样式装置模拟566的显示区570可含有与图抓的智能电话样式装置模拟554 上所显示的模拟类似的信息。举例来说,控制件558可W显示区570中的与图抓的智能电 话样式装置模拟554上所图解说明类似的组织布置。然而,在一些实例中,修改可基于屏幕 大小、相对屏幕尺寸、屏幕分辨率、色彩深度、可用系统字体或智能电话样式装置与PDA样 式装置之间固有的其它系统差异而存在。举例来说,PDA样式装置模拟566似乎具有比智 能电话样式装置模拟554(例如,如图5D中所展示)小得多的屏幕面积。在一些实施方案 中,开发者可在各种计算装置类型的模拟上审阅功能性W检验再现在装置间显现为适当的 (例如,不重叠、难W读取或部分离屏信息等)。
[0154] PDA样式装置模拟566的显示区570可含有紧挨着第一消息557a("找到我!") 的激活控制件558c。在一些实施方案中,选择激活控制件558c可激活所模拟计算装置的 地理位置特征,从而导出所模拟计算装置的当前位置。在一些实施方案中,使用地理位置对 话框564,开发者可模仿到所模拟计算装置的一或多个地理位置传感器的输入。举例来说, 地理位置对话框564可包含定位输入框572,例如缔度输入框572a、经度输入框57化、海拔 高度输入框572c、准确度输入框572d及海拔高度准确度输入框572e。另外,地理位置框对 话564可包含移动输入框574,例如速度输入框574a及航向输入框574b。在一些实施方案 中,地理位置对话框564可包含地图576 W选择特定位置。在一些实施方案中,航向信息或 地图导航可使用罗盘控制件578而提供。
[0巧引转到图5F,屏幕截图551可用包含模拟控制面板550及智能电话样式装置模拟 554的模拟器覆盖。如智能电话样式装置模拟554的显示区555中所图解说明,W前显示 "打招呼!"(例如,如图抓及祀中所显示)的第二消息55化可经更新W陈述"在保存文 件时改变自动更新!(Qianges Auto-Update When the File is Saved!)"。转到菜单栏 532,在一些实施方案中,保存控制件546c可经选择W保存对内容文件544中的一或多者做 出的修改,如下拉菜单580中所图解说明。在一些实施方案中,在模拟器中测试跨平台软件 应用程序的性能时,开发者可对一或多个内容文件544施加修改。举例来说,开发者可对编 辑窗格534中所打开的文件style. CSS 544d施加一或多个改变,如图5F中所图解说明。在 一些实施方案后,在保存对文件style. CSS 544d的改变后,即刻可自动更新跨平台软件应 用程序的模拟W反映改变。举例来说,在不复位或重新加载程序的情况下,智能电话样式装 置模拟554的显示区555内所图解说明的一或多个项的立即修改(例如用W为经更新(及 长得多的)第二消息55化提供空间的控制件558a、558b及558d W及第H消息557c的重 新定位)可在显示区555中提供给开发者。在一些实施方案中,跨平台软件应用程序的模 拟内的开发客户端应用程序或模拟特征可执行开发计算装置的显示区的屏幕刷新W导致 智能电话样式装置模拟554的显示区555的立即重新产生。
[0156] 在一些实施方案中,类似机构在于目标计算装置上进行测试时可用于更新跨平台 软件应用程序的平台特定版本。举例来说,在保存对一或多个内容文件544的一或多个改 变后,开发客户端应用程序或开发应用程序(例如,经由web客户端应用程序)可将经更新 内容文件推送到目标计算装置,其中跨平台软件应用程序的平台特定版本可包含经配置W 辨识新内容文件并刷新目标计算装置的显示区W接近实时地将改变呈现给开发者的更新 代理或伴随应用程序。在另一实例中,集成云环境可提供用于下载到目标计算装置的新及 /或经更新内容文件。
[0157] 转到图5G,在一些实施方案中,为执行跨平台软件应用程序的此测试,可选择如屏 幕截图590中所图解说明的运行控制件546山且可激活在装置上下拉菜单选项548a。在一 些实施方案中,在装置上下拉菜单选项548a的选择可致使一或多个平台特定应用程序可 执行文件(例如,可执行应用程序文件、安装文件等)被产生W用于下载到一或多个目标计 算装置。在一些实施方案中,每一目标计算装置(举例来说,例如装置窗格538中所列的"My i化d"装置549及"My Bberry"装置568)可通过每一相关联计算装置平台认证、配设或W 其它方式授权为开发装置。在一些实施方案中,在选择在装置上下拉菜单选项548a后,可 针对装置窗格538内所列的所有目标计算装置产生应用程序可执行文件。在其它实施方案 中,在选择在装置上下拉菜单选项548a后,可针对装置窗格538内选定的任何目标计算装 置产生应用程序可执行文件(例如,如图5G的装置窗格538中所图解说明的"My i化d"装 置549及"My Bberry"装置568两者)。
[015引在一些实施方案中,应用程序可执行文件的产生可发生于集成云环境中。举例来 说,存储于"你好世界"项目目录540中的内容文件542可上传到云网络且与用于每一目标 计算装置平台平台的特定文件组合。在一些实施方案中,应用程序可执行文件可下载到开 发计算装置上的临时目录W用于分布到一或多个目标计算装置。
[0159] 在一些实施方案中,应用程序可执行文件可经由有线连接分布到目标计算装置。 在一些实施方案中,应用程序可执行文件可(举例来说)经由多个经栓接USB连接同时推 送到每一目标计算装置。在一些实施方案中,应用程序可执行文件可(举例来说)经由有 线或无线连接串联分布到每一目标计算装置。
[0160] 在一些实施方案中,伴随应用程序可安装于一或多个目标计算装置上。在一些实 施方案中,除针对与伴随应用程序一起安装的目标计算装置构建可执行文件外,集成云环 境可提供用于下载到目标计算装置的一组内容文件。举例来说,伴随应用程序可接收内容 文件且使得开发者能够执行伴随应用程序壳体内的开发应用程序功能性。
[0161] 转到图甜,在选择在装置上下拉菜单选项548a之后,弹出窗口 592可覆盖屏幕截 图590。在一些实施方案中,在弹出窗口 592内,QR代码594可连同指导用户"扫描W下QR 代码W将移动信息包安装于你的装置上"的消息595 -起呈现。在一些实施方案中,目标计 算装置的扫描机功能可用于扫描QR代码594并确定其内所译码的存储位置。在其它实施 方案中,除呈现QR代码594外,可使用将存储位置呈现到开发计算装置的显示区的文本、超 链接、U化或其它形式。在一些实例中,存储位置可包含网络地址或U化。
[0162] 在一些实施方案中,QR代码594可包含额外信息,例如,在一些实例中,识别与开 发者(例如,包含含有内容文件的项目)相关联的一或多个跨平台软件应用程序项目的应 用程序识别符、经授权目标计算装置信息(例如,唯一地识别由开发者配设W用于开发的 一组目标计算装置的信息)及用于检索内容文件的身份验证信息。在一些实施方案中,伴 随应用程序可经配置W使用从存储位置检索内容文件的额外信息的一部分。
[0163] 在QR代码594上,如弹出窗口 592内所图解说明,在一些实施方案中,下拉菜单 596可给用户提供用W选择开发应用程序的目标计算装置平台的机会。在一些实施方案中, 可提供一或多个平台特定文件。通过经由下拉菜单596提供目标计算装置平台,开发者可 确保任何平台特定文件在译码成QR代码594的存储位置处可用。在一些实施方案中,开发 者可(举例来说)通过选择复选框597将下拉菜单596内的选定目标计算装置平台设定为 默认构建平台。
[0164] 在QR代码594下方,如弹出窗口 592内所图解说明,在一些实施方案中,一组超链 接598、599可给用户提供用于将目标计算装置配置为用于开发应用程序的测试装置的额 外选项。在一些实施方案中,标示为"我想要使用配设"的第一超链接598在选择时可向用 户呈现用W构建用于配设到一或多个目标计算装置的开发应用程序可执行文件的机会,女口 先前所描述。
[0165] 在一些实施方案中,标示为"我尚未安装伴随应用程序"的第二超链接599在选择 时可向用户呈现关于如何存取及安装伴随应用程序的指令。在一些实施方案中,用户可呈 现有含有伴随应用程序的存储位置的QR代码(未图解说明)。在其它实施方案中,用户可 呈现有一或多个超链接、URL或其它存储位置信息W检索伴随应用程序安装可执行文件的 副本。
[0166] 返回到图5G,在一些实施方案中,在开发应用程序正于目标计算装置中的每一者 上运行时,开发者可更新呈现文件544中的一或多者。在一些实施方案中,开发者可添加新 内容文件并将其链接到现有呈现文件544中的一者中。
[0167] 在一些实施方案中,内容文件的更新及/或添加可推送到运行包含更新代理的开 发应用程序的目标计算装置中的每一者。在一些实施方案中,一或多个内容文件的更新及/ 或添加(举例来说)在使用保存控制件546c保存内容文件后即刻可自动推送到目标计算 装置。在一些实施方案中,仅装置窗格538内选定的那些目标计算装置可具有经由保存控 制件546c的选择自动推送到其的内容文件。在一些实施方案中,对内容文件中的一或多者 的更新可经由开发者的手动努力(例如,通过右击选定目标计算装置及选择用于发送经更 新内容文件的菜单选项)推送到选定目标计算装置549、568。在特定实例中,对文件Sty 1 e. CSS 544d的修改可经由有线或无线连接同时推送到"My i化d"装置549及"My化eiry" 装置568两者。在一些实施方案中,如果目标计算装置中的一者不物理连接到开发计算装 置,那么在无线网络上可由开发客户端应用程序通过构建到平台特定开发应用程序中的唯 一识别符辨识目标计算装置。
[016引在一些实施方案中,内容文件的更新及/或添加可(举例来说)经由集成云环境 下载到运行伴随应用程序的目标计算装置中的每一者。在一些实施方案中,内容文件中的 一或多者可传送到用于下载到目标计算装置的存储位置。举例来说,更新及/或经添加内 容文件可传送到最初用于将内容文件供应到目标计算装置的存储位置。在一些实施方案 中,存储位置可传递到在目标计算装置上执行的开发者或伴随应用程序。举例来说,包含存 储位置的QR代码可供应到开发计算装置的显示区域,如关于图甜先前所描述。
[0169] 在一些实施方案中,用户可手动请求内容文件的下载。举例来说,手动请求可经由 目标计算装置的用户接口而提交。举例来说,用户可输入用W起始经更新内容文件到目标 计算装置的下载的手势,例如特定触摸图案或扫频图案。在另一实例中,用户可选择目标计 算装置上的控制件W获得在选择时可起始内容文件的下载的菜单选项。
[0170] 在一些实施方案中,内容文件可推送到目标计算装置。举例来说,伴随应用程序可 包含用于监视用于经更新内容文件的存储位置的特征。举例来说,在辨识经更新内容文件 后,伴随应用程序即刻可自动检索内容文件。
[0171] 如图6中所展示,展示并描述用于开发跨平台软件应用程序的示范性云计算环境 600的实施方案。云计算环境600可包含一或多个资源提供者602a、602b、602c (共同地为 602)。每一资源提供者602可包含计算资源。在一些实施方案中,计算资源可包含用于处 理数据的任何硬件及/或软件。举例来说,计算资源可包含能够执行算法、计算机程序及/ 或计算机应用程序的硬件及/或软件。在一些实施方案中,示范性计算资源可包含具有存 储及检索能力的应用程序服务器及/或数据库。每一资源提供者602可连接到云计算环境 600中的任何其它资源提供者602。在一些实施方案中,资源提供者602可经由计算机网络 608而连接。每一资源提供者602可经由计算机网络608连接到一或多个计算装置604a、 604b、604c (共同地为 604)。
[0172] 云计算环境600可包含资源管理者606。资源管理者606可经由计算机网络608 连接到资源提供者602及计算装置604。在一些实施方案中,资源管理者606可促进计算 资源通过一或多个资源提供者602到一或多个计算装置604的配设。资源管理者606可从 特定计算装置604接收关于计算资源的请求。资源管理者606可识别能够提供由计算装置 604请求的计算资源的一或多个资源提供者602。资源管理者606可选择用W提供计算资 源的资源提供者602。资源管理者606可促进资源提供者602与特定计算装置604之间的 连接。在一些实施方案中,资源管理者606可建立特定资源提供者602与特定计算装置604 之间的连接。在一些实施方案中,资源管理者606可W所请求计算资源将特定计算装置604 重定向到特定资源提供者602。
[0173] 图7展示可用于实施本发明中所描述的技术的计算装置700及移动计算装置750 的实例。计算装置700打算表示各种形式的数字计算机,例如膝上型计算机、桌上型计算 机、工作站、个人数字助理、服务器、刀片式服务器、大型计算机及其它适当计算机。移动计 算装置750打算表示各种形式的移动装置,例如个人数字助理、蜂窝式电话、智能电话及其 它类似计算装置。此处所展示的组件、其连接及关系及其功能意味着仅为实例且并不意味 着具限制性。
[0174] 计算装置700包含处理器702、存储器704、存储装置706、连接到存储器704及多 个高速扩充端口 710的高速接口 708 W及连接到低速扩充端口 714及存储装置706的低速 接口 712。处理器702、存储器704、存储装置706、高速接口 708、高速扩充端口 710及低速 接口 712中的每一者使用各种总线互连且可安装于共同主板或W其它方式适当地安装。处 理器702可处理供在计算装置700内执行的指令,包含存储于存储器704中或存储装置706 上W在外部输入/输出装置(例如禪合到高速接口 708的显示器716)上显示用于GUI的 图形信息的指令。在其它实施方案中,多个处理器及/或多个总线可适当地连同多个存储 器及若干类型的存储器一起使用。此外,可连接多个计算装置,其中每一装置提供必要操作 的若干部分(例如,作为服务器组、刀片式服务器群组或多处理器系统)。
[01巧]存储器704将信息存储于计算装置700内。在一些实施方案中,存储器704是一 个或多个易失性存储器单元。在一些实施方案中,存储器704是一个或多个非易失性存储 器单元。存储器704还可为另一形式的计算机可读媒体,例如磁盘或光盘。
[0176] 存储装置706能够提供用于计算装置700的大容量存储装置。在一些实施方案 中,存储装置706可为或含有计算机可读媒体,例如软盘装置、硬盘装置、光盘装置或磁带 装置、快闪存储器或其它类似固态存储器装置或装置阵列,包含存储区域网络或其它配置 中的装置。指令可存储于信息载体中。指令在由一或多个处理装置(举例来说,处理器 702)执行时执行一或多种方法,例如上文所描述的那些方法。指令还可由一或多个存储装 置(例如计算机或机器可读媒体(举例来说,存储器704、存储装置706或处理器702上的 存储器))存储。
[0177] 高速接口 708管理计算装置700的带宽密集型操作,而低速接口 712管理较低带 宽密集型操作。此功能分配仅是实例的。在一些实施方案中,高速接口 708禪合到存储器 704、显示器716 (例如,经由图形处理器或加速器)且禪合到可接受各种扩充卡(未展示) 的高速扩充端口 710。在实施方案中,低速接口 712禪合到存储装置706及低速扩充端口 714。可包含各种通信端口(例如,USB、Bluctoolh?、W太网、无线W太网)的低速扩充端 口 714可(例如)经由网络适配器禪合到一或多个输入/输出装置,例如键盘、指针装置、 扫描机或联网装置(例如交换机或路由器)。
[0178] 如图中所展示,可W若干种不同形式来实施计算装置700。举例而言,其可实施为 标准服务器720或在此类服务器的群组中多次实施。另外,其可实施于个人计算机(例如 膝上型计算机722)中。其还可实施为机架式服务器系统724的一部分。替代地,来自计算 装置700的组件可与移动装置(未展示)(例如移动计算装置750)中的其它组件组合。此 些装置中的每一者可含有计算装置700及移动计算装置750中的一或多者,且整个系统可 由彼此通信的多个计算装置构成。
[0179] 除其它组件外,移动计算装置750包含处理器752、存储器764、输入/输出装置 (例如显示器754)、通信接口 766及收发器768。移动计算装置750还可具备存储装置(例 如微型驱动器或其它装置)W提供额外存储。处理器752、存储器764、显示器754、通信接 口 766及收发器768中的每一者使用各种总线而互连,且几个组件可安装于共同主板上或 W其它方式适当地安装。
[0180] 处理器752可执行移动计算装置750内的指令,包含存储于存储器764中的指令。 处理器752可实施为包含单独及多个模拟及数字处理器的芯片的芯片集。举例来说,处理 器752可提供(例如)用户接口的控制件、由移动计算装置750运行的应用程序及通过移 动计算装置750进行的无线通信W用于移动计算装置750的其它组件的协调。
[0181] 处理器752可经由禪合到显示器754的控制接口 758及显示接口 756与用户通 信。举例来说,显示器754可为TFT (薄膜电晶体液晶显示器)显示器或OL邸(有机发光二 极管)显示器或其它适当显示技术。显示接口 756可包括用于驱动显示器754向用户呈现 图形及其它信息的适当电路。控制接口 758可从用户接收命令并转换其W供提交到处理器 752。另外,外部接口 762可提供与处理器752的通信,W实现移动计算装置750与其它装 置的近区通信。举例来说,外部接口 762可在一些实施方案中提供有线通信或在其它实施 方案中提供无线通信,且还可使用多个接口。
[0182] 存储器764将信息存储于移动计算装置750内。存储器764可实施为一个或多个 计算机可读媒体、一个或多个易失性存储器单元或一个或多个非易失性存储器单元中的一 或多者。扩充存储器774还可经由扩充接口 772提供及连接到移动计算装置750,举例来 说,扩充接口 772可包含SIMM (单列直插式存储器模块)卡接口。扩充存储器774可为移 动计算装置750提供额外存储空间或还可存储用于移动计算装置750的应用程序或其它信 息。具体来说,扩充存储器774可包含用W实施或补充上文所描述的过程的指令,且还可包 含安全信息。因此,举例来说,扩充存储器774可提供为用于移动计算装置750的安全模块 且可W准许移动计算装置750的安全使用的指令进行编程。另外,安全应用程序可连同额 外信息一起经由SIMM卡而提供,例如W非黑客方式将识别信息放置于SIMM卡上。
[0183] 举例来说,存储器可包含快闪存储器及/或NVRAM存储器(非易失性随机存取存 储器),如下文所论述。在一些实施方案中,指令存储于信息载体中。所述指令在由一或多 个处理装置(举例来说,处理器752)执行时执行一或多种方法,例如上文所描述的那些方 法。指令还可由一或多个存储装置存储,例如一或多个计算机或机器可读媒体(举例来说, 存储器764、扩充存储器774或处理器752上的存储器)。在一些实施方案中,指令可(举 例来说)经由收发器768或外部接口 762 W所传播信号形式接收。
[0184] 移动计算装置750可经由通信接口 766无线地通信,所述通信接口在需要的情况 下可包含数字信号处理电路。通信接口 766可提供在各种模式或协议下的通信,例如GSM语 音调用(全球移动通信系统)、SMS (短消息服务)、EMS (增强型消息服务)或匪S信息(多 媒体消息服务)、CDMA (码分多址)、TDMA (时分多址)、PDC (个人数字蜂窝系统)、WCDMA (宽 带码分多址)、CDMA2000或GPRS (通用分组无线服务)W及其它模式或协议。举例来说, 此通信可使用射频经由收发器768而发生。另外,短程通信可(例如)使用Bluetooth篡、 Wi-Fi?或其它此类收发器(未展示)而发生。另外,GPS (全球定位系统)接收器模块770 可将额外导航及位置相关无线数据提供到移动计算装置750,所述移动计算装置适当地可 由移动计算装置750上运行的应用程序使用。
[0185] 移动计算装置750还可使用音频编解码器760 W音频方式通信,所述音频编解码 器可从用户接收所说信息并将其转换为可用数字信息。音频编解码器760同样地可(例 如)在移动计算装置750的手机中(例如)经由扬声器向用户产生可听声音。此声音可包 含来自语音电话呼叫的声音、可包含所记录声音(例如,语音消息、音乐文件等)且还可包 含由在移动计算装置750上操作的应用程序产生的声音。
[0186] 如图中所展示,可W若干种不同形式来实施移动计算装置750。举例来说,其可实 施为蜂窝式电话780。其还可实施为智能电话782、个人数字助理或其它类似移动装置的部 分。
[0187] 此处所描述的系统及技术的各种实施方案可W数字电子电路、集成电路、专口设 计的ASIC (专用集成电路)、计算机硬件、固件、软件及/或其组合而实现。该些各种实施方 案可包含可在可编程系统上执行及/或解译的一或多个计算机程序中的实施方案,所述可 编程系统包含可为专用或通用的至少一个可编程处理器(其经禪合W从存储系统接收数 据及指令且将数据及指令传输到存储系统)、至少一个输入装置及至少一个输出装置。
[018引该些计算机程序(还称为程序、软件、软件应用程序或代码)包含用于可编程处理 器的机器指令且可W高级程序及/或对象导向的编程语言及/或W汇编/机器语言实施。 如本文中所使用,术语机器可读媒体及计算机可读媒体是指用于将机器指令及/或数据提 供到可编程处理器的任何计算机程序产品、设备及/或装置(例如,磁盘、光盘、存储器、可 编程逻辑装置(PLD)),所述可编程处理器包含作为机器可读信号接收机器指令的机器可读 媒体。术语机器可读信号是指用于将机器指令及/或数据提供到可编程处理器的任何信 号。
[0189] 为提供与使用者的交互,此处所描述的系统及技术可实施于具有用于向使用者显 示信息的显示装置(例如,CRT (阴极射线管)或LCD (液晶显示器)监视器)及使用者可 通过其将输入提供到计算机的键盘及指针装置(例如,鼠标或轨迹球)的计算机上。也可 使用其它种类的装置来提供与用户的交互;举例来说,提供给用户的反馈可为任何形式的 感观反馈(例如,视觉反馈、听觉反馈或触觉反馈);且来自用户的输入可W任何形式(包 括声音、语音或触觉输入)而接收。
[0190] 此处所描述的系统及技术可实施于计算系统(包含后端组件(例如,作为数据服 务器);或包含中间件组件(例如,应用程序服务器);或包含前端组件(例如,具有用户 可经由其来与此处所描述的系统及技术交互的图形用户接口或Web浏览器的客户端计算 机))或此类后端、中间件或前端组件的任一组合中。系统的组件可通过任一数字数据通信 形式或媒体(例如,通信网络)互连。通信网络的实例包含局域网络(LAN)、广域网络(WAN) 及因特网。
[0191] 计算系统可包含客户端及服务器。客户端与服务器一般彼此远离且通常经由通 信网络而交互。客户端与服务器的关系是借助在相应计算机上运行且彼此之间具有客户 端-服务器关系的计算机程式而产生。
[0192] 鉴于此处所描述的系统及方法的结构、功能及设备,在一些实施方案中,提供用于 开发跨平台软件应用程序的环境及方法。虽然已描述用于支持开发及测试用于无线计算装 置的软件应用程序的方法及设备的特定实施方案,但所属领域的技术人员现将明了,可使 用并入有掲示内容的概念的其它实施方案。因此,掲示内容不应限于特定实施方案,而是应 仅受所附权利要求书的精神及范围限制。
【权利要求】
1. 一种系统,其包括: 处理器;及 存储器,其存储一组指令,所述指令在由所述处理器执行时致使所述处理器: 获得多个内容文件,其中 所述内容文件包括一或多个呈现文件,其中所述一或多个呈现文件中的每一呈现文件 包括相应指令,所述相应指令在由单独计算装置的处理器于运行时进行解译时经配置以提 供在所述单独计算装置上执行的软件应用程序的(a)功能性及(b)用户接口中的至少一 者; 将所述内容文件提供到多个单独计算装置; 在提供所述内容文件之后: 识别所述多个呈现文件中的至少第一呈现文件的改变,且 将至少所述第一呈现文件提供到所述多个单独计算装置中的至少第一计算装置,其中 在所述第一计算装置上执行的解译软件经配置以作为所述软件应用程序的(a)所述功能 性及(b)所述用户接口中的至少一者来执行所述第一呈现文件而不需要重新安装或重新 加载所述软件应用程序。
2. 根据权利要求1所述的系统,其中所述第一计算装置经由有线连接与所述系统通 ?目。
3. 根据权利要求1或2所述的系统,其中提供所述至少所述第一呈现文件包括将所述 至少第一呈现文件提供到第二计算装置,其中所述第二计算装置经由无线连接与所述系统 通信。
4. 根据权利要求1到3中任一权利要求所述的系统,其中所述指令在执行时进一步致 使所述处理器: 在提供所述至少第一呈现文件之前,识别无线网络上的所述多个计算装置中的至少一 个计算装置,其中所述至少一个计算装置包括所述第一计算装置; 其中将所述第一呈现文件提供到所述第一计算装置包括跨越所述无线网络提供所述 第一呈现文件。
5. 根据权利要求4所述的系统,其中将所述第一呈现文件提供到所述第一计算装置包 括打开与在所述第一计算装置上执行的下载代理的文件共享连接。
6. 根据权利要求1到5中任一权利要求所述的系统,其进一步包括输入装置,其中所述 指令在执行时进一步致使所述处理器: 在提供所述至少第一呈现文件之前,经由所述输入装置而接收所述多个计算装置中的 至少一个计算装置的指示,其中 所述至少一个计算装置包含所述第一计算装置,且 提供所述第一呈现文件包括响应于所述指示而将所述第一呈现文件提供到所述至少 一个计算装置。
7. -种方法,其包括: 通过计算装置的处理器而获得多个内容文件,其中 所述内容文件包括一或多个呈现文件,其中所述一或多个呈现文件中的每一呈现文件 包括相应指令,所述相应指令在由单独计算装置的处理器于运行时进行解译时经配置以提 供在所述单独计算装置上执行的软件应用程序的(a)功能性及(b)用户接口中的至少一 者; 将所述内容文件提供到所述单独计算装置; 在提供所述内容文件之后: 通过所述计算装置的所述处理器识别所述多个呈现文件中的至少第一呈现文件的改 变,且 将至少所述第一呈现文件提供所述单独计算装置,其中在所述单独计算装置上执行的 解译软件经配置以作为所述软件应用程序的(a)所述功能性及(b)所述用户接口中的至少 一者来执行所述第一呈现文件而不需要在所述单独计算装置上重新安装或重新加载所述 软件应用程序。
8. 根据权利要求7所述的方法,其中所述内容文件进一步包括一或多个媒体文件。
9. 根据权利要求7或8所述的方法,其中所述相应指令在于运行时进行解译时经配置 以在浏览器应用程序内提供所述软件应用程序的所述用户接口。
10. 根据权利要求9所述的方法,其中所述浏览器应用程序经配置以对用户不可见。
11. 根据权利要求7到10中任一权利要求所述的方法,其中提供所述内容文件包括经 由无线连接将所述内容文件从所述计算装置推送到所述单独计算装置。
12. 根据权利要求7到11中任一权利要求所述的方法,其中提供所述内容文件包括将 所述内容文件上传到可由所述单独计算装置存取的网络存储区域。
13. 根据权利要求7到12中任一权利要求所述的方法,其中提供所述内容文件包括提 供含有所述内容文件的安装可执行文件以供下载。
14. 根据权利要求13所述的方法,其中所述安装可执行文件包括所述解译软件。
15. 根据权利要求13或14所述的方法,其中所述安装可执行文件包括无窗口浏览器应 用程序。
16. 根据权利要求13到15中任一权利要求所述的方法,其中所述安装可执行文件包括 更新代理,其中所述更新代理在所述软件应用程序的执行期间经配置以 : 接收一或多个额外内容文件,其中所述一或多个额外内容文件中的至少一者包括用于 所述内容文件中的第一内容文件的替换文件,且 用所述替换文件替换所述第一内容文件。
17. 根据权利要求16所述的方法,其中所述更新代理进一步经配置以在用所述替换文 件替换所述第一内容文件之后刷新所述软件应用程序的当前用户接口以利用所述替换文 件。
18. 根据权利要求7到17中任一权利要求所述的方法,其进一步包括呈现所述软件应 用程序在移动装置模拟器内的模拟,其中所述移动装置模拟器解译所述一或多个呈现文件 中的至少一者的所述指令以在移动装置上模拟所述软件应用程序的功能性。
19. 根据权利要求18所述的方法,其中所述移动装置模拟器包括 一或多个控制件,其中所述一或多个控制件在由所述计算装置的用户激活时经配置以 将输入供应到所述软件应用程序。
20. 根据权利要求19所述的方法,其进一步包括: 经由所述一或多个控制件中的第一控制件接收定向输入;及 响应于所述定向输入而改变所述移动装置模拟器的显示部分的定向。
21. 根据权利要求19或20所述的方法,其进一步包括: 经由所述一或多个控制件中的第一控制件接收装置类型输入;及 响应于所述装置类型输入而修改所述装置模拟器的外观,其中所述装置模拟器包括移 动装置框架及显示区。
22. 根据权利要求21所述的方法,其进一步包括响应于所述装置类型输入而刷新由所 述移动装置模拟器呈现的当前用户接口。
23. 根据权利要求18到22中任一权利要求所述的方法,其进一步包括: 通过所述计算装置的所述处理器而识别所述多个呈现文件中的至少第二呈现文件的 改变,及 刷新由所述移动装置模拟器呈现的当前用户接口以包含来自所述第二呈现文件的信 肩、。
24. 根据权利要求7到23中任一权利要求所述的方法,其中将所述第一呈现文件提供 到所述单独计算装置包括响应于接收到来自所述计算装置的用户的请求而提供所述第一 呈现文件。
25. 根据权利要求24所述的方法,其中所述请求识别一或多个计算装置,其中所述一 或多个计算装置包括所述单独计算装置。
26. 根据权利要求7到25中任一权利要求所述的方法,其进一步包括在提供所述内容 文件之前准备包括所述内容文件的安装文件。
27. 根据权利要求26所述的方法,其中准备所述安装文件包括将数字签名添加到所述 安装文件。
28. 根据权利要求7到27中任一权利要求所述的方法,其进一步包括将所述内容文件 存储于版本受控的项目目录中。
29. 根据权利要求7到28中任一权利要求所述的方法,其进一步包括在存储地址处接 收对至少所述第一呈现文件的请求,其中提供所述第一呈现文件包括在所述存储地址处提 供所述第一呈现文件以供下载。
30. 根据权利要求29所述的方法,其中所述存储地址包括URL。
31. 根据权利要求7到30中任一权利要求所述的方法,其中提供所述第一呈现文件包 括打开与第二计算装置的文件更新连接。
32. 根据权利要求7到31中任一权利要求所述的方法,其中所述第二计算装置在先前 所安装的无窗口浏览器应用程序内执行所述软件应用程序。
33. -种存储一组指令的非暂时性计算机可读媒体,所述指令在由处理器执行时致使 所述处理器: 获得多个内容文件,其中 所述内容文件包括一或多个呈现文件,其中所述一或多个呈现文件中的每一呈现文件 包括相应指令,所述相应指令在由单独计算装置的处理器于运行时进行解译时经配置以提 供在所述单独计算装置上执行的软件应用程序的(a)功能性及(b)用户接口中的至少一 者; 将所述内容文件提供到所述单独计算装置; 在提供所述内容文件之后: 识别所述多个呈现文件中的至少第一呈现文件的改变,且 将至少所述第一呈现文件提供到所述单独计算装置,其中在所述单独计算装置上执行 的解译软件经配置以作为所述软件应用程序的(a)所述功能性及(b)所述用户接口中的至 少一者来执行所述第一呈现文件而不需要在所述单独计算装置上重新安装或重新加载所 述软件应用程序。
34. 根据权利要求33所述的计算机可读媒体,其中获得所述多个内容文件包括经由网 络从远程计算装置获得所述多个内容文件的至少一部分。
35. 根据权利要求34所述的计算机可读媒体,其中所述指令在执行时进一步致使所述 处理器响应于识别所述第一呈现文件的所述改变而导致所述第一呈现文件在可由所述远 程计算装置存取的存储库中的复制。
36. 根据权利要求34或35所述的计算机可读媒体,其中将所述第一呈现文件提供到所 述单独计算装置包括致使所述第一呈现文件可由所述单独计算装置经由所述网络存取。
37. -种方法,其包括: 通过计算装置的处理器而获得多个内容文件,其中 所述内容文件包括一或多个呈现文件; 通过在所述计算装置上执行的伴随应用程序而存取所述多个内容文件; 通过所述伴随应用程序而解译所述一或多个呈现文件中的至少第一呈现文件,其中解 译所述第一呈现文件包括再现软件应用程序的(a)功能性及(b)用户接口中的至少一者; 通过所述伴随应用程序而识别用以获得一或多个替换内容文件的请求; 响应于所述请求, 通过所述伴随应用程序而存取至少第一替换呈现文件,其中所述第一替换呈现文件经 配置以替换所述第一呈现文件,且 通过所述伴随应用程序而刷新所述软件应用程序的用户接口以呈现从所述第一替换 呈现文件解译的信息。
38. 根据权利要求37所述的方法,其中所述请求包括在所述单独计算装置的触摸屏接 口上执行的手势。
39. 根据权利要求37或38所述的方法,其中所述请求包括经由通过所述单独计算装置 的扫描特征来扫描机器可读记号而获得的扫描数据。
40. 根据权利要求39所述的方法,其中所述扫描数据包括网络地址。
41. 根据权利要求37到40中任一权利要求所述的方法,其中存取所述替换呈现文件包 括存取用以获得所述替换呈现文件的网络地址。
42. 根据权利要求37到41中任一权利要求所述的方法,其中所述伴随应用程序包括无 窗口浏览器,其中所述软件应用程序的所述用户接口在所述无窗口浏览器内再现。
43. 一种系统,其包括: 处理器;及 存储器,其存储一组指令,所述指令在由所述处理器执行时致使所述处理器执行用于 解译内容文件的伴随应用程序,此包含以下步骤: 获得多个内容文件,其中 所述内容文件包括一或多个呈现文件,且 所述内容文件在通过所述伴随应用程序进行解译后即刻执行软件应用程序; 存取所述多个内容文件; 解译所述一或多个呈现文件中的至少第一呈现文件,其中解译所述第一呈现文件包括 再现软件应用程序的(a)功能性及(b)用户接口中的至少一者; 识别用以获得一或多个替换内容文件的请求; 响应于所述请求, 存取至少第一替换呈现文件,其中所述第一替换呈现文件经配置以替换所述第一呈现 文件,及 刷新所述软件应用程序的用户接口以呈现从所述第一替换呈现文件解译的信息。
44. 一种其上存储有指令的非暂时性计算机可读媒体,其中所述指令在由处理器执行 时致使所述处理器执行用于解译内容文件的伴随应用程序,此包含以下步骤: 获得多个内容文件,其中 所述内容文件包括一或多个呈现文件,且 所述内容文件在通过所述伴随应用程序进行解译后即刻执行软件应用程序;存取所述 多个内容文件; 解译所述一或多个呈现文件中的至少第一呈现文件,其中 解译所述第一呈现文件包括再现软件应用程序的(a)功能性及(b)用户接口中的至少 一者; 识别用以获得一或多个替换内容文件的请求; 响应于所述请求, 存取至少第一替换呈现文件,其中所述第一替换呈现文件经配置以替换所述第一呈现 文件,及 刷新所述软件应用程序的用户接口以呈现从所述第一替换呈现文件解译的信息。
【文档编号】G06F9/445GK104321745SQ201380014469
【公开日】2015年1月28日 申请日期:2013年2月7日 优先权日:2012年2月7日
【发明者】道格拉斯·迈克尔·塞文, 斯特凡·坎切夫·多布雷夫, 叶夫根尼·伊万诺夫·彼得罗夫, 迪扬·格奥尔基耶夫·瓦尔切夫, 亚沃尔·萨肖夫·格奥尔基耶夫, 克莱姆里·斯泰恩 申请人:泰利瑞克股份公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1