具体实施方式
下面将参照附图更详细地描述本公开的示例性实施例。虽然附图中显示了本公开的示例性实施例,然而应当理解,可以以各种形式实现本公开而不应被这里阐述的实施例所限制。相反,提供这些实施例是为了能够更透彻地理解本公开,并且能够将本公开的范围完整的传达给本领域的技术人员。
图1示出了根据本发明一个实施例的信息展示方法的流程图,如图1所示,该方法包括如下步骤:
步骤S110,判断***中的消息推送服务是否启动成功,如果启动成功,执行步骤S120。
例如,在Win8***中,利用WindowsPushNotification服务在Modern桌面上弹出toast窗口之前,需要确认该服务已经初始化结束,启动成功。只有在WindowsPushNotification服务启动成功后,才能够正常显示toast窗口,因需要用该步骤来要确认合适的弹出时机。
步骤S120,若是,根据开机过程中从服务器获取的信息展示数据包或接收的服务器推送的信息展示数据包生成第一信息展示页面。
服务器推送的信息展示数据包包含展示内容和展示内容描述信息,展示内容描述信息可以包括数据交换格式文件,例如可扩展标记语言(eXtensibleMarkup Language,xml),Java脚本对象符号(Javascript Object Notation,Json)等类型的文件。在该步骤中,解析所述信息展示数据包,按照所述展示内容描述信息对所述展示内容进行排版,生成第一信息展示页面。
步骤S130,利用消息推送服务将所述第一信息展示页面展示在指定的富信息展示区域。
根据本发明上述实施例提供的方法,终端应用程序在开机过程中从服务器获取或接收服务器推送的信息展示数据包并根据数据包生成信息展示页面,在***的消息推送服务启动加载成功后,利用该项服务将生成的信息展示页面展示在指定的富信息展示区域。根据该方案,在开机完成后的短暂时间内就可以向用户呈现出丰富的、必要的信息,例如,新闻动态,***信息等,用户能够更及时地了解这些信息,而不必访问浏览器页面或相关应用程序,节省了用户的操作。
图2示出了根据本发明另一个实施例的信息展示方法的流程图,如图2所示,该方法包括如下步骤:
步骤S210,获取***的开机时间。
***的开机时间是指***从开始开机到开机界面加载成功所经历的时间。在本发明实施例中,获取***的开机时间为可选步骤。进一步的,获取***的开机时间的步骤可以包含以下子步骤a-子步骤c:
子步骤a,获取从开机到用户登录成功之间的第一时间。
若开机启动模式为冷启动,调用***提供的接口GetTickCount()获取第一时间,该GetTickCount()接口可以获取***从开机到当前时刻所经过的毫秒数,该功能的关键在于确定开机完成时刻CPU或磁盘利用率应满足的阈值,即利用GetTickCount()接口获取的开机时间为从开机起至用户登录成功且CPU或磁盘利用率达到一定阈值时需要的时间。
若开机启动模式为热启动,从***注册表的预定键值存储的数据中获取第一时间。在***注册表的预定键值中会对***的运行时间进行记录,例如,HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\SessionManager\Power\TotalResumeTime这一键值中存储了本次热启动的运行时间,该运行时间即为热启动模式下,从开机(按下电源键)到用户登录成功之间的时间。
上述判断当前的开机启动模式的方法包括:调用***中的预定接口获取预定参数;当预定参数为第一数值时,判定当前的开机启动模式为冷启动,当预定参数不是第一数值时,判定当前的开机启动模式为热启动。示例性的,上述预定接口可以为CallNtPowerInformation接口,上述预定参数可以为LastWakeTime(上一次唤醒时间)参数,上述第一数值可以为0,则利用该接口获取***的LastWakeTime参数值,如果该参数值为0,则说明当前的开机启动模式是冷启动,如果该参数值非0,则说明当前的开机启动模式是热启动。
子步骤b,获取从用户登录成功到开机界面加载成功的第二时间。
具体地,用户利用在***中注册的账户名和账户密码登录***,当***确认到用户登录成功后,会生成用户登录成功消息。则将检测到***生成了该用户登录成功消息的时间点作为第二时间的起始点。
调用***中的预定接口监测当前界面显示出的信息。例如,该预定接口可以为***中CLSID_AppVisibility(标识-应用可见性)功能的接口IsLauncherVisible(桌面启动器是否可见),调用该IsLauncherVisible接口监测设备界面上显示出的信息。
需要说明的是,本实施例的开机界面为计算机***开机成功时所展示的界面,当计算机***展示出该开机界面时表明计算机***的相应服务已经启动完毕,能够通过该开机界面接收用户的命令,执行相应的操作。
子步骤c,由第一时间和第二时间获取***的开机时间。
计算第一时间和第二时间之和得到***本次的开机时间。可选的,也可以在计算出第一时间和第二时间之和后,进行相应的误差补偿,将误差补偿后的数值作为获取到的***的开机时间。
步骤S220,查询***消息推送服务在启动时需要生成的预定隐藏窗口是否创建成功,若成功执行步骤S230,否则继续执行步骤S220。
下面以Windows为例说明详细过程。例如,在Win8***中,利用WindowsPushNotification服务在Modern桌面上弹出toast窗口之前,需要确认该服务已经初始化结束,启动成功。只有在WindowsPushNotification服务启动成功后,才能够正常显示toast窗口,因此需要确认合适的弹出时机。
由于窗口的创建是WindowsPushNotification服务准备就绪的一个基本条件,所以本实施例通过查询WindowsPushNotification服务在启动时需要生成的预定窗口(如预定的隐藏窗口)是否创建成功来判断WindowsPushNotification服务是否成功启动,当查找到预定窗口创建成功时,确认Windows消息推送服务启动成功,否则,说明Windows消息推送服务没有启动成功,无法执行toast消息在Modern桌面的弹出操作。
可选的,上述查询预定窗口是否创建成功包括:轮询***中已经创建成功的窗口中是否包括第一窗口标识的窗口,若是,则确认预定窗口创建成功。该第一窗口标识可以为窗口名称,或其他唯一性标识窗口的信息。
例如,若选取上述预定窗口为WindowsPushNotification窗口,即该预定窗口的名称为“Windows消息推送”,则当轮询出***中存在名称为“Windows消息推送”的窗口时,确认上述预定窗口创建成功,WindowsPushNotification服务启动成功。
步骤S230,解析开机过程中从服务器获取的或由服务器推送的信息展示数据包,生成第一信息展示页面。
服务器推送还是应用程序主动获取可以根据特征数据的类别和特点确定,例如,天气信息以推送为主,因为其更新频次低,数据单一,而一些更新频繁的数据适合于应用程序主动从服务器获取。
信息展示数据包包含展示内容和展示内容描述信息;生成第一信息展示页面具体为:解析信息展示数据包,按照展示内容描述信息对展示内容进行排版,生成第一信息展示页面。
本发明在开机后的预定时间内向客户展示信息,因此,为尽可能避开互联网上有可能影响数据传输速度和稳定性的瓶颈和环节,使内容传输的更快、更稳定,可选地,采用cdn(内容分发网络)服务器向客户端推送信息展示数据包;方法还包括:根据信息展示的需求,在cdn服务器端为信息展示数据包的推送分配预设的带宽。
所述展示内容首先包括:所述服务器根据用户行为数据提取出特征数据之后而获取的与所述特征数据对应的内容。
具体地,服务器从用户的行为数据中提取出具有持续性/规律性的数据作为特征数据。行为数据包括:用户的搜索日志数据,浏览日志数据,以及从第三方服务器处获取用户的行为数据。这些特征数据是用户在日常生活中有持续性/规律性地关注的内容,反映了特定用户的常规化需求和用户偏好,具有个性化的特点。例如,某用户一周搜索三次天气信息,有关天气的数据就是该用户的常规化需求数据;某用户搜索一部正在更新的美剧,一天搜索3次以上,有关该美剧的数据就是该用户的常规化需求数据。
在获取到用户行为数据之后,遍历用户的行为数据,从中挖掘出属于常规化需求类别的数据。常规化需求类别数据的挖掘主要是通过服务器后台程序分析用户的行为数据,从中提取具有精确类别的常规化需求数据,从而作为判断用户是否有类似需求的依据。具体地,遍历用户的行为数据,提取出关键词;根据与关键词有关的用户的行为数据,统计包含用户对关键词的搜索频率和/或用户对包含关键词的网页的访问频率和/或停留时间的特性数据,将关键词及特性数据作为特征数据。
所述展示内容还包括:热门词汇和新闻。与上述特征数据相比,热门词汇和新闻具有更强的时效性,内容丰富多变。考虑到客户端受带宽的限制,可能会延迟与服务器端的数据收发。因此,为了保证热词和新闻能在开机之后的预定时间,例如3秒内正确展示,优选地,可以利用Web缓存技术将热门词汇和新闻存储在缓存中,例如存储在缓存服务器中。
具体地,这部分展示内容包括文字信息和图片,例如新闻标题和配套图片,还包括与图片,新闻对应的URL地址,以供用户进一步访问时使用。
展示内容描述信息可以包括数据交换格式文件,例如可扩展标记语言(eXtensible Markup Language,xml),Java脚本对象符号(Javascript ObjectNotation,Json)等类型的文件。服务器中指定描述信息的内容,用来确定第一信息展示页面的格式,并将展示内容描述信息与图片、文字及URL信息打包成信息展示数据包。
客户端应用程序在接收到信息展示数据包后,按照相同的方式对数据包进行解析,然后按照展示内容描述信息对图片、文字进行排版。
该步骤还包括:将步骤S210中获取的开机时间嵌入到生成的第一信息展示页面中。
步骤S240,将所述第一信息展示页面发送至***消息推送服务。
例如,在Windows8***或Windows Phone中,能够支持的通知机制包括:Tile、toast和raw。可以根据情况选用,示例性的,本实施例采用Toast机制实现,这实现传统桌面与Modern桌面之间的交互。Toast机制依赖于WinRT(Windows运行包),是由微软提供的用来构建Modern风格应用的一系列API,通过WinRT传统的应用程序(如360安全卫士)可以向***注册并发送通知,然后由***负责展示。本实施例通过toast消息在Modern桌面上展示信息,并提供与传统应用的交互。
步骤S250,***消息推送服务在所述指定的富信息展示区域弹出第一窗口,将所述第一信息展示页面展示在所述第一窗口中。
例如,在第一窗口中,可以在窗口上半部分示出***本次开机时间,开机时间是衡量电脑性能以及***洁净度的一项直观指标,其通常与开机启动项,开机加载服务,磁盘空间等相关,用户在每次开机时,通过开机时间的变化,就能够及时地了解***的健康状况。还为用户提供了***优化的快捷图标,如果用户发觉开机变慢,可以直接点击该图标,启动应用程序来清理IE缓存、无用注册表等垃圾文件,优化开机启动项,使***运行速度及开机速度得到提升。还可以将用户的开机时间上传,经服务器统计后,向用户呈现当前***与同类型其它设备间的比较信息,为用户提供一个衡量的标准,例如,如果开机时间为1份35秒,仅优于5%的电脑,这就提示用户,很可能***需要清理或维护。
热门词汇和新闻以及天气等个性数据可以展示在第一窗口的下半部分,可以包括社会、军事、时尚的多种类型的新闻,满足不同用户的需求。新闻还可以结合图片、动画等以提升用户体验。除天气外,还可以用其他的个性化数据代替,例如股票、基金、购物、电影、音乐、小说等。
弹出的第一窗口可以位于桌面的右下角,并可以设置该窗口的显示时间,例如设置该窗口的显示时间为7秒,则该窗口在持续显示7秒后消失。在该窗口上还可以设置关闭按钮及设置按钮,点击关闭按钮可以关闭窗口(这种关闭仅本次有效,下次窗口仍能正常弹出),点击设置按钮可以对第一展示信息的内容进行选择和定制。
步骤S260,接收用户在第一窗口中的触发行为,根据用户的触发行为,执行相应的窗口操作。
触发行为可以通过鼠标点击、触摸点击、鼠标拖拽等方式发起。用户的触发行为首先包括触发第二窗口的操作行为。通常,第一窗口中为用户设置有第二窗口触发按钮,例如,可以将触发按钮设置在第一窗口的右侧中部,用户点击该按钮,弹出第二窗口。
具体地,在富信息展示区域弹出第二窗口,将第二信息展示页面展示在所述第二窗口中。
第二信息展示页面的生成方式与步骤S230中第一信息展示页面类似,根据服务器推送的数据包中的展示内容描述信息对展示内容进行再次排版而生成。用户对第二窗口的触发行为也会打开浏览器页面,呈现相应内容。第二窗口可以是一新闻导航条,显示在当前界面的右侧,这样不会影响用户对左侧和中部的页面正文部分的浏览。第二窗口中的第二信息展示内容与第一窗口相比,更加全面。例如,第二窗口中有新闻的详细分类,便于用户的查找。新闻内容包括按步骤S230中所述方法提取的特征数据对应的内容。可选地,在第二窗口中,新闻以瀑布流的形式呈现,以新闻内容相关的图片为主,大小不一的图片按照一定的规律排列,随用户的操作,例如,滚***作,下拉菜单,以及触屏设备上的滑动操作而逐渐呈现,这种方式降低了页面的复杂度,交互方式简单,尤其适合于触屏设备。
可以在第二窗口的弹出过程中加入动画效果,具体地,包括以下步骤:
根据用户在第一窗口的触发行为,对第一窗口进行截图操作;将截取的图片显示在富信息展示区域并关闭第一窗口;对截取的图片进行连续的图形变换,例如,变换为梯形,在图形变换过程中,梯形的两底边长度拉长或收缩,逐渐接近至重合,之后,两底边逐渐分离并回复原尺寸,在界面中呈现出立体的翻转动画效果;生成预设高度的第二窗口,由上至下绘制第二信息展示页面的一部分展示在所述第二窗口中,第二信息展示页面是按照所述展示内容描述信息对展示内容进行再次排版而生成的;通过***提供的用于窗口设置的应用程序接口函数,例如,通过api函数“UpdateLayeredWindow”实现,该函数用来设置窗口的位置,大小,形状,内容和半透明度等。可以通过不断增加指定窗口高度的参数,渐进的调整所述第二窗口的高度,实现窗口拉长的效果,由上至下绘制第二信息展示页面的一部分并展示,直至所述第二信息展示页面完整的展示在第二窗口中。
用户在第一窗口的触发行为还包括触发浏览器的操作行为,例如,点击窗口中的新闻、热词、天气等内容。检测到用户触发浏览器的操作行为后,应用程序启动浏览器进程,在浏览器窗口中显示用户的触发行为对应的页面。
服务器推送的数据包中包含展示内容相关的URL,第一窗口通过应用程序将用户触发的新闻对应的URL发送给浏览器,在新标签页或新窗口中打开相应页面。
具体地,打开浏览器页面可以通过调用***提供的api函数“ShellExecuteEx”实现,该函数的功能是运行一个外部程序。通过设置该函数的参数访问指定的页面,例如,如果将FileName参数设置为“http:”协议格式,那么该函数将打开默认浏览器并链接到参数指定的URL地址。
用户在第一窗口中触发浏览器的操作行为同时也会触发第二窗口的弹出。第二窗口的弹出过程已在前文描述,此处不再重复。
用户在第一窗口中的触发行为还包括触发窗口的子部分滑动的操作行为。第一窗口中的新闻、天气等内容可以通过轮播的方式呈现,例如,第一窗口中呈现了多个信息,每个信息对应于第一窗口的一个子部分,则可以为每个子部分提供多个不同的信息,在当前第一窗口默认显示其中的某些信息,而将其他信息隐藏。每个子部分可以自动滑动,实现轮播的效果,或者为用户提供触发按钮,例如在第一窗口的左右两侧或每个子部分的两侧设置滑动按钮,用户点击滑动按钮或鼠标拖拽各子部分时,该子部分当前默认显示的信息向相应的方向滑动,逐渐地从该子部分中移出而被隐藏,而另一隐藏信息逐渐移入该子部分并显示。
具体地,滑动效果可以这样实现:根据用户在第一窗口的触发行为,对第一窗口进行截图操作;对第一窗口的截图进行分解,获取第一窗口中每个子部分的截图;使用***提供的定时器动态绘制所述各子部分的截图,实现各子部分的滑动效果。例如,对于向左滑动,使每个子部分的截图的左起点不断增加,右终点不变。同时可以结合***提供的api函数“ALphaBlend”对截图进行调节。
根据本发明上述实施例提供的方法,终端应用程序获取***的开机时间,解析服务器推送的信息展示数据包并根据数据包生成信息展示页面,并将开机时间嵌入展示页面中,在***的消息推送服务启动加载成功后,将信息展示页面发送至***消息推送服务,利用该项服务将生成的信息展示页面展示在指定的富信息展示区域,之后根据用户的触发行为,打开浏览器页面或弹出第二窗口,为用户呈现更多信息。根据该方案,在开机完成后的短暂时间内就可以向用户呈现出丰富的、必要的信息,例如,新闻动态,***信息等,以及天气、购物等个性化内容,用户能够更及时地了解这些信息,而不必访问浏览器页面或相关应用程序,节省了用户的操作,用户的个性化需求页能得到一定的满足。
图3示出了根据本发明另一个实施例的信息展示装置的框图,如图3所示,该装置包括:
判断模块310,适于判断***中的消息推送服务是否启动成功。
判断模块310具体适于:查询所述***消息推送服务在启动时需要生成的预定隐藏窗口是否创建成功,当该预定隐藏窗口创建成功时,确认***消息推送服务启动。
以Windows为例说明判断模块310的工作方式,例如,在Win8***中,利用WindowsPushNotification服务在Modern桌面上弹出toast窗口之前,则判断模块310需要确认该服务已经初始化结束,启动成功。只有在WindowsPushNotification服务启动成功后,才能够正常显示toast窗口,因此需要确认合适的弹出时机。
由于窗口的创建是WindowsPushNotification服务准备就绪的一个基本条件,所以本实施例中,判断模块310可以通过查询WindowsPushNotification服务在启动时需要生成的预定窗口(如预定的隐藏窗口)是否创建成功来判断WindowsPushNotification服务是否成功启动,当判断模块310查找到预定窗口创建成功时,确认Windows消息推送服务启动成功,否则,说明Windows消息推送服务没有启动成功,无法执行toast消息在Modern桌面的弹出操作。
可选的,判断模块310查询预定窗口是否创建成功包括:轮询***中已经创建成功的窗口中是否包括第一窗口标识的窗口,若是,则确认预定窗口创建成功。该第一窗口标识可以为窗口名称,或其他唯一性标识窗口的信息。
例如,若选取上述预定窗口为WindowsPushNotification窗口,即该预定窗口的名称为“Windows消息推送”,则当判断模块310轮询出***中存在名称为“Windows消息推送”的窗口时,确认上述预定窗口创建成功,WindowsPushNotification服务启动成功。
接收模块320,适于在开机过程中从服务器获取信息展示数据包或接收服务器推送的信息展示数据包。
接收模块320接收或获取的信息展示数据包包含展示内容和展示内容描述信息;其中,展示内容包括服务器根据用户行为数据提取出特征数据之后而获取的与所述特征数据对应的内容,则接收模块320具体适于:从应用服务器接收服务器根据用户行为数据提取出特征数据之后而获取的与特征数据对应的内容。
展示内容还包括:热门词汇和新闻。与上述特征数据相比,热门词汇和新闻具有更强的时效性,内容丰富多变。考虑到客户端受带宽的限制,可能会延迟与服务器端的数据收发。因此,为了保证热词和新闻能在开机之后的预定时间,例如3秒内正确展示,优选地,可以利用Web缓存技术将热门词汇和新闻存储在缓存中,例如存储在缓存服务器中。则接收模块还适于:从缓存中接收热门词汇和新闻。
生成模块330,适于在判断模块310判断出***中的消息推送服务启动成功的情况下,根据接收模块320接收的信息展示数据包生成第一信息展示页面。
具体地,接收模块320接收或获取的信息展示数据包中包含展示内容描述信息,展示内容描述信息可以包括数据交换格式文件,例如可扩展标记语言(eXtensible Markup Language,xml),Java脚本对象符号(Javascript ObjectNotation,Json)等类型的文件。服务器中指定描述信息的内容,用来确定第一信息展示页面的格式,并将展示内容描述信息与图片、文字及URL信息打包成信息展示数据包。
生成模块330在接收模块320接收或获取到信息展示数据包后,按照相同的方式对数据包进行解析,然后按照展示内容描述信息对图片、文字进行排版,生成第一信息展示页面。
显示模块340,适于利用消息推送服务将第一信息展示页面展示在指定的富信息展示区域。
具体地,显示模块340将第一信息展示页面发送至***消息推送服务;利用***消息推送服务在指定的富信息展示区域弹出第一窗口,将第一信息展示页面展示在第一窗口中。
装置还包括:开机时间获取模块350,适于获取从开机到用户登录成功之间的第一时间;以及,获取从用户登录成功到开机界面加载成功的第二时间;由所述第一时间和第二时间获取***的开机时间。
具体地,若开机启动模式为冷启动,开机时间获取模块350调用***提供的接口GetTickCount()获取第一时间,该GetTickCount()接口可以获取***从开机到当前时刻所经过的毫秒数,该功能的关键在于确定开机完成时刻CPU或磁盘利用率应满足的阈值,即利用GetTickCount()接口获取的开机时间为从开机起至用户登录成功且CPU或磁盘利用率达到一定阈值时需要的时间。
若开机启动模式为热启动,开机时间获取模块350从***注册表的预定键值存储的数据中获取第一时间。
开机时间获取模块350判断当前的开机启动模式具体为:调用***中的预定接口获取预定参数;当预定参数为第一数值时,判定当前的开机启动模式为冷启动,当预定参数不是第一数值时,判定当前的开机启动模式为热启动。示例性的,上述预定接口可以为CallNtPowerInformation接口。
对于第二时间,开机时间获取模块350将检测到的***生成的该用户登录成功消息的时间点作为第二时间的起始点。具体地,开机时间获取模块350调用***中的预定接口监测当前界面显示出的信息。例如,该模块调用***中CLSID_AppVisibility(标识-应用可见性)功能的接口IsLauncherVisible(桌面启动器是否可见),监测设备界面上显示出的信息。
开机时间获取模块350计算第一时间和第二时间之和得到***本次的开机时间。可选的,开机时间获取模块350也可以在计算出第一时间和第二时间之和后,进行相应的误差补偿,将误差补偿后的数值作为获取到的***的开机时间。则生成模块330还适于:将开机时间获取模块350获取的***开机时间嵌入至生成的第一信息展示页面中。
装置还包括:触发模块360,适于根据用户在第一窗口的触发行为,启动浏览器进程,在浏览器窗口中显示用户的触发行为对应的页面。
触发行为可以通过鼠标点击、触摸点击、鼠标拖拽等方式发起。服务器推送的数据包中包含展示内容相关的URL,触发模块360将用户触发的新闻对应的URL发送给浏览器,在新标签页或新窗口中打开相应页面。
具体地,触发模块360打开浏览器页面可以通过调用***提供的api函数“ShellExecuteEx”实现,该函数的功能是运行一个外部程序。通过设置该函数的参数访问指定的页面,例如,如果将FileName参数设置为“http:”协议格式,那么该函数将打开默认浏览器并链接到参数指定的URL地址。
显示模块340还适于:根据用户在第一窗口的触发行为,对第一窗口进行截图操作;将截取的图片显示在富信息展示区域并关闭第一窗口;对截取的图片进行连续的图形变换,例如,变换为梯形,在图形变换过程中,梯形的两底边长度拉长或收缩,逐渐接近至重合,之后,两底边逐渐分离并回复原尺寸,在界面中呈现出立体的翻转动画效果;然后,生成预设高度的第二窗口,由上至下绘制第二信息展示页面的一部分展示在所述第二窗口中,第二信息展示页面是按照所述展示内容描述信息对展示内容进行再次排版而生成的;通过***提供的用于窗口设置的应用程序接口函数,例如,通过api函数“UpdateLayeredWindow”实现,该函数用来设置窗口的位置,大小,形状,内容和半透明度等。可以通过不断增加指定窗口高度的参数,渐进的调整所述第二窗口的高度,实现窗口拉长的效果,由上至下绘制第二信息展示页面的一部分并展示,直至所述第二信息展示页面完整的展示在第二窗口中。
显示模块340还适于在将第一信息展示页面展示在所述第一窗口中之后根据用户在第一窗口的触发行为,对第一窗口进行截图操作;对第一窗口的截图进行分解,获取第一窗口中每个子部分的截图;使用***提供的定时器动态绘制各子部分的截图,实现各子部分的滑动效果。例如,对于向左滑动,显示模块340使每个子部分的截图的左起点不断增加,右终点不变,同时可以结合***提供的api函数“ALphaBlend”对截图进行调节。
生成模块330还适于:按照展示内容描述信息对展示内容进行再次排版生成第二信息展示页面。
生成模块330生成第二信息展示页面的方式与第一信息展示页面类似,根据服务器推送的数据包中的展示内容描述信息对展示内容进行再次排版而生成。用户对第二窗口的触发行为也会使触发模块360打开浏览器页面,呈现相应内容。生成模块330生成的第二窗口可以是一个新闻导航条,显示在当前界面的右侧,这样不会影响用户对左侧和中部的页面正文部分的浏览。第二窗口中的第二信息展示内容与第一窗口相比,更加全面。可选地,在第二窗口中,生成模块330将新闻以瀑布流的形式呈现,以新闻内容相关的图片为主,大小不一的图片按照一定的规律排列,随用户的操作,例如,滚***作,下拉菜单,以及触屏设备上的滑动操作而逐渐呈现,这种方式降低了页面的复杂度,交互方式简单,尤其适合于触屏设备。
根据本发明上述实施例提供的装置,开机时间获取模块获取***的开机时间,生成模块解析服务器推送的信息展示数据包并根据数据包生成信息展示页面,并将获取的开机时间嵌入展示页面中,在***的消息推送服务启动加载成功后,显示模块将信息展示页面发送至***消息推送服务,利用该项服务将生成的信息展示页面展示在指定的富信息展示区域,之后,触发模块根据用户的触发行为,打开浏览器页面,或者显示模块弹出第二窗口,为用户呈现更多信息。根据该方案,在开机完成后的短暂时间内就可以向用户呈现出丰富的、必要的信息,例如,新闻动态,***信息等,以及天气、购物等个性化内容,用户能够更及时地了解这些信息,而不必访问浏览器页面或相关应用程序,节省了用户的操作,用户的个性化需求也能得到一定的满足。
在此提供的算法和显示不与任何特定计算机、虚拟***或者其它设备固有相关。各种通用***也可以与基于在此的示教一起使用。根据上面的描述,构造这类***所要求的结构是显而易见的。此外,本发明也不针对任何特定编程语言。应当明白,可以利用各种编程语言实现在此描述的本发明的内容,并且上面对特定语言所做的描述是为了披露本发明的最佳实施方式。
在此处所提供的说明书中,说明了大量具体细节。然而,能够理解,本发明的实施例可以在没有这些具体细节的情况下实践。在一些实例中,并未详细示出公知的方法、结构和技术,以便不模糊对本说明书的理解。
类似地,应当理解,为了精简本公开并帮助理解各个发明方面中的一个或多个,在上面对本发明的示例性实施例的描述中,本发明的各个特征有时被一起分组到单个实施例、图、或者对其的描述中。然而,并不应将该公开的方法解释成反映如下意图:即所要求保护的本发明要求比在每个权利要求中所明确记载的特征更多的特征。更确切地说,如下面的权利要求书所反映的那样,发明方面在于少于前面公开的单个实施例的所有特征。因此,遵循具体实施方式的权利要求书由此明确地并入该具体实施方式,其中每个权利要求本身都作为本发明的单独实施例。
本领域那些技术人员可以理解,可以对实施例中的设备中的模块进行自适应性地改变并且把它们设置在与该实施例不同的一个或多个设备中。可以把实施例中的模块或单元或组件组合成一个模块或单元或组件,以及此外可以把它们分成多个子模块或子单元或子组件。除了这样的特征和/或过程或者单元中的至少一些是相互排斥之外,可以采用任何组合对本说明书(包括伴随的权利要求、摘要和附图)中公开的所有特征以及如此公开的任何方法或者设备的所有过程或单元进行组合。除非另外明确陈述,本说明书(包括伴随的权利要求、摘要和附图)中公开的每个特征可以由提供相同、等同或相似目的的替代特征来代替。
此外,本领域的技术人员能够理解,尽管在此所述的一些实施例包括其它实施例中所包括的某些特征而不是其它特征,但是不同实施例的特征的组合意味着处于本发明的范围之内并且形成不同的实施例。例如,在下面的权利要求书中,所要求保护的实施例的任意之一都可以以任意的组合方式来使用。
本发明的各个部件实施例可以以硬件实现,或者以在一个或者多个处理器上运行的软件模块实现,或者以它们的组合实现。本领域的技术人员应当理解,可以在实践中使用微处理器或者数字信号处理器(DSP)来实现根据本发明实施例的信息展示装置中的一些或者全部部件的一些或者全部功能。本发明还可以实现为用于执行这里所描述的方法的一部分或者全部的设备或者装置程序(例如,计算机程序和计算机程序产品)。这样的实现本发明的程序可以存储在计算机可读介质上,或者可以具有一个或者多个信号的形式。这样的信号可以从因特网网站上下载得到,或者在载体信号上提供,或者以任何其他形式提供。
应该注意的是上述实施例对本发明进行说明而不是对本发明进行限制,并且本领域技术人员在不脱离所附权利要求的范围的情况下可设计出替换实施例。在权利要求中,不应将位于括号之间的任何参考符号构造成对权利要求的限制。单词“包含”不排除存在未列在权利要求中的元件或步骤。位于元件之前的单词“一”或“一个”不排除存在多个这样的元件。本发明可以借助于包括有若干不同元件的硬件以及借助于适当编程的计算机来实现。在列举了若干装置的单元权利要求中,这些装置中的若干个可以是通过同一个硬件项来具体体现。单词第一、第二、以及第三等的使用不表示任何顺序。可将这些单词解释为名称。
本发明公开了:
A1、一种信息展示方法,包括:
判断***中的消息推送服务是否启动成功;
若是,根据开机过程中从服务器获取的信息展示数据包或接收的服务器推送的信息展示数据包生成第一信息展示页面;
利用所述消息推送服务将所述第一信息展示页面展示在指定的富信息展示区域。
A2、根据A1所述的方法,所述判断***中的消息推送服务是否成功启动具体为:查询所述***消息推送服务在启动时需要生成的预定隐藏窗口是否创建成功,当该预定隐藏窗口创建成功时,确认***消息推送服务启动。
A3、根据A1或A2所述的方法,在判断出***中的消息推送服务是否启动之前还包括:
获取从开机到用户登录成功之间的第一时间;以及,获取从用户登录成功到开机界面加载成功的第二时间;
由所述第一时间和第二时间获取***的开机时间;
在所述生成第一信息展示页面之后还包括:将所述***的开机时间嵌入至所述第一信息展示页面中。
A4、根据A1-A3任一项所述的方法,所述服务器推送的信息展示数据包包含展示内容和展示内容描述信息;
所述生成第一信息展示页面具体为:解析所述信息展示数据包,按照所述展示内容描述信息对所述展示内容进行排版,生成第一信息展示页面。
A5、根据A1-A4任一项所述的方法,所述利用消息推送服务将所述第一信息展示页面展示在指定的富信息展示区域具体为:
将所述第一信息展示页面发送至***消息推送服务;
***消息推送服务在所述指定的富信息展示区域弹出第一窗口,将所述第一信息展示页面展示在所述第一窗口中。
A6、根据A5所述的方法,在所述将第一信息展示页面展示在所述第一窗口中之后还包括:
根据用户在第一窗口的触发行为,启动浏览器进程,在浏览器窗口中显示用户的触发行为对应的页面。
A7、根据A5所述的方法,在所述将第一信息展示页面展示在所述第一窗口中之后还包括:
根据用户在所述第一窗口的触发行为,对所述第一窗口进行截图操作;
对所述第一窗口的截图进行分解,获取所述第一窗口中每个子部分的截图;
使用***提供的定时器动态绘制所述各子部分的截图,实现各子部分的滑动效果。
A8、根据A5或A6所述的方法,在所述将第一信息展示页面展示在所述第一窗口中之后还包括:
根据用户在第一窗口的触发行为,对所述第一窗口进行截图操作;
将截取的图片显示在所述富信息展示区域并关闭所述第一窗口;
对所述截取的图片进行连续的图形变换,实现翻转的动画效果;
生成预设高度的第二窗口,由上至下绘制第二信息展示页面的一部分展示在所述第二窗口中,所述第二信息展示页面是按照所述展示内容描述信息对所述展示内容进行再次排版而生成的;
通过***提供的用于窗口设置的应用程序接口函数渐进的调整所述第二窗口的高度,实现窗口拉长的效果,由上至下绘制第二信息展示页面的一部分并展示,直至所述第二信息展示页面完整的展示在所述第二窗口中。
A9、根据A4-A8任一项所述的方法,所述展示内容包括:所述服务器根据用户行为数据提取出特征数据之后而获取的与所述特征数据对应的内容,以及热门词汇和新闻;
所述接收服务器推送的信息展示数据包包括:从缓存服务器中获取预先存储的所述热门词汇和新闻。
B10、一种信息展示装置,包括:
判断模块,适于判断***中的消息推送服务是否启动成功;
接收模块,适于在开机过程中接收服务器推送的信息展示数据包;
生成模块,适于在所述判断模块判断出***中的消息推送服务启动成功的情况下,根据所述接收模块接收的信息展示数据包生成第一信息展示页面;
显示模块,适于利用所述消息推送服务将所述第一信息展示页面展示在指定的富信息展示区域。
B11、根据B10所述的装置,所述判断模块具体适于:查询所述***消息推送服务在启动时需要生成的预定隐藏窗口是否创建成功,当该预定隐藏窗口创建成功时,确认***消息推送服务启动。
B12、根据B10或B11所述的装置,还包括:
开机时间获取模块,适于获取从开机到用户登录成功之间的第一时间;以及,获取从用户登录成功到开机界面加载成功的第二时间;由所述第一时间和第二时间获取***的开机时间;
所述生成模块还适于:将所述开机时间获取模块获取的***开机时间嵌入支所述第一信息展示页面中。
B13、根据B10-B12任一项所述的装置,所述接收模块接收的信息展示数据包包含展示内容和展示内容描述信息;
所述生成模块具体适于:解析所述接收模块接收的信息展示数据包,按照所述展示内容描述信息对所述展示内容进行排版,生成第一信息展示页面。
B14、根据B10-B13任一项所述的装置,所述显示模块具体适于:将所述第一信息展示页面发送至***消息推送服务;利用***消息推送服务在所述指定的富信息展示区域弹出第一窗口,将所述第一信息展示页面展示在所述第一窗口中。
B15、根据B14所述的装置,还包括:触发模块,适于根据用户在第一窗口的触发行为,启动浏览器进程,在浏览器窗口中显示用户的触发行为对应的页面。
B16、根据B14所述的装置,所述显示模块还适于:根据用户的触发行为,对所述第一窗口进行截图操作;对所述第一窗口的截图进行分解,获取所述第一窗口中每个信息相应子部分的截图;使用***提供的定时器动态绘制所述各子部分的截图,实现所述各子部分的滑动效果。
B17、根据B14或B15所述的装置,显示模块还适于:根据用户在第一窗口的触发行为,对所述第一窗口进行截图操作;将截取的图片显示在所述富信息展示区域并关闭所述第一窗口;对所述截取的图片进行连续的图形变换,实现翻转的动画效果;生成预设高度的第二窗口,由上至下绘制第二信息展示页面的一部分展示在所述第二窗口中;通过***提供的用于窗口设置的应用程序接口函数渐进的调整窗口的高度,实现窗口拉长的效果,由上至下绘制第二信息展示页面的一部分并展示,直至所述第二信息展示页面完整的展示在所述第二窗口中。
所述生成模块生成第二窗口具体为:按照所述展示内容描述信息对所述展示内容进行再次排版生成所述第二信息展示页面。
B18、根据B13-1B7任一项所述的装置,所述接收模块具体适于:接收服务器根据用户行为数据提取出特征数据之后而获取的与所述特征数据对应的内容,以及从缓存接收热门词汇和新闻。