应用定制的对象再利用和再循环的制作方法_2

文档序号:9529230阅读:来源:国知局
相同。在一些实施方式中,应用可以识别到需要更新的元素,并且仅更新那些元素。在一些实施方式中,应用可以执行内容比较(例如,比较散列)以确定需要更新和不需要更新的元素。在一些实施方式中,应用能够基于与请求内容相关联的元数据和/或属性确定哪些元素需要更新。
[0032]应用定制的再循环政策可以应用规则以基于需要确定何时更新特定元素是高效的以及何时从头开始重新填入显示对象是更高效的(参见步骤250)。无论如何,显示对象的再利用通常是最便宜的途径,因为消除了创建新的显示对象以及填充空的显示对象这两个成本高的操作。
[0033]在步骤245中,如果再循环器中的显示对象是与请求内容相同的显示对象类型,但是未填充有与请求内容相同或非常相似的内容,则应用可以为这个请求再循环该显示对象。例如,在图1B中示出的新鲜事布局中,用户先前观看和滚动过去了新鲜事项155A,并且可显示的区域由新鲜事项155B-E占据。这意味着用于新鲜事项155A的显示对象可能之前已经生成、填充有内容、显示然后存储在再循环器中。如果用户向下滚动,并且应用接收到对于包含新鲜事项155F的内容的显示对象的请求,那么包含新鲜事项155A的内容的显示对象可以从再循环器检索并且为新鲜事项155F再循环(如果应用的再循环政策允许的话)。在这种情况下,应用从头开始将请求内容填充显示对象(步骤250),从而重写如果不是全部至少大多数的显示对象中的现有内容。这没有再利用显示对象更令人期望,因为填充显示对象是成本高的操作,但是再循环也至少避免了创建新的显示对象的成本。这里,在【具体实施方式】中,步骤220-270可以对显示对象的子元素以递推的方式进行,其中有一些显示对象本身包括嵌套显示对象。
[0034]在步骤260中,应用可以将显示对象封装在包装对象中。在【具体实施方式】中,由操作系统提供的默认再循环效用已试图基于请求的显示对象提供再循环的包装对象。如果为显示对象提供包装对象,那么应用可以使用所提供的包装对象;如果没有,那么应用可以创建新的包装对象。在步骤270中,响应请求,应用返回经封装的显示对象。
[0035]在步骤280中,应用可以接收显示区域中的内容布局不再需要显示对象的指示。在步骤290中,应用在再循环器中存储显示对象。如果使用包装对象,则应用可以在存储显示对象之前从包装对象提取显示对象,以便允许由操作系统提供的默认再循环效用从而再循环现在空的包装对象。
[0036]本文中公开的实施方式描述为由应用执行;然而,如本领域技术人员将意识到的,本文中公开的示例性方法200和其他实施方式中的许多步骤可以由在一个或多个抽象层处操作的一个或多个软件执行。例如,在安卓操作系统的上下文内,可以为片段提供再循环器和/或可以为活动提供再循环器。在另一个实例中,再循环器的功能可以由与应用分开执行的软件执行。
[0037]【具体实施方式】可重复图2中的方法的一个或者多个步骤,视情况而定。尽管本公开描述并且示出了图2中以具体顺序发生的方法的具体步骤,然而本公开考虑了图2中以任意合适顺序发生的方法的任意合适步骤。而且,尽管本公开描述并且示出了完成图2中的方法的具体步骤的具体部件、设备或者系统,然而本公开考虑执行图2中的方法的任意合适步骤的任意合适部件、设备或者系统的任意合适组合。
[0038]图3示出与社交网络系统相关联的示例性网络环境300。网络环境300包括通过网络310连接至彼此的客户端系统330、社交网络系统360以及第三方系统370。尽管图3示出了客户端系统330、社交网络系统360、第三方系统370以及网络310的具体布置,然而本公开考虑了客户端系统330、社交网络系统360、第三方系统370以及网络310的任何合适的布置。作为实例而不是不作为限制,客户端系统330、社交网络系统360以及第三方系统370中的两个以上可旁路网络310而彼此直接连接。作为另一实例,客户端系统330、社交网络系统360以及第三方系统370中的两个以上可以物理上或者逻辑上全部或者部分地彼此共同定位。而且,尽管图3示出了具体数目的客户端系统330、社交网络系统360、第三方系统370以及网络310,然而本公开也考虑了任何合适数目的客户端系统330、社交网络系统360、第三方系统370以及网络310。作为实例而不是作为限制,网络环境300可包括多个客户端系统330、多个社交网络系统360、多个第三方系统370以及多个网络310。
[0039]本公开考虑了任何合适的网络310。作为实例而不是作为限制,网络310的一个或多个部分可包括自组织网络、内联网、外联网、虚拟专用网络(VPN)、局域网(LAN)、无线LAN (WLAN)、广域网(WAN)、无线WAN (WWAN)、城域网(MAN)、互联网的一部分、公共交换电话网(PSTN)的一部分、蜂窝电话网络或者这些中的两个以上的组合。网络310可包括一个或多个网络310。
[0040]链路350可以将客户端系统330、社交网络系统360和第三方系统370连接至通信网络310或连接至彼此。本公开考虑了任何合适的链路350。在【具体实施方式】中,一个或多个链路350包括一个或多个有线链路(诸如,数字用户线路(DSL)或电缆数据服务接口规范(DOCSIS))、无线链路(诸如,W1-Fi或全球互通微波访问(WiMAX))、或者光链路(诸如,同步光纤网(S0NET)或同步数字系统(SDH))。在【具体实施方式】中,一个或多个链路350均包括自组织网络、内联网、外联网、VPN、LAN、WLAN、WAN、WWAN、MAN、互联网的一部分、PSTN的一部分、以蜂窝技术为基础的网络、以卫星通信技术为基础的网络、另一个链路350或两个以上此类链路350的组合。整个网络环境300中的链路350并不需要必须相同。一个或多个第一链路350可以在一个或多个方面不同于一个或多个第二链路350。
[0041]在【具体实施方式】中,客户端系统330可以是包括硬件、软件、或嵌入式逻辑部件、或两个以上这样的部件的组合并能够执行由客户端系统330实施或支持的适当功能的电子设备。作为实例而不是作为限制,客户端系统330可以包括计算机系统,如台式计算机、笔记本、或便携式计算机、网本、平板电脑、电子书阅读器、GPS设备、照相机、个人数字助理(PDA)、手持式电子设备、蜂窝电话、智能手机、其他合适的电子设备、或者其任何合适的组合。本公开考虑了任何合适的客户端系统330。客户端系统330可以使客户端系统330处的网络用户能够接入网络310。客户端系统330能够使其用户与其他客户端系统330处的其他用户通信。
[0042]在【具体实施方式】中,客户端系统330可包括网络浏览器332,诸如,MICROSOFTINTERNET EXPLORER、GOOGLE CHROME、或 M0ZILLA FIREF0X,并且可具有一个或多个附加元件、插件、或其他扩展,诸如,TOOLBAR或YAHOO TOOLBAR。客户端系统330处的用户可以进入将网络浏览器332引导至特定服务器(诸如,服务器362或者与第三方系统370相关联的服务器)的统一资源定位器(URL)或者其他地址,并且网络浏览器332可以生成超文本传输协议(HTTP)请求并且将HTTP请求传送至服务器。服务器可接受HTTP请求并且响应于HTTP请求将一个或多个超文本标记语言(HTML)文件传送至客户端系统330。客户端系统330可基于HTML文件从服务器渲染(render)网页以用于展示给用户。本公开考虑了任何合适的网页文件。作为实例而不是作为限制,可根据具体需要从HTML文件、可扩展超文本标记语言(XHTML)文件或者可扩展标记语言(XML)文件渲染网页。例如但并不限于,这些页面还可执行诸如以JAVASCRIPT、JAVA、MICROSOFT SILVERLIGHT、标记语言的组合编排的脚本以及诸如AJAX(异步JAVASCRIPT和XML)的脚本等。这些网页还可执行脚本程序,例如但并不限于,以 JAVASCRIPT、JAVA、MICR0S0FT SILVERLIGHT,诸如 AJAX (异步 Javascript和XML)的标记语言和脚本程序的组合编排的程序等。本文中,在合适的情况下,网页参考包括一个或多个对应的网页文件(浏览器可以用其渲染网页),反之亦然。
[0043]在【具体实施方式】中,社交网络系统360可以是可承载在线社交网络的网络可寻址计算系统。社交网络系统360可生成、存储、接收以及发送社交网络数据,例如,用户简档数据、概念简档数据、社交图谱信息、或者与在线社交网络有关的其他合适数据。网络环境300中的其他部件可直接访问或者经由网络310访问社交网络系统360。在【具体实施方式】中,社交网络系统360可以包括一个或多个服务器362。每个服务器362可以是单一式服务器或跨越多个计算机或多个数据中心的分布式服务器。服务器362可以是各种类型,例如但不限于,网络服务器、新闻服务器、邮件服务器、消息服务器、广告服务器、文件服务器、应用服务器、交易服务器、数据库服务器、代理服务器、适用于执行此处所描述的功能或过程的另一个服务器或者它们的任何组合。在【具体实施方式】中,每个服务器362均可包括硬件、软件或嵌入式逻辑部件或用于进行由服务器362实施或支持的适当功能的两个以上这样的部件的组合。在【具体实施方式】中,社交网络系统364可以包括一个或多个数据存储器364。数据存储器364可用于存储各种类型的信息。在【具体实施方式】中,可根据特定数据结构组织数据存储器364中存储的信息。在【具体实施方式】中,每个数据存储器364可以是关联的、圆柱形的、相关的或者其他适当的数据库。尽管本公开内容描述或者示出了数据库的具体类型,但是本公开考虑了任何合适的数据库类型。【具体实施方式】可提供能够使客户端系统330、社交网络系统360或者第三方系统370管理、检索、修改、添加或者删除存储在数据存储器364中的信息的接口。
[0044]在【具体实施方式】中,社交网络系统360可将一个或多个社交图谱存储在一个或多个数据存储器364中。在【具体实施方式】中,社交图谱可以包括多个节点,其可包括多个用户节点(每个节点对应于具体用户)或多个概念节点(每个节点对应于具体概念),以及连接节点的多个边线。社交网络系统360可为在线社交网络中的用户提供与其他用户通信和交互的能力。在【具体实施方式】中,用户可以经由社交网络系统360加入在线社交网络,然后将连接(例如,关系)添加到他们想要连接的社交网络系统360的许多其他用户。此处,术语“朋友”可指社交网络系统360中用户已经由社交网络系统360与其形成连接、关联或关系的任何其他用户。
[0045]在【具体实施方式】中,社交网络系统360可向用户提供对由社交网络系统360支持的各种类型的项目或对象采取行动的能力。作为实例而不是作为限制,项目和对象可以包括社交网络系统360的用户所属于的社交网络的组、用户可能感兴趣的事件或日历条目、用户可以使用的利用计算机的应用、允许用户通过服务购买或出售项目的交易、用户可以进行的与广告的交互、或者其他合适的项目或对象。用户可与社交网络系统360中能够表示的任何事物交互或者通过第三方系统370的外部系统与任何事物交互,第三方系统370的外部系统与社交网络系统360分离并且经由网络310耦接至社交网络系统360。
[0046]在【具体实施方式】中,社交网络系统360能够链接各个实体。作为实例而不是作为限制,社交网络系统360能够使用户彼此交互以及从第三方系统370或者其他实体接收内容,或者允许用户通过应用程序编程接口(API)或者其他通信信道与这些实体交互。
[0047]在【具体实施方式】
当前第2页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1