CN115858972A - 应用程序的页面显示方法及装置、存储介质、计算机设备 - Google Patents
应用程序的页面显示方法及装置、存储介质、计算机设备 Download PDFInfo
- Publication number
- CN115858972A CN115858972A CN202211704099.4A CN202211704099A CN115858972A CN 115858972 A CN115858972 A CN 115858972A CN 202211704099 A CN202211704099 A CN 202211704099A CN 115858972 A CN115858972 A CN 115858972A
- Authority
- CN
- China
- Prior art keywords
- page
- contact
- identifier
- head portrait
- name
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本申请公开了一种应用程序的页面显示方法及装置、存储介质、计算机设备,该方法包括:响应于应用程序的启动信号,启动应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过长链接接收来自服务器的联系人名称修改数据;当在应用程序中开启页面后,在页面更新管理器中注册应用程序的开启页面信息;当接收到来自服务器的联系人名称修改数据时,获取联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;在开启页面信息中获取与第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于第一联系人最新名称,对目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
Description
技术领域
本申请涉及数据处理技术领域,尤其是涉及到一种应用程序的页面显示方法及装置、存储介质、计算机设备。
背景技术
聊天模块在社交和商务类App最为常见,但是因为更新较为频繁,联系人名字一直以来都是比较复杂的操作,但是名字的更新又比较重要;当多个页面都存在联系人名称时,这时联系人名称修改了,这几个页面需要同时更改这样的用户体验才会好。
目前,在im会话中一般都是通过用户uid再次像服务端查询名字等用户信息,这样无论是加载速度还是性能都比较差,而且名字在其它终端有更新App端并不能马上更新。
发明内容
有鉴于此,本申请提供了一种应用程序的页面显示方法及装置、存储介质、计算机设备,能够对应用程序全部打开页面中显示的联系人名称进行及时更新,避免服务器联系人名称更新后无法及时同步到客户端、以及多个页面无法同步显示最新联系人名称的问题,提升了用户体验。
根据本申请的一个方面,提供了一种应用程序的页面显示方法,所述方法包括:
响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据;
当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识;
当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;
在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述在所述页面更新管理器中注册所述应用程序的开启页面信息,包括:
将所述应用程序的开启页面信息传入所述页面更新管理器的实体类中,并将所述实体类加入到所述页面更新管理器的实体类集合中,其中,所述实体类包括所述开启页面的页面标识和页面联系人标识;
所述在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新,包括:
遍历所述实体类集合,获取页面联系人标识为所述第一联系人标识对应的页面标识作为目标页面标识;
获取所述目标页面标识对应的目标实体类,调用所述目标实体类的名称更新方法,并将所述第一联系人最新名称传入所述名称更新方法中对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述在所述页面更新管理器中注册所述应用程序的开启页面信息之后,所述方法还包括:
当所述开启页面关闭时,将所述页面更新管理器中被关闭页面的注册信息进行注销。
可选地,所述方法还包括:
当通过所述长链接接收到联系人头像修改通知时,基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,并通过所述第二联系人头像数据获取地址访问所述服务器,获取第二联系人网络头像数据;
若所述开启页面对应的页面联系人标识包括第二联系人标识,则基于所述第二联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
可选地,所述基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,包括:
基于所述联系人头像修改通知指示的第二联系人标识、服务器域名、校验值以及第二联系人的头像更新时间戳,生成第二联系人头像数据获取地址;
其中,通过所述第二联系人头像数据获取地址访问所述服务器时,所述服务器对所述校验值校验通过后,基于所述时间戳向客户端返回所述第二联系人头像数据。
可选地,所述第二联系人网络头像数据包括更新时间、第二联系人标识以及头像数据本体;所述获取第二联系人网络头像数据之后,所述方法还包括:
基于所述第二联系人网络头像数据对应的更新时间,确定第二联系人的新的头像更新时间戳;
基于所述第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址,将所述新的第二联系人头像数据获取地址作为第二联系人本地头像数据的键数据,基于所述第二联系人网络头像数据中的头像数据本体,生成第二联系人本地头像数据的值数据,并依据所述键数据和所述值数据生成所述第二联系人本地头像数据的键值对;
将所述第二联系人头像数据的键值对存储在所述应用程序的缓存以及数据库中。
可选地,所述方法还包括:
当在所述应用程序中开启页面后,获取所述开启页面包含的页面联系人对应的页面联系人标识,并依据所述页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址;
基于所述页面联系人头像数据获取地址,在所述应用程序的缓存中读取页面联系人本地头像数据;
若在所述应用程序的缓存中未读取到,则基于所述页面联系人头像数据获取地址,在所述应用程序的数据库中读取页面联系人本地头像数据;
若在所述应用程序的数据库中未读取到,则通过所述页面联系人头像数据获取地址访问所述服务器,获取页面联系人网络头像数据,并基于所述页面联系人网络头像数据,存储页面联系人本地头像数据至所述应用程序的缓存和数据库中;
依据所述页面联系人本地头像数据或所述页面联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
根据本申请的另一方面,提供了一种应用程序的页面显示装置,所述装置包括:
启动模块,用于响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据;
注册模块,用于当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识;
名称获取模块,用于当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;
名称更新模块,用于在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述注册模块,还用于:
将所述应用程序的开启页面信息传入所述页面更新管理器的实体类中,并将所述实体类加入到所述页面更新管理器的实体类集合中,其中,所述实体类包括所述开启页面的页面标识和页面联系人标识;
所述名称更新模块,还用于:
遍历所述实体类集合,获取页面联系人标识为所述第一联系人标识对应的页面标识作为目标页面标识;
获取所述目标页面标识对应的目标实体类,调用所述目标实体类的名称更新方法,并将所述第一联系人最新名称传入所述名称更新方法中对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述装置还包括:
注销模块,用于当所述开启页面关闭时,将所述页面更新管理器中被关闭页面的注册信息进行注销。
可选地,所述装置还包括:
头像获取模块,用于当通过所述长链接接收到联系人头像修改通知时,基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,并通过所述第二联系人头像数据获取地址访问所述服务器,获取第二联系人网络头像数据;
头像显示模块,用于若所述开启页面对应的页面联系人标识包括第二联系人标识,则基于所述第二联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
可选地,所述头像获取模块,还用于:
基于所述联系人头像修改通知指示的第二联系人标识、服务器域名、校验值以及第二联系人的头像更新时间戳,生成第二联系人头像数据获取地址;
其中,通过所述第二联系人头像数据获取地址访问所述服务器时,所述服务器对所述校验值校验通过后,基于所述时间戳向客户端返回所述第二联系人头像数据。
可选地,所述第二联系人网络头像数据包括更新时间、第二联系人标识以及头像数据本体;所述头像获取模块,还用于:
基于所述第二联系人网络头像数据对应的更新时间,确定第二联系人的新的头像更新时间戳;
基于所述第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址,将所述新的第二联系人头像数据获取地址作为第二联系人本地头像数据的键数据,基于所述第二联系人网络头像数据中的头像数据本体,生成第二联系人本地头像数据的值数据,并依据所述键数据和所述值数据生成所述第二联系人本地头像数据的键值对;
将所述第二联系人头像数据的键值对存储在所述应用程序的缓存以及数据库中。
可选地,所述启动模块,还用于当在所述应用程序中开启页面后,获取所述开启页面包含的页面联系人对应的页面联系人标识,并依据所述页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址;
所述头像获取模块,还用于基于所述页面联系人头像数据获取地址,在所述应用程序的缓存中读取页面联系人本地头像数据;若在所述应用程序的缓存中未读取到,则基于所述页面联系人头像数据获取地址,在所述应用程序的数据库中读取页面联系人本地头像数据;若在所述应用程序的数据库中未读取到,则通过所述页面联系人头像数据获取地址访问所述服务器,获取页面联系人网络头像数据,并基于所述页面联系人网络头像数据,存储页面联系人本地头像数据至所述应用程序的缓存和数据库中;
所述头像显示模块,还用于依据所述页面联系人本地头像数据或所述页面联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
依据本申请又一个方面,提供了一种存储介质,其上存储有计算机程序,所述程序被处理器执行时实现上述应用程序的页面显示方法。
依据本申请再一个方面,提供了一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现上述应用程序的页面显示方法。
借由上述技术方案,本申请提供的一种应用程序的页面显示方法及装置、存储介质、计算机设备,在启动应用程序的同时启动页面更新管理器,并与服务器建立长链接,将应用程序的打开页面注册到页面更新管理器中,从而在接收到联系人名称修改数据时,通过页面更新管理器对打开页面中有名称更新的联系人进行名称更新。本申请能够对应用程序全部打开页面中显示的联系人名称进行及时更新,避免服务器联系人名称更新后无法及时同步到客户端、以及多个页面无法同步显示最新联系人名称的问题,提升了用户体验。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例提供的一种应用程序的页面显示方法的流程示意图;
图2示出了本申请实施例提供的一种联系人名称更新方法的流程示意图;
图3示出了本申请实施例提供的另一种联系人名称更新方法的流程示意图;
图4示出了本申请实施例提供的又一种联系人名称更新方法的流程示意图;
图5示出了本申请实施例提供的另一种应用程序的页面显示方法的流程示意图;
图6示出了本申请实施例提供的一种联系人头像更新方法的流程示意图;
图7示出了本申请实施例提供的另一种联系人头像更新方法的流程示意图;
图8示出了本申请实施例提供的又一种联系人头像更新方法的流程示意图;
图9示出了本申请实施例提供的又一种联系人头像更新方法的流程示意图;
图10示出了本申请实施例提供的一种应用程序的页面显示装置的结构示意图;
图11示出了本申请实施例提供的一种计算机设备的装置结构示意图。
具体实施方式
下文中将参考附图并结合实施例来详细说明本申请。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。
在本实施例中提供了一种应用程序的页面显示方法,如图1所示,该方法包括:
步骤101,响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据。
本申请实施例中,在会话类的应用程序中内置页面更新管理器,如图2所示,当应用程序APP启动时,同时启动页面更新管理器,页面更新管理器主要负责下发通知给已经开启的页面,从而对页面中联系人名称进行更新。另外还需要建立应用程序与服务器之间的长链接,通过长链接实时接收服务器下发的联系人名称修改数据。
步骤102,当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识。
接着,当在应用程序中打开一个页面时,如果这个页面是包含联系人名称的页面,那么可认为这个页面是需要更新名字的页面,这时在页面更新管理器中注册该页面,通过页面更新管理器对注册页面中的联系人名称进行管理。每打开一个页面都在页面管理器中进行页面信息注册。
步骤103,当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称。
步骤104,在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
最后,通过与服务器之间的长链接接收到来自服务器的联系人名称修改数据时,在接收到的数据中获取第一联系人标识和第一联系人最新名称。从而依据第一联系人标识在页面更新管理器的注册信息中查询是否包含第一联系人标识,若包含则在注册信息中获取第一联系人所在页面的页面标识作为目标页面标识,从而将目标页面标识对应的目标开启页面中显示的第一联系人名称更新为第一联系人最新名称,以实现页面联系人名称的及时、动态更新。
可选地,步骤102包括:将所述应用程序的开启页面信息传入所述页面更新管理器的实体类中,并将所述实体类加入到所述页面更新管理器的实体类集合中,其中,所述实体类包括所述开启页面的页面标识和页面联系人标识;步骤104包括:遍历所述实体类集合,获取页面联系人标识为所述第一联系人标识对应的页面标识作为目标页面标识;获取所述目标页面标识对应的目标实体类,调用所述目标实体类的名称更新方法,并将所述第一联系人最新名称传入所述名称更新方法中对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
在该实施例中,如图3所示,当页面启动时,需要将页面信息注册到“页面更新管理器”中,需要传入model实体类,model类中有两个属性,一个为uid表示联系人id,一个为page为页面名称,并且将该model类加入到list<model>实体类集合中;当websocket长链接收到联系人名字修改通知时,这时服务端会下发两个参数,一个为uid表示联系人id(标识),一个为name(联系人最新名称),即更新之后的名字。接收到通知之后,需要对“页面更新管理器”中的list<model>集合进行遍历,筛选出model.uid==websocket.uid中的所有page名称即目标页面标识,并且根据该page名字找到对应的page实体类;调用page实体类中的updateName名称更新方法,传入websocket.name第一联系人最新名称;这时所关联uid为websocket.uid的page中显示的名字全部修改为最新的联系人名字。其中,更新名字的page类必须继承basepage,在basepage中有一个更新名字接口方法为updateName(Stringname),参数name为最新的联系人名称。
本申请实施例中,可选地,还包括:当所述开启页面关闭时,将所述页面更新管理器中被关闭页面的注册信息进行注销。
在该实施例中,如图4所示,page页面有更新名字的需求时,将该页面信息注册到联系人名字更新服务中;当监听到名字有更新时,则会通知到名字更新服务,由名字更新服务通知到具体的n个page进行名字数据更新;当page页面被关闭或者销毁时,则会在名字监听服务中的list<model>集合移除该model。
通过应用本实施例的技术方案,在启动应用程序的同时启动页面更新管理器,并与服务器建立长链接,将应用程序的打开页面注册到页面更新管理器中,从而在接收到联系人名称修改数据时,通过页面更新管理器对打开页面中有名称更新的联系人进行名称更新。本申请能够对应用程序全部打开页面中显示的联系人名称进行及时更新,避免服务器联系人名称更新后无法及时同步到客户端、以及多个页面无法同步显示最新联系人名称的问题,提升了用户体验。
进一步的,作为上述实施例具体实施方式的细化和扩展,为了完整说明本实施例的具体实施过程,提供了另一种应用程序的页面显示方法,如图5所示,该方法包括:
步骤201,当在所述应用程序中开启页面后,获取所述开启页面包含的页面联系人对应的页面联系人标识,并依据所述页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址。
步骤202,基于所述页面联系人头像数据获取地址,在所述应用程序的缓存中读取页面联系人本地头像数据。
步骤203,若在所述应用程序的缓存中未读取到,则基于所述页面联系人头像数据获取地址,在所述应用程序的数据库中读取页面联系人本地头像数据。
步骤204,若在所述应用程序的数据库中未读取到,则通过所述页面联系人头像数据获取地址访问所述服务器,获取页面联系人网络头像数据,并基于所述页面联系人网络头像数据,存储页面联系人本地头像数据至所述应用程序的缓存和数据库中。
步骤205,依据所述页面联系人本地头像数据或所述页面联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
在该实施例中,如图6所示,头像显示有缓存机制,并不是每次都是从网络下载,每次从网络下载头像数据后,会将数据存储在应用程序的缓存以及应用程序的数据库中。应用程序打开页面后,利用页面包含的页面联系人的uid拼接出头像下载的url地址,优先在缓存和数据库中获取页面联系人本地头像数据,如果本地获取不到再从服务器进行下载,并且下载成功之后,会存储在app缓存和sqlite数据库中。其中,缓存的key为url地址,缓存的值为byte[]数组。
当页面需要加载头像时,会利用页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址url,拼接好的url先在app缓存中查找,找不到再从sqlite数据库查找,如果仍然找不到则会从网络下载;网络下载成功之后的byte[]数组会同时存入app缓存和sqlite数据库中;如果app缓存没有该byte[]数组,而数据库存在,则会将数据库byte[]数组信息返回给ui显示,再者会存入至app缓存中,以便即用即取;app缓存的数据结构为hashmap<String,byte[]>,key为url,value为byte[]数组。
步骤206,当通过所述长链接接收到联系人头像修改通知时,基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,并通过所述第二联系人头像数据获取地址访问所述服务器,获取第二联系人网络头像数据。
在该实施例中,如图7所示,通过与服务器之间的长链接,应用程序还能够接收服务器下发的联系人头像修改通知,并在接收到头像修改通知后,无需服务器返回头像地址,也不需要app端主动调用接口去查询;而是利用联系人头像修改通知指示的第二联系人标识uid在本地拼接一个头像的url地址,直接访问,快速、高效。
可选地,步骤206包括:基于所述联系人头像修改通知指示的第二联系人标识、服务器域名、校验值以及第二联系人的头像更新时间戳,生成第二联系人头像数据获取地址;其中,通过所述第二联系人头像数据获取地址访问所述服务器时,所述服务器对所述校验值校验通过后,基于所述时间戳向客户端返回所述第二联系人头像数据。
在该实施例中,如图8所示,头像拼接的规则是:以https开头,传入服务器域名,加上key,这个key主要是服务器校验app端是否安全;face是固定字符串;uid表示联系人id;time表示头像更新的时间戳,主要用来服务端判断是否有头像更新,如果本地没有更新的时间戳就传入为0。头像请求时,time为0服务端会返回code值为200,表示返回为最新的头像信息(头像byte[]数组和uid信息);当code值为202时,这时time值不为空,如果服务端更新头像的时间戳小于等于传入的time时间戳,这表示没有头像更新,这时服务端不再返回byte数组;当服务端更新头像的时间戳大于传入的time时间戳,这表示有头像更新,并且返回time时间戳和头像的byte[]数据,app端更新头像。当头像有更新时,服务端会以打包的方式将更新联系人uid和更新时间戳下发给app端,一分钟之内的只下发一次;app端可以根据联系人uid和时间戳拼接出头像下载地址。
步骤207,基于所述第二联系人网络头像数据对应的更新时间,确定第二联系人的新的头像更新时间戳。
步骤208,基于所述第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址,将所述新的第二联系人头像数据获取地址作为第二联系人本地头像数据的键数据,基于所述第二联系人网络头像数据中的头像数据本体,生成第二联系人本地头像数据的值数据,并依据所述键数据和所述值数据生成所述第二联系人本地头像数据的键值对。
步骤209,将所述第二联系人头像数据的键值对存储在所述应用程序的缓存以及数据库中。
步骤210,若所述开启页面对应的页面联系人标识包括第二联系人标识,则基于所述第二联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
在该实施例中,如图9所示,从服务器获取第二联系人网络头像数据后,将该头像数据保存为第二联系人本地头像数据,以便后续需要对第二联系人进行头像展示时,可以直接利用本地数据进行头像渲染。具体地,根据第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址url,将头像数据以键值对的形式存储在缓存和数据库中,其中key为新的第二联系人头像数据获取地址,值为头像数据本体。从而在需要进行头像显示时利用应用程序的头像图片加载器先加载app缓存再加载sqlite数据库缓存最后利用网络下载,并将网络下载的头像数据会存储到app缓存和sqlite数据库缓存中。当服务器有头像更新时,会通知到app端,app端会更新app缓存和数据库缓存数据。
进一步的,作为图1方法的具体实现,本申请实施例提供了一种应用程序的页面显示装置,如图10所示,该装置包括:
启动模块,用于响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据;
注册模块,用于当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识;
名称获取模块,用于当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;
名称更新模块,用于在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述注册模块,还用于:
将所述应用程序的开启页面信息传入所述页面更新管理器的实体类中,并将所述实体类加入到所述页面更新管理器的实体类集合中,其中,所述实体类包括所述开启页面的页面标识和页面联系人标识;
所述名称更新模块,还用于:
遍历所述实体类集合,获取页面联系人标识为所述第一联系人标识对应的页面标识作为目标页面标识;
获取所述目标页面标识对应的目标实体类,调用所述目标实体类的名称更新方法,并将所述第一联系人最新名称传入所述名称更新方法中对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
可选地,所述装置还包括:
注销模块,用于当所述开启页面关闭时,将所述页面更新管理器中被关闭页面的注册信息进行注销。
可选地,所述装置还包括:
头像获取模块,用于当通过所述长链接接收到联系人头像修改通知时,基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,并通过所述第二联系人头像数据获取地址访问所述服务器,获取第二联系人网络头像数据;
头像显示模块,用于若所述开启页面对应的页面联系人标识包括第二联系人标识,则基于所述第二联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
可选地,所述头像获取模块,还用于:
基于所述联系人头像修改通知指示的第二联系人标识、服务器域名、校验值以及第二联系人的头像更新时间戳,生成第二联系人头像数据获取地址;
其中,通过所述第二联系人头像数据获取地址访问所述服务器时,所述服务器对所述校验值校验通过后,基于所述时间戳向客户端返回所述第二联系人头像数据。
可选地,所述第二联系人网络头像数据包括更新时间、第二联系人标识以及头像数据本体;所述头像获取模块,还用于:
基于所述第二联系人网络头像数据对应的更新时间,确定第二联系人的新的头像更新时间戳;
基于所述第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址,将所述新的第二联系人头像数据获取地址作为第二联系人本地头像数据的键数据,基于所述第二联系人网络头像数据中的头像数据本体,生成第二联系人本地头像数据的值数据,并依据所述键数据和所述值数据生成所述第二联系人本地头像数据的键值对;
将所述第二联系人头像数据的键值对存储在所述应用程序的缓存以及数据库中。
可选地,所述启动模块,还用于当在所述应用程序中开启页面后,获取所述开启页面包含的页面联系人对应的页面联系人标识,并依据所述页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址;
所述头像获取模块,还用于基于所述页面联系人头像数据获取地址,在所述应用程序的缓存中读取页面联系人本地头像数据;若在所述应用程序的缓存中未读取到,则基于所述页面联系人头像数据获取地址,在所述应用程序的数据库中读取页面联系人本地头像数据;若在所述应用程序的数据库中未读取到,则通过所述页面联系人头像数据获取地址访问所述服务器,获取页面联系人网络头像数据,并基于所述页面联系人网络头像数据,存储页面联系人本地头像数据至所述应用程序的缓存和数据库中;
所述头像显示模块,还用于依据所述页面联系人本地头像数据或所述页面联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
需要说明的是,本申请实施例提供的一种应用程序的页面显示装置所涉及各功能单元的其他相应描述,可以参考图1至图9方法中的对应描述,在此不再赘述。
本申请实施例还提供了一种计算机设备,具体可以为个人计算机、服务器、网络设备等,如图11所示,该计算机设备包括总线、处理器、存储器和通信接口,还可以包括输入输出接口和显示设备。其中,该计算机设备的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质和内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储位置信息。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现各方法实施例中的步骤。
本领域技术人员可以理解,图11中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
在一个实施例中,提供了一种计算机可读存储介质,所述计算机可读存储介质可以是非易失性,也可以是易失性,其上存储有计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
在一个实施例中,提供了一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现上述各方法实施例中的步骤。
需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的各实施例中所使用的对存储器、数据库或其它介质的任何引用,均可包括非易失性和易失性存储器中的至少一种。非易失性存储器可包括只读存储器(Read-OnlyMemory,ROM)、磁带、软盘、闪存、光存储器、高密度嵌入式非易失性存储器、阻变存储器(ReRAM)、磁变存储器(Magnetoresistive Random Access Memory,MRAM)、铁电存储器(Ferroelectric Random Access Memory,FRAM)、相变存储器(Phase Change Memory,PCM)、石墨烯存储器等。易失性存储器可包括随机存取存储器(Random Access Memory,RAM)或外部高速缓冲存储器等。作为说明而非局限,RAM可以是多种形式,比如静态随机存取存储器(Static Random Access Memory,SRAM)或动态随机存取存储器(Dynamic RandomAccess Memory,DRAM)等。本申请所提供的各实施例中所涉及的数据库可包括关系型数据库和非关系型数据库中至少一种。非关系型数据库可包括基于区块链的分布式数据库等,不限于此。本申请所提供的各实施例中所涉及的处理器可为通用处理器、中央处理器、图形处理器、数字信号处理器、可编程逻辑器、基于量子计算的数据处理逻辑器等,不限于此。
以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
以上所述实施例仅表达了本申请的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本申请专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本申请构思的前提下,还可以做出若干变形和改进,这些都属于本申请的保护范围。因此,本申请的保护范围应以所附权利要求为准。
Claims (10)
1.一种应用程序的页面显示方法,其特征在于,所述方法包括:
响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据;
当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识;
当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;
在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
2.根据权利要求1所述的方法,其特征在于,所述在所述页面更新管理器中注册所述应用程序的开启页面信息,包括:
将所述应用程序的开启页面信息传入所述页面更新管理器的实体类中,并将所述实体类加入到所述页面更新管理器的实体类集合中,其中,所述实体类包括所述开启页面的页面标识和页面联系人标识;
所述在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新,包括:
遍历所述实体类集合,获取页面联系人标识为所述第一联系人标识对应的页面标识作为目标页面标识;
获取所述目标页面标识对应的目标实体类,调用所述目标实体类的名称更新方法,并将所述第一联系人最新名称传入所述名称更新方法中对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
3.根据权利要求1所述的方法,其特征在于,所述在所述页面更新管理器中注册所述应用程序的开启页面信息之后,所述方法还包括:
当所述开启页面关闭时,将所述页面更新管理器中被关闭页面的注册信息进行注销。
4.根据权利要求1至3中任一项所述的方法,其特征在于,所述方法还包括:
当通过所述长链接接收到联系人头像修改通知时,基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,并通过所述第二联系人头像数据获取地址访问所述服务器,获取第二联系人网络头像数据;
若所述开启页面对应的页面联系人标识包括第二联系人标识,则基于所述第二联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
5.根据权利要求4所述的方法,其特征在于,所述基于所述联系人头像修改通知指示的第二联系人标识,生成第二联系人头像数据获取地址,包括:
基于所述联系人头像修改通知指示的第二联系人标识、服务器域名、校验值以及第二联系人的头像更新时间戳,生成第二联系人头像数据获取地址;
其中,通过所述第二联系人头像数据获取地址访问所述服务器时,所述服务器对所述校验值校验通过后,基于所述时间戳向客户端返回所述第二联系人头像数据。
6.根据权利要求4所述的方法,其特征在于,所述第二联系人网络头像数据包括更新时间、第二联系人标识以及头像数据本体;所述获取第二联系人网络头像数据之后,所述方法还包括:
基于所述第二联系人网络头像数据对应的更新时间,确定第二联系人的新的头像更新时间戳;
基于所述第二联系人标识、服务器域名、校验值以及第二联系人的新的头像更新时间戳,生成新的第二联系人头像数据获取地址,将所述新的第二联系人头像数据获取地址作为第二联系人本地头像数据的键数据,基于所述第二联系人网络头像数据中的头像数据本体,生成第二联系人本地头像数据的值数据,并依据所述键数据和所述值数据生成所述第二联系人本地头像数据的键值对;
将所述第二联系人头像数据的键值对存储在所述应用程序的缓存以及数据库中。
7.根据权利要求6所述的方法,其特征在于,所述方法还包括:
当在所述应用程序中开启页面后,获取所述开启页面包含的页面联系人对应的页面联系人标识,并依据所述页面联系人标识、服务器域名、校验值以及所述页面联系人的头像更新时间戳,生成页面联系人头像数据获取地址;
基于所述页面联系人头像数据获取地址,在所述应用程序的缓存中读取页面联系人本地头像数据;
若在所述应用程序的缓存中未读取到,则基于所述页面联系人头像数据获取地址,在所述应用程序的数据库中读取页面联系人本地头像数据;
若在所述应用程序的数据库中未读取到,则通过所述页面联系人头像数据获取地址访问所述服务器,获取页面联系人网络头像数据,并基于所述页面联系人网络头像数据,存储页面联系人本地头像数据至所述应用程序的缓存和数据库中;
依据所述页面联系人本地头像数据或所述页面联系人网络头像数据,渲染所述开启页面中的页面联系人头像。
8.一种应用程序的页面显示装置,其特征在于,所述装置包括:
启动模块,用于响应于应用程序的启动信号,启动所述应用程序的页面更新管理器,并建立与服务器之间的长链接,以通过所述长链接接收来自所述服务器的联系人名称修改数据;
注册模块,用于当在所述应用程序中开启页面后,在所述页面更新管理器中注册所述应用程序的开启页面信息,其中,所述开启页面信息包括开启页面的页面标识以及所述开启页面包含的页面联系人对应的页面联系人标识;
名称获取模块,用于当接收到来自服务器的联系人名称修改数据时,获取所述联系人名称修改数据中的第一联系人标识以及第一联系人最新名称;
名称更新模块,用于在所述开启页面信息中获取与所述第一联系人标识匹配的页面联系人标识所在页面的页面标识作为目标页面标识,并基于所述第一联系人最新名称,对所述目标页面标识对应的目标开启页面中显示的页面联系人名称进行更新。
9.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至7中任一项所述的方法。
10.一种计算机设备,包括存储介质、处理器及存储在存储介质上并可在处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211704099.4A CN115858972A (zh) | 2022-12-29 | 2022-12-29 | 应用程序的页面显示方法及装置、存储介质、计算机设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211704099.4A CN115858972A (zh) | 2022-12-29 | 2022-12-29 | 应用程序的页面显示方法及装置、存储介质、计算机设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115858972A true CN115858972A (zh) | 2023-03-28 |
Family
ID=85655772
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211704099.4A Pending CN115858972A (zh) | 2022-12-29 | 2022-12-29 | 应用程序的页面显示方法及装置、存储介质、计算机设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115858972A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116302212A (zh) * | 2023-05-25 | 2023-06-23 | 广州市千钧网络科技有限公司 | 应用内嵌html页面刷新方法、装置、设备及存储介质 |
-
2022
- 2022-12-29 CN CN202211704099.4A patent/CN115858972A/zh active Pending
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116302212A (zh) * | 2023-05-25 | 2023-06-23 | 广州市千钧网络科技有限公司 | 应用内嵌html页面刷新方法、装置、设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112559927B (zh) | 一种网页加载方法及装置 | |
US8112537B2 (en) | Trickle sync protocol | |
US20070288591A1 (en) | Method, system, and program product for caching application data in a browser cache | |
CN115858972A (zh) | 应用程序的页面显示方法及装置、存储介质、计算机设备 | |
CN114218156A (zh) | 数据导出方法、装置、计算机设备和存储介质 | |
CN112926002A (zh) | 一种服务请求的处理方法及装置 | |
US11823088B1 (en) | System and method for retrieval and verification of NFT ownership | |
CN112417508A (zh) | 一种数据脱敏方法、数据存储***及存储介质和服务器 | |
KR101462002B1 (ko) | 모바일 정보 관리시스템 및 그 방법 | |
CN113364875B (zh) | 区块链节点存取数据的方法、设备和计算机可读存储介质 | |
CN116562862A (zh) | 一种请求防重处理方法及装置、存储介质、计算机设备 | |
CN116055186A (zh) | 访问的认证方法、装置、计算机设备和存储介质 | |
CN118092972A (zh) | 热更新方法、装置、计算机设备和存储介质 | |
CN114943045A (zh) | 基于离线缓存的终端网页加载方法、装置和计算机设备 | |
CN115758000A (zh) | 应用数据显示方法、装置、设备、介质和产品 | |
CN115640321A (zh) | 数据查询方法和装置 | |
CN116661657A (zh) | 消息发送方法、装置、计算机设备、存储介质和计算机程序产品 | |
CN116501344A (zh) | 页面更新方法及装置 | |
CN113077258A (zh) | 基于区块链的存证方法、装置及电子设备 | |
CN115098810A (zh) | 一种页面数据缓存的方法及其相关设备 | |
CN116226187A (zh) | 数据缓存方法、装置、计算机设备和存储介质 | |
CN117130633A (zh) | 应用更新方法、装置、计算机设备和存储介质 | |
CN115632885A (zh) | 蜜罐制作方法、装置、电子设备及可读存储介质 | |
CN116633774A (zh) | 平台地址配置方法、装置、计算机设备和存储介质 | |
CN117193829A (zh) | 一种离线包管理平台,一种应用内的资源管理方法及装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |