显示对象预生成的制作方法

文档序号:9529234阅读:351来源:国知局
显示对象预生成的制作方法
【技术领域】
[0001]本公开内容总体涉及对象生命周期管理。
【背景技术】
[0002]当呈现内容远超出可显示区域(要求用户滚动内容布局以将内容带入视野)的特定显示屏幕的内容布局时,随着在用户滚动内容时它们进入视野内,可以通过专用UI线程实时生成显示对象(例如,ANDROID的视图对象)和那些显示对象的元素。当从可显示区域之外将额外的内容带入视野时的严重延迟部分可能是因为生成显示对象的任务的实时性能:测量(显示对象及其元素的每一个的大小要求的递归确定)、布局(将大小和位置分配到显示对象并且然后分配到其元素的每一个)、以及生成在屏幕上绘制显示对象的命令。这可能是将此类任务分配至还在忙于处理其他临界操作(诸如,帧缓冲器填充)的UI线程的操作系统的具体问题。

【发明内容】

[0003]【具体实施方式】通过在UI线程空闲时的时期插入预生成任务(或其逻辑块)以实现显示对象的预生成。为了便于预生成显示对象,应用程序可以:监控UI线程以识别UI线程可在最小空闲时间(例如,在下一帧缓冲器填充之前剩余17ms)空闲的时期;将一个或多个预生成任务添加至UI线程的消息队列;以及执行预生成任务以完成(如果时间充足),或者直至达到屈服点并且剩余可用时间小于最小空闲时间。
[0004]也可用显示对象的子元素执行在本文中所描述的实施方式,它们中的一些可以包括嵌套的显示对象。可以在遵循视图-模型-视图模型模式(View-Model-ViewModelpattern)的任何平台上实施【具体实施方式】。
【附图说明】
[0005]图1A是使用显示对象呈现的内容布局的线框图。
[0006]图1B是示出了图1A的详细的部分的线框图。
[0007]图2示出了应用程序定制的对象预填充的示例性方法。
[0008]图3示出了与社交网络系统相关的示例性网络环境。
[0009]图4示出了示例性社交图谱。
[0010]图5示出了示例性计算机系统。
【具体实施方式】
[0011]为了便于以内容识别的方式预填充显示对象,应用程序可以应用应用程序特殊策略以确定如何选择性地仅预填充成本最多的那些显示对象和/或显示对象的元素。
[0012]在接收待显示的内容布局的特定部分的请求之前,应用程序可以选择待预填充的内容布局的特定部分的元素,填充那些所选择的元素,并且将预填充元素储存在再循环器中。当再次请求相同的内容元素时,应用程序从再循环器检索显示对象,将其封装在包装对象中,并且返回所包装的显示对象。也可用显示对象的元素执行在本文中描述的实施方式,它们中的一些可以包括嵌套的显示对象。
[0013]结合实施再循环器的方法,【具体实施方式】可以利用于2013年4月11日提交的题为“Applicat1n-Tailored Object Recycling” 的美国专利申请第 13/861,250 号中公开的一个或多个系统、组件、元素、功能、方法、操作、或步骤,通过引用将其结合于此。
[0014]图1A是示出内容布局100的示例性线框图的线框图,S卩,社交网络系统用户的新鲜事页面,其基于多个显示对象在平板设备上呈现以显示。内容布局100的可显示区域(由虚线表示)包括将填充到平板设备的屏幕尺寸内的内容布局100的部分(折线以上)。
[0015]内容布局100包括标题区域110、菜单栏120、左侧工具条130、右侧工具条140、以及主体区150。每个区域与其自身的显示对象相关,它们中的每一个可以包括许多元素,诸如,作为实例并非限制性方式:图像、视频、文本、链接、形式、以及交互元素。可以通过一个或多个嵌套的显示对象表示这些元素的每一个。
[0016]与标题区域110相关的显示对象包括社交网络用户的交互式个人资料照片112、文本块114、背景图像116、以及社交网络用户选择的主题音乐。基于显示对象呈现交互式个人资料照片112,显示对象可以包括图像、文本、链接、以及Javascript代码以呈现弹出窗口,该弹出窗口显示当点控设备(诸如,鼠标)在个人资料照片上悬停时出现的社交网络用户的个人资料的概要。
[0017]与菜单栏120相关的显示对象包括五个菜单选项125A-F,它们中的每一个包括图像、文本、以及链接。
[0018]与左侧工具条130相关的显示对象包括推荐的混合的内容(包括赞助内容)(仅示出135A-E,但可能存在许多更多的推荐),基于显示对象呈现它们中的每一个。推荐的每个显示对象可以包括交互式图像、名称、推荐的文本、以及获得与推荐有关的进一步信息的链接。新鲜事项的每个显示对象也可包括一个或多个图像或视频。
[0019]与右侧工具条140相关的显示对象包括一个或多个广告145的内容,基于显示对象呈现它们中的每一个。如在图1A中示出的实例中,广告145A出现在折线以上,而145B还不能看得见。可以至少部分地通过第三方广告商确定广告的内容。
[0020]与主体区150相关的显示对象包括许多新鲜事项(仅示出了 155A-E,但可能存在许多更多的新鲜事项),基于与用户的朋友(即,社交图谱连接)有关的活动相关的显示对象呈现它们中的每一个。
[0021]图1B是示出了图1A的详细部分的线框图:内容布局100的主体区150中的新鲜事项155B-E。如在图1A中表示的,内容布局100的可显示区域(由虚线表示的)包括将填充到平板设备的屏幕上的内容布局100的部分。
[0022]新鲜事项155的每个显示对象可以包括朋友160的交互式个人资料照片、朋友165的姓名、新鲜事项170的文本、时间敏感的信息175(例如,不断更新的已浏览/评论/“赞”列表的人的数目的计数、已浏览/评论/ “赞”列表的最近的一个或多个人的短列表等)、“赞”新鲜事项180的链接、评论新鲜事项185的链接、以及“分享”新鲜事项190的链接。新鲜事项的每个显示对象也可包括一个或多个图像195或视频。
[0023]基于显示对象呈现每个交互式个人资料照片160,显示对象可以包括图像、文本、链接、以及Javascript代码以呈现弹出窗口,该弹出窗口显示当点控设备(诸如,鼠标)在个人资料照片上悬停时出现的社交网络用户的个人资料的概要。
[0024]图2示出了应用程序控制的预填充显示对象的示例性方法。在步骤210中,应用程序可以识别要预生成的显示对象的部分。例如,显示对象可以包括新鲜事的内容布局对象,如在图1A中示出的,包括新鲜事元素155的长列表,如在图1B中示出的。如果用户通过点击“下一页”按钮向下滚动,识别的用于预生成的显示对象的部分可以包括将填充可显示区域的下一组新鲜事元素155。
[0025]在步骤220中,应用程序可以监控UI线程以识别UI线程空闲最小时段的下一时间窗。例如,如果应用程序在移动计算设备的操作系统的顶部运行且显示更新速率是60Hz (或60帧/秒),那么操作系统可能需要每16.67ms完成帧缓冲器填充。如果计算设备能够在12ms内完成帧缓冲器填充,留下将在每16.67ms出现的4.67ms的窗(在操作的完成时填充帧缓冲器)。最小时段可以是能够至少基于内容布局用于可能出现的最大数目的任务的最小有用时段。
[0026]在步骤230中,应用程序可以选择一个或多个预生成任务添加至消息队列用以在下一时段的空闲时间期间由UI线程执行。在【具体实施方式】中,应用程序可以将可迅速执行的几个任务分组在一起,其中,一个或多个预生成任务的总执行时间小于在下一时间窗中可用的时间。基于单用户或一组用户给出足够的历史数据,可以预先确定的估计设置任何给定任务的预期执行时间,或者其可随着时间获知。在【具体实施方式】中,要执行的下一任务将会花费比在下一时间窗中可用的时间更长的时间,应用程序可以仅将任务添加到消息队列,且预期可在屈服点暂停任务。
[0027]在【具体实施方式】中,应用程序可以基于可显示区域的尺寸、可用存储器、以及应用程序特定的规则选择显示对象的特定元素以预生成。在【具体实施方式】中,尤其对于基于列表或基于网格的内容布局,应用程序特定的规则可以设置增量,通过增量预生成元素。
[0028]增量可以是将符合可显示区域的尺寸的列表或网格项目的数目限定的多个单元。例如,如在图1B中示出的,四个新鲜事项可以填充可显示区域的垂直尺寸,其中内容布局可以沿垂直尺寸延伸(但不沿水平尺寸)。在该实例中,应用程序特定的规则确定单元包括四个新鲜事项(由于这是什么将填充可显示区域),并且确定要预生成元素的增量为三,因此,当应用程序对显示新鲜事项155B-E的请求做出响应时,其也预填充下十二个新鲜事项的选择元素。在【具体实施方式】中,多个数可基于用户特定的使用模式。例如,如果用户通常相当慢地滚动新鲜事,那么多个数可以是较小的数目。相反地,如果用户通常相当快地滚动新鲜事,那么多个数可以是较大的数目。在【具体实施方式】中,多个数还可基于列表或网格元素的内容的属性。例如,如果内容是非常丰富的并且可能花费用户较长时间浏览(例如,当用户鼠标在每一个上时将会播放的视频的缩略图)的类型,那么多个数可能减小。
[0029]在【具体实施方式】中,应用程序特定的规则可以优先考虑选择生成要花费更多时间的显示对象的元素。可以任何应用程序为基础确定生成元素的成本,例如,元素的大小、元素的复杂度(例如,元素是嵌套的显示对象?)、必须多久一次更新元素、平台的配置和性能(例如,设备缺乏支持或禁用执行客户端侧的脚本,其使用交替的、更简单的内容替换成为必须)等。
[0030]在【具体实施方式】中,应用程序特定的规则可以基于可用内存选择显示对象的元素。例如,如果不存在大量可用内存,那么应用程序可以选择仅预生成成本最高的元素,然而,如果存在更多可用内存,其可能预生成额外的元素(成本稍微低的元素)。在另一个实例中,如果不存在大量可用内存,那么应用程序可以选择预生成可能经常重复使用的那些元素,例如,如果下十个新鲜事项全部涉及已向流行的在线文章张贴相同复杂链接(其包括图像、文本、链接、以及其他信息)的人,表
当前第1页1 2 3 4 5 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1