CN114721759B - Android桌面视图展示方法、装置及电子设备 - Google Patents

Android桌面视图展示方法、装置及电子设备 Download PDF

Info

Publication number
CN114721759B
CN114721759B CN202210332840.2A CN202210332840A CN114721759B CN 114721759 B CN114721759 B CN 114721759B CN 202210332840 A CN202210332840 A CN 202210332840A CN 114721759 B CN114721759 B CN 114721759B
Authority
CN
China
Prior art keywords
memory space
bitmap
module
widget
storing
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.)
Active
Application number
CN202210332840.2A
Other languages
English (en)
Other versions
CN114721759A (zh
Inventor
李焕戈
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Zhuhai Baoqu Technology Co Ltd
Original Assignee
Zhuhai Baoqu Technology Co Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Zhuhai Baoqu Technology Co Ltd filed Critical Zhuhai Baoqu Technology Co Ltd
Priority to CN202210332840.2A priority Critical patent/CN114721759B/zh
Publication of CN114721759A publication Critical patent/CN114721759A/zh
Application granted granted Critical
Publication of CN114721759B publication Critical patent/CN114721759B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/08Addressing or allocation; Relocation in hierarchically structured memory systems, e.g. virtual memory systems
    • G06F12/0802Addressing of a memory level in which the access to the desired data or data block requires associative addressing means, e.g. caches
    • G06F12/0877Cache access modes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication
    • G06F9/546Message passing systems or structures, e.g. queues

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Controls And Circuits For Display Device (AREA)
  • User Interface Of Digital Computer (AREA)
  • Telephone Function (AREA)

Abstract

本发明的实施例公开一种Android桌面视图展示方法、装置和电子设备,用于解决现有的桌面视图展示的方法兼容性低,无法展示View的高级属性、无法精确控制刷新时间等问题。所述Android桌面视图展示方法,包括:将待展示的视图渲染为位图并存储于指定内存空间内;通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示;设置所述图片容器的下次更新时间和更新内容,其中,所述更新内容为执行所述通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示的步骤;当所述下次更新时间到达时,执行所述更新内容。本发明适用于通过Widget将高级属性视图展示在Android桌面上。

Description

Android桌面视图展示方法、装置及电子设备
技术领域
本发明涉及Android桌面技术领域,尤其涉及一种Android桌面视图展示方法、装置及电子设备。
背景技术
Widget也称为桌面插件,其是Android系统应用开发层面的一部分,是把一个进程的控件嵌入到别外一个进程的窗口里的一种方法,可以在桌面上提供展示、点击响应交互。
目前的Android桌面组件视图展示,一般是通过Android RemoteViews(RemoteViews表示的是一个View结构,它可以在其他进程中显示,由于它在其他进程中显示,为了能够更新它的界面,RemoteViews提供了一组基础的操作用于跨进程更新它的界面)自有方法接口,将预先写好的xml布局文件解析后在桌面呈现。这种方法能展示的视图有:文字、图片、进度条、滑动列表,能动态改变展示的属性有:文字颜色、文字大小、图片、进度条进度等。而Widget更新的时间间隔则在相应App清单配置文件中申明,或者在Widget的右上角增加一个刷新按钮,由用户手动点击触发更新。
但是,目前通过Widget实现桌面视图展示的方法具有以下缺点:
Widget布局文件可以添加的组件是有限制的,它可以支持的布局只有FrameLayout、LinearLayout、RelativeLayout、GridLayout四种;
Widget布局文件支持的View仅有:TextView(文字)、ImageView(图片)、ProgressBar(进度条)、ListView(滑动列表),无法使用自定义View,而展示效果炫酷的View都需要自定义;
Widget无法设置View的高级属性,如旋转的角度、大小缩放、透明度变化等;
Widget的字体无法动态替换修改;
展示于桌面的组件更新内容的时机无法掌控:由于Android内部实现机制,只能在App清单配置文件中申明组件刷新时间间隔,这就导致了组件更新不及时,例如专门显示日历的Widget,刷新时间间隔调成1天,会出现实际时间零点后桌面Wdget显示的日期没及时更改;若将刷新时间调成1分钟,又会导致增加无用的刷新次数,造成系统性能损耗。
综上所述,目前通过Widget实现桌面视图展示的方法具有限制多,兼容性低,无法展示View的高级属性、无法精确控制刷新时间等问题。
发明内容
有鉴于此,本发明实施例提供一种Android桌面视图展示方法、装置和电子设备,能够解决现有的桌面视图展示的方法限制多,兼容性低,无法展示View的高级属性、无法精确控制刷新时间等问题。
第一方面,本发明实施例提供一种Android桌面视图展示方法,包括:
将待展示的视图渲染为位图并存储于指定内存空间内;
通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示;
设置所述图片容器的下次更新时间和更新内容;所述更新内容为执行所述通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示的步骤;
当所述下次更新时间到达时,执行所述更新内容。
结合第一方面,在第一方面的第一种实施方式中,所述设置所述图片容器的下次更新时间和更新内容,包括:
通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。
结合第一方面的或第一方面的第一种实施方式,在第一方面的第二种可能的实现方式中,当所述待展示的视图为多个时,所述将待展示的视图渲染为位图并存储于指定内存空间内,包括:
将待展示的第i个视图渲染为第i个位图;其中,i的初始值为1;
判断是否已经申请了用于存储位图的指定内存空间;
若没有申请用于存储位图的指定内存空间,则申请用于存储位图的指定内存空间;
在所述图片容器的第i次更新时间达到前,将第i个位图存储到所述指定内存空间内,并令i=i+1;
若已经申请了用于存储位图的指定内存空间,则执行所述在所述图片容器的第i次更新时间达到前,将第i个位图存储到所述指定内存空间内的步骤。
结合第一方面的第二种实施方式,在第一方面的第三种实施方式中,所述申请用于存储位图的指定内存空间,包括:
申请一个内存空间作为指定内存空间;
将所述指定内存空间包装为弱引用;
通过Hashmap建立所述指定内存空间和所述Widget的对应关系;
所述通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示,包括:
根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。
第二方面,本发明实施例提供一种Android桌面视图展示装置,包括:
渲染存储模块,用于将待展示的视图渲染为位图并存储于指定内存空间内;
读取模块,用于通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示;
更新设置模块,用于在所述读取模块通过Widget读取所述指定内存空间内的位图后,设置所述图片容器的下次更新时间和更新内容;所述更新内容为触发所述读取模块通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示;
触发模块,用于当所述更新设置模块设置的下次更新时间到达时,触发所述读取模块执行所述更新内容。
结合第二方面,在第二方面的第一种实施方式中,所述更新设置模块,具体用于通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。
结合第二方面的或第二方面的第一种实施方式,在第二方面的第二种实施方式中,当所述待展示的视图为多个时,所述渲染存储模块,包括:
渲染子模块,用于将待展示的第i个视图渲染为第i个位图;其中,i的初始值为1;
判断子模块,用于在所述渲染子模块得到第i个位图后,判断是否已经申请了用于存储位图的指定内存空间;
内存申请子模块,用于在所述判断子模块的判断结果为否时,申请用于存储位图的指定内存空间;
存储子模块,用于在所述判断子模块的判断结果为是时或者在所述内存申请子模块申请指定内存空间后,在所述图片容器的第i次更新时间达到前,将所述渲染子模块得到的第i个位图存储到所述指定内存空间内,并令i=i+1。
结合第二方面的第二种实施方式,在第二方面的第三种实施方式中,所述内存申请子模块,包括:
申请单元,用于申请一个内存空间作为指定内存空间;
包装单元,用于将所述指定内存空间包装为弱引用;
对应单元,用于通过Hashmap建立所述指定内存空间和所述Widget的对应关系;
所述读取模块,具体用于根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。
第三方面,本发明实施例提供一种电子设备,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一项实施例所述的一种Android桌面视图展示方法。
第四方面,本发明实施例提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述任一项实施例所述的一种Android桌面视图展示方法。
本发明实施例提供的一种Android桌面视图展示方法及装置,通过将待展示的视图渲染为位图并存储于指定内存空间内,随后通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示,能够解决现有的桌面视图展示的方法限制多,兼容性低,无法展示View的高级属性、无法精确控制刷新时间的问题。本发明可以使用任何View不受限制,对待展示的视图组件无布局限制,兼容性高,也能使用View的高级属性,此外,通过消息轮询机制设置刷新时间,组件可以根据自身需要精确控制下一次刷新的时间。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其它的附图。
图1为本发明提供的一种Android桌面视图展示方法实施例的流程图;
图2为图1中步骤S1的具体实施方法流程图;
图3为本发明提供的Android桌面视图展示装置实施例一的结构示意图;
图4为本发明提供的Android桌面视图展示装置实施例二的结构示意图;
图5为本发明提供的一种电子设备的结构示意图。
具体实施方式
下面结合附图对本发明实施例一种Android桌面视图展示方法、装置及电子设备进行详细描述。
应当明确,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
图1为本发明提供的一种Android桌面视图展示方法实施例一的流程图,如图1所示,本实施例的方法可以包括以下步骤S1-S4:
步骤S1、将待展示的视图渲染为位图并存储于指定内存空间内;
步骤S2、通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示。
本实施例中,将待展示的视图渲染为位图并存储于预先申请的指定内存空间内,随后通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示,可以使用任何View不受限制,对待展示的视图组件无布局限制,兼容性高。
步骤S3、设置所述图片容器的下次更新时间和更新内容;
其中,所述更新内容为:执行通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示的操作。
步骤S4、当所述下次更新时间到达时,执行所述更新内容。
优选地,步骤S3中通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。则在应用程序启动时,默认的调用了Looper.preper()方法,这个方法就是创建了消息轮询机制,其中,消息轮询机制本质上来说是一个死循环,不停的在消息队列中取消息数据,消息队列的数据是按照即将执行的时间排序的,每个消息对象有个标识区分是什么时候(精确到毫秒)执行。例如,希望所述图片容器在下一分钟(当前时间为18:00)进行更新,则可以创建一个消息,标识下次更新时间为18:01,定义消息内容为:在此更新时间执行读取指定内存空间内的位图至预设的图片容器中承载显示的操作,将此消息写入(方法可以为:sendMessage())消息队列(MessageQueue)消息队列中,则步骤S4中消息轮询机制从消息队列中读到(读取方法:MessageQueue.next())标识为18:01的这个消息,同时在当前手机的时间到达18:01分时,则执行定义的消息,即读取指定内存空间内的位图至预设的图片容器中承载,从而实现将当前指定内存空间内存储的位图加载显示到桌面的效果。
显然,当待展示的视图只有一幅静态图片时,通过上述方法将该图片渲染为一个位图存储于指定内存空间内,随后通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示后,可以将Widget的图片容器的刷新时间设置的较长或不刷新,从而在实现将待展示的视图加载到桌面的前提下节省系统资源。
在一优先实施例中,当所述待展示的视图为多个时,如图2所示,步骤S1可以包括以下步骤S11-S16:
步骤S11、将待展示的第i个视图渲染为第i个位图;
其中,i的初始值为1。
本实施例中,当待展示的为具有高级属性的View时,可以将待展示的View按照展示时间顺序划分为多个View,将这多个View顺序编号,每次执行步骤11时按序取一张View进行渲染,得到对应的第i个位图。
步骤S12、判断是否已经申请了用于存储位图的指定内存空间;若是,则跳转执行步骤S14,否则,执行步骤S13。
步骤S13、若没有申请用于存储位图的指定内存空间,则申请用于存储位图的指定内存空间;
优选地,本发明实施例中对生成的位图通过缓存复用机制进行存储。对于待展示的第一张位图(bitmap),首先为其申请指定内存空间,然后后续需要存储其他的bitmap时,使用此前申请的指定内存空间进行覆盖存储,从而达到了缓存复用,提高了内存使用的效率。
优选地,步骤S13可以先申请一个内存空间作为指定内存空间,随后将所述指定内存空间包装为弱引用,并通过Hashmap建立所述指定内存空间和所述Widget的对应关系。则步骤S2中具体根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。本实施例中,使用Android系统Bitmap(位图)的缓存复用机制,只需要在代码使用的时候动态设置开启。具体地,调用Bitmap对象中的setImmutable()方法开启重复利用的Bitmap对象的内存,使用了WeakReference,将Bitmap对象包装成弱引用,保证一个Widget从桌面上移除后,手机垃圾清理进程运行后能及时回收不用的Bitmap内存块。由于每个Widget都有一个唯一标识Id(添加到桌面上,系统自动分配),将Bitmap弱引用与使用该Bitmap的Widget Id使用HashMap关联绑定关系,这样保证了Widget还在桌面上展示时,调用者能找到该Bitmap对象,从而达到复用修改的目的。
步骤S14、在所述图片容器的第i次更新时间达到前,将第i个位图存储到所述指定内存空间内,并令i=i+1。
步骤S15、判断i是否大于N,否则,返回执行步骤S11。
其中,N为待展示的视图总数。
本实施例中,在步骤15中判断出i大于N后,表明待展示的多个视图在桌面上通过Widget依次刷新展示完毕一轮,随后可以根据需要来确定后续步骤,若开发人员只想要多个待展示的视图展示一轮,则结束流程,若开发人员希望这些待展示视图在桌面上不停轮换展示,则在步骤S15中判断出i大于N后,可以继续执行步骤S16。
步骤S16、令i=1,随后返回执行步骤S11。
本实施例中,可以将想要展示的View的高级效果,如一段动画或者随时间显示旋转效果的视图,按照展示时间顺序,分成若干张view,然后将若干张view渲染为若干张(第1,2,3,……,n张)bitmap。然后通过消息轮询机制,让Widget的图片容器定期、不断的去指定内存中读取加载bitmap,其中需要设置好步骤14中将第i个位图存储到所述指定内存空间内的时间和Widget的图片容器执行第i次更新时间之间的先后关系,则可以在缓存复用存储bitmap的基础上,使Widget顺序获取到用于形成高级展示属性的多个bitmap进行展示,通过控制Widget的图片容器更新时间,就会展示出一段动画或者随时间显示旋转效果的视图,使用这种方式,可以使用任何View不受限制,也能达到通过Widget桌面展示View的高级属性的效果。
对应于本发明提供的一种Android桌面视图展示方法,本发明实施例还提供一种Android桌面视图展示装置。图3为本发明提供的Android桌面视图展示装置实施例一的结构示意图,如图3所示,本实施例的装置可以包括:渲染存储模块11、读取模块12、更新设置模块13和触发模块14。其中,渲染存储模块11,用于将待展示的视图渲染为位图并存储于指定内存空间内。读取模块12,用于通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示。更新设置模块13,用于在所述读取模块12通过Widget读取所述指定内存空间内的位图后,设置所述图片容器的下次更新时间和更新内容;所述更新内容为触发所述读取模块通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。触发模块14,用于当所述更新设置模块13设置的下次更新时间到达时,触发所述读取模块12执行所述更新内容。
本实施例的装置,可以用于执行图1所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
优选地,所述更新设置模块13,具体用于通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。
图4为本发明提供的Android桌面视图展示装置实施例二的结构示意图,如图4所示,本实施例的装置在图3所示装置结构的基础上,进一步地,当所述待展示的视图为多个时,所述渲染存储模块11,包括:
渲染子模块111,用于将待展示的第i个视图渲染为第i个位图;其中,i的初始值为1;
判断子模块112,用于在所述渲染子模块111得到第i个位图后,判断是否已经申请了用于存储位图的指定内存空间;
内存申请子模块113,用于在所述判断子模块112的判断结果为否时,申请用于存储位图的指定内存空间;
存储子模块114,用于在所述判断子模块112的判断结果为是时或者在所述内存申请子模块113申请指定内存空间后,在所述图片容器的第i次更新时间达到前,将所述渲染子模块111得到的第i个位图存储到所述指定内存空间内,并令i=i+1。
本实施例的装置,可以用于执行图1或图2所示方法实施例的技术方案,其实现原理和技术效果类似,此处不再赘述。
在一可选实施例中,所述内存申请子模块113,可以包括:申请单元、包装单元和对应单元;其中,申请单元,用于申请一个内存空间作为指定内存空间;包装单元,用于将所述指定内存空间包装为弱引用;对应单元,用于通过Hashmap建立所述指定内存空间和所述Widget的对应关系。本实施例中,读取模块12具体用于根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。
本发明实施例还提供一种电子设备。图5为本发明提供的一种电子设备的结构示意图,可以实现本发明任一方法实施例的流程,如图5所示,上述电子设备可以包括:壳体21、处理器22、存储器23、电路板24和电源电路25,其中,电路板24安置在壳体21围成的空间内部,处理器22和存储器23设置在电路板24上;电源电路25,用于为上述电子设备的各个电路或器件供电;存储器23用于存储可执行程序代码;处理器22通过读取存储器23中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述任一实施例所述的一种Android桌面视图展示方法。
该电子设备以多种形式存在,包括但不限于:
(1)移动通信设备:这类设备的特点是具备移动通信功能,并且以提供话音、数据通信为主要目标。这类终端包括:智能手机(例如iPhone)、多媒体手机、功能性手机,以及低端手机等。
(2)超移动个人计算机设备:这类设备属于个人计算机的范畴,有计算和处理功能,一般也具备移动上网特性。这类终端包括:PDA、MID和UMPC设备等,例如iPad。
(3)便携式娱乐设备:这类设备可以显示和播放多媒体内容。该类设备包括:音频、视频播放模块(例如iPod),掌上游戏机,电子书,以及智能玩具和便携式车载导航设备。
(4)服务器:提供计算服务的设备,服务器的构成包括处理器、硬盘、内存、系统总线等,服务器和通用的计算机架构类似,但是由于需要提供高可靠的服务,因此在处理能力、稳定性、可靠性、安全性、可扩展性、可管理性等方面要求较高。
(5)其他具有数据交互功能的电子设备。
第四方面,本发明的实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现前述实施例提供的任一种Android桌面视图展示方法,因此也能实现相应的技术效果,前文已经进行了详细说明,此处不再赘述。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,所述的存储介质可为磁碟、光盘、只读存储记忆体(Read-Only Memory,ROM)或随机存储记忆体(Random AccessMemory,RAM)等。
以上所述,仅为本发明的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换,都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应以权利要求的保护范围为准。

Claims (8)

1.一种Android桌面视图展示方法,其特征在于,包括:
将待展示的视图渲染为位图并存储于指定内存空间内;
通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示;
设置所述图片容器的下次更新时间和更新内容;所述更新内容为执行所述通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示的步骤;
当所述下次更新时间到达时,执行所述更新内容;
其中,所述设置所述图片容器的下次更新时间和更新内容,包括:
通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。
2.如权利要求1所述的一种Android桌面视图展示方法,其特征在于,当所述待展示的视图为多个时,所述将待展示的视图渲染为位图并存储于指定内存空间内,包括:
将待展示的第i个视图渲染为第i个位图;其中,i的初始值为1;
判断是否已经申请了用于存储位图的指定内存空间;
若没有申请用于存储位图的指定内存空间,则申请用于存储位图的指定内存空间;
在所述图片容器的第i次更新时间达到前,将第i个位图存储到所述指定内存空间内,并令i=i+1;
若已经申请了用于存储位图的指定内存空间,则执行所述在所述图片容器的第i次更新时间达到前,将第i个位图存储到所述指定内存空间内的步骤。
3.如权利要求2所述的一种Android桌面视图展示方法,其特征在于,所述申请用于存储位图的指定内存空间,包括:
申请一个内存空间作为指定内存空间;
将所述指定内存空间包装为弱引用;
通过Hashmap建立所述指定内存空间和所述Widget的对应关系;
所述通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示,包括:
根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。
4.一种Android桌面视图展示装置,其特征在于,包括:
渲染存储模块,用于将待展示的视图渲染为位图并存储于指定内存空间内;
读取模块,用于通过Widget读取所述指定内存空间内的位图至预设的图片容器中承载显示;
更新设置模块,用于在所述读取模块通过Widget读取所述指定内存空间内的位图后,设置所述图片容器的下次更新时间和更新内容;所述更新内容为触发所述读取模块通过Widget读取所述指定内存空间内的位图至所述图片容器中承载显示;
触发模块,用于当所述更新设置模块设置的下次更新时间到达时,触发所述读取模块执行所述更新内容;
其中,所述更新设置模块,具体用于通过消息轮询机制,将所述图片容器的下次更新时间和更新内容作为一条消息写入Android系统的消息队列中。
5.如权利要求4所述的一种Android桌面视图展示装置,其特征在于,当所述待展示的视图为多个时,所述渲染存储模块,包括:
渲染子模块,用于将待展示的第i个视图渲染为第i个位图;其中,i的初始值为1;
判断子模块,用于在所述渲染子模块得到第i个位图后,判断是否已经申请了用于存储位图的指定内存空间;
内存申请子模块,用于在所述判断子模块的判断结果为否时,申请用于存储位图的指定内存空间;
存储子模块,用于在所述判断子模块的判断结果为是时或者在所述内存申请子模块申请指定内存空间后,在所述图片容器的第i次更新时间达到前,将所述渲染子模块得到的第i个位图存储到所述指定内存空间内,并令i=i+1。
6.如权利要求5所述的一种Android桌面视图展示装置,其特征在于,所述内存申请子模块,包括:
申请单元,用于申请一个内存空间作为指定内存空间;
包装单元,用于将所述指定内存空间包装为弱引用;
对应单元,用于通过Hashmap建立所述指定内存空间和所述Widget的对应关系;
所述读取模块,具体用于根据所述指定内存空间和所述Widget的对应关系,通过所述Widget读取所述指定内存空间内的位图至所述图片容器中承载显示。
7.一种电子设备,其特征在于,所述电子设备包括:壳体、处理器、存储器、电路板和电源电路,其中,电路板安置在壳体围成的空间内部,处理器和存储器设置在电路板上;电源电路,用于为上述电子设备的各个电路或器件供电;存储器用于存储可执行程序代码;处理器通过读取存储器中存储的可执行程序代码来运行与可执行程序代码对应的程序,用于执行前述权利要求1-3中任一项所述的一种Android桌面视图展示方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以实现权利要求1-3中任一项所述的一种Android桌面视图展示方法。
CN202210332840.2A 2022-03-31 2022-03-31 Android桌面视图展示方法、装置及电子设备 Active CN114721759B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202210332840.2A CN114721759B (zh) 2022-03-31 2022-03-31 Android桌面视图展示方法、装置及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202210332840.2A CN114721759B (zh) 2022-03-31 2022-03-31 Android桌面视图展示方法、装置及电子设备

Publications (2)

Publication Number Publication Date
CN114721759A CN114721759A (zh) 2022-07-08
CN114721759B true CN114721759B (zh) 2023-11-24

Family

ID=82240874

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202210332840.2A Active CN114721759B (zh) 2022-03-31 2022-03-31 Android桌面视图展示方法、装置及电子设备

Country Status (1)

Country Link
CN (1) CN114721759B (zh)

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595186B1 (en) * 2007-06-06 2013-11-26 Plusmo LLC System and method for building and delivering mobile widgets
CN106610828A (zh) * 2015-10-21 2017-05-03 广州市动景计算机科技有限公司 基于Android系统的GIF动画播放方法及装置
WO2017157042A1 (zh) * 2016-03-15 2017-09-21 广州市动景计算机科技有限公司 任务执行进度的显示方法、装置及客户端
WO2017215270A1 (zh) * 2016-06-16 2017-12-21 北京金山安全软件有限公司 一种信息展示方法、装置及电子设备
CN108647075A (zh) * 2018-05-11 2018-10-12 阿里巴巴集团控股有限公司 应用页面的Listview刷新方法、装置和电子设备
CN108989429A (zh) * 2018-07-19 2018-12-11 平安科技(深圳)有限公司 实时更新页面数据的方法、装置、电子设备
CN108989872A (zh) * 2018-07-10 2018-12-11 武汉斗鱼网络科技有限公司 一种安卓电视背景快速切换方法、框架、服务器及存储介质
CN110221889A (zh) * 2019-05-05 2019-09-10 北京三快在线科技有限公司 一种页面展示方法、装置、电子设备及存储介质
CN112052059A (zh) * 2020-09-04 2020-12-08 北京达佳互联信息技术有限公司 弹窗显示方法、装置、电子设备及存储介质
CN112162687A (zh) * 2020-10-22 2021-01-01 腾讯科技(深圳)有限公司 图片生成方法和装置、存储介质及电子设备
CN113268305A (zh) * 2021-06-01 2021-08-17 中兴通讯股份有限公司 微件的显示方法、装置、终端及计算机可读存储介质
CN113835571A (zh) * 2021-09-17 2021-12-24 青岛海信移动通信技术股份有限公司 一种终端设备、信息展示方法和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8458605B2 (en) * 2010-02-26 2013-06-04 Amulet Technologies, Llc Image file as container for widgets in GUI authoring tool

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8595186B1 (en) * 2007-06-06 2013-11-26 Plusmo LLC System and method for building and delivering mobile widgets
CN106610828A (zh) * 2015-10-21 2017-05-03 广州市动景计算机科技有限公司 基于Android系统的GIF动画播放方法及装置
WO2017157042A1 (zh) * 2016-03-15 2017-09-21 广州市动景计算机科技有限公司 任务执行进度的显示方法、装置及客户端
WO2017215270A1 (zh) * 2016-06-16 2017-12-21 北京金山安全软件有限公司 一种信息展示方法、装置及电子设备
CN108647075A (zh) * 2018-05-11 2018-10-12 阿里巴巴集团控股有限公司 应用页面的Listview刷新方法、装置和电子设备
CN108989872A (zh) * 2018-07-10 2018-12-11 武汉斗鱼网络科技有限公司 一种安卓电视背景快速切换方法、框架、服务器及存储介质
CN108989429A (zh) * 2018-07-19 2018-12-11 平安科技(深圳)有限公司 实时更新页面数据的方法、装置、电子设备
CN110221889A (zh) * 2019-05-05 2019-09-10 北京三快在线科技有限公司 一种页面展示方法、装置、电子设备及存储介质
CN112052059A (zh) * 2020-09-04 2020-12-08 北京达佳互联信息技术有限公司 弹窗显示方法、装置、电子设备及存储介质
CN112162687A (zh) * 2020-10-22 2021-01-01 腾讯科技(深圳)有限公司 图片生成方法和装置、存储介质及电子设备
CN113268305A (zh) * 2021-06-01 2021-08-17 中兴通讯股份有限公司 微件的显示方法、装置、终端及计算机可读存储介质
CN113835571A (zh) * 2021-09-17 2021-12-24 青岛海信移动通信技术股份有限公司 一种终端设备、信息展示方法和存储介质

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
Role-based control of shared application views;Lior Berry 等;Proceedings of the 18th annual ACM symposium on User interface software and technology;23-32 *
安卓应用用户界面交互模式抽取与检索;吴俊伟 等;软件学报;第29卷(第8期);2198-2209 *

Also Published As

Publication number Publication date
CN114721759A (zh) 2022-07-08

Similar Documents

Publication Publication Date Title
TWI808393B (zh) 頁面處理方法、裝置、設備及儲存媒體
CN109032722B (zh) 更新ui组件的显示效果的方法、装置及设备、介质
US9842091B2 (en) Switching to and from native web applications
CN106991096B (zh) 动态页面渲染方法及装置
CN106874023B (zh) 动态页面加载方法和装置
CN105930467A (zh) 一种信息处理方法及电子设备
CN110750664B (zh) 图片的显示方法及装置
CN107070785B (zh) 一种实现阅读分享的方法及其装置
CN103778211A (zh) 移动终端游戏软件的语言切换方法及装置
CN111494952B (zh) 网页端的对象展示方法、装置、及可读存储介质
CN112817657B (zh) 一种应用程序启动项加载方法、装置、系统及存储介质
CN111951356B (zh) 基于json数据格式的动画渲染方法
CN111290680B (zh) 列表显示方法、装置、终端及存储介质
CN114721759B (zh) Android桌面视图展示方法、装置及电子设备
CN111796825B (zh) 一种弹幕的绘制方法、装置、设备和存储介质
CN113342330A (zh) 前端工程生成方法及装置
CN109814953B (zh) 穿戴式设备视图处理方法、装置、穿戴式设备及存储介质
CN114995699B (zh) 一种界面交互方法及装置
JP2010282200A (ja) アニメーションフォントファイルの構造及び携帯用端末のテキスト出力方法
CN111352665A (zh) 页面加载方法、装置、设备及其存储介质
CN114625997A (zh) 页面渲染方法及装置、电子设备、计算机可读介质
CN114201713A (zh) 一种页面跳转的方法、装置、计算机设备及存储介质
EP3848800A1 (en) Method and apparatus for displaying message box, terminal and storage medium
CN112612633A (zh) 进程间通信方法、装置、存储介质以及终端
CN110704157A (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
GR01 Patent grant
GR01 Patent grant