CN110321189B - 一种在宿主程序中呈现寄宿程序的方法与设备 - Google Patents

一种在宿主程序中呈现寄宿程序的方法与设备 Download PDF

Info

Publication number
CN110321189B
CN110321189B CN201910265412.0A CN201910265412A CN110321189B CN 110321189 B CN110321189 B CN 110321189B CN 201910265412 A CN201910265412 A CN 201910265412A CN 110321189 B CN110321189 B CN 110321189B
Authority
CN
China
Prior art keywords
interface component
program
hosted program
hosted
resource
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
CN201910265412.0A
Other languages
English (en)
Other versions
CN110321189A (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.)
Shanghai Lianshang Network Technology Co Ltd
Original Assignee
Shanghai Lianshang Network 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 Shanghai Lianshang Network Technology Co Ltd filed Critical Shanghai Lianshang Network Technology Co Ltd
Priority to CN201910265412.0A priority Critical patent/CN110321189B/zh
Publication of CN110321189A publication Critical patent/CN110321189A/zh
Application granted granted Critical
Publication of CN110321189B publication Critical patent/CN110321189B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • 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/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • User Interface Of Digital Computer (AREA)
  • Stored Programmes (AREA)

Abstract

本申请的目的是提供一种在宿主程序中呈现寄宿程序的方法,该方法包括:若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取第一寄宿程序的当前执行页面;根据当前执行页面,以及第一寄宿程序对应的第一界面组件的窗口设置,生成第一寄宿程序对应的缩略图,其中,缩略图与窗口设置相匹配;在宿主程序中呈现第一界面组件,缩略图显示于第一界面组件的窗口中。在宿主程序中呈现寄宿程序对应的当前执行页面的缩略图,从而使用户通过点击该缩略图即可实现切换到该寄宿程序,在寄宿程序没有运行在前台时,用户也可以通过界面组件查看对应的寄宿程序的当前执行页面,通过点击该界面组件的窗口中的缩略图切换到该寄宿程序。

Description

一种在宿主程序中呈现寄宿程序的方法与设备
技术领域
本申请涉及通信领域,尤其涉及一种在宿主程序中呈现寄宿程序的技术。
背景技术
寄宿程序是一种依托于宿主程序,不需要下载安装即可使用的程序。寄宿程序进一步扩充了宿主程序的功能。用户在使用寄宿程序时,经常会遇到打开了多个寄宿程序的情况,当多个寄宿程序在后台运行时,由于该多个寄宿程序运行在后台,用户无法查看该多个寄宿程序的当前执行页面状态,不能很好的实现多个寄宿程序间的自由切换。
发明内容
本申请的一个目的是提供一种在宿主程序中呈现寄宿程序的方法与设备。
根据本申请的一个方面,提供了一种在宿主程序中呈现寄宿程序的方法,该方法包括:
若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面;
根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配;
在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。
根据本申请的另一个方面,提供了一种在宿主程序中呈现寄宿程序的设备,该设备包括:
一一模块,用于若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面;
一二模块,用于根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配;
一三模块,用于在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。
根据本申请的一个方面,提供了一种在宿主程序中呈现寄宿程序的设备,该设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如上所述任一方法的操作。
根据本申请的另一个方面,提供了存储指令的计算机可读介质,所述指令在被执行时使得***进行如上所述任一方法的操作。
与现有技术相比,本申请通过基于检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面,根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,在所述宿主程序中呈现所述第一界面组件,以支持在宿主程序中呈现寄宿程序对应的当前执行页面的缩略图,从而使用户通过点击该缩略图即可实现切换到该寄宿程序,在寄宿程序没有运行在前台时,用户也可以通过界面组件查看对应的寄宿程序的当前执行页面,进一步地,通过点击该界面组件的窗口中的缩略图切换到该寄宿程序。
并且,本申请通过在第一界面组件资源中渲染第一寄宿程序来生成对应的第一界面组件,以实现通过第一界面组件将该第一寄宿程序切换至前台运行,当后台生成有多个界面组件时,通过该多个界面组件实现多个寄宿程序间的自由切换。同时,通过第一界面组件保存第一寄宿程序的运行状态信息,并通过该第一界面组件将该第一寄宿程序与其他界面组件对应的寄宿程序相隔离,从而支持在多个寄宿程序间自由切换的同时保持该多个寄宿程序各自的状态。
附图说明
通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:
图1示出根据本申请一个实施例的一种在宿主程序中呈现寄宿程序的方法流程图;
图2示出根据本申请另一个实施例的一种在宿主程序中呈现寄宿程序的设备模块图;
图3示出根据本申请一个实施例的在宿主程序中呈现寄宿程序的界面示意图;
图4示出根据本申请另一个实施例的在宿主程序中呈现寄宿程序的界面示意图;
图5示出根据本申请另一个实施例的一种在宿主程序中呈现寄宿程序的方法流程图;
图6示出根据本申请另一个实施例的一种在宿主程序中呈现寄宿程序的设备模块图;
图7示出可被用于实施本申请中所述的各个实施例的示例性***。
附图中相同或相似的附图标记代表相同或相似的部件。
具体实施方式
下面结合附图对本申请作进一步详细描述。
在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(例如,中央处理器(Central Processing Unit,CPU))、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RandomAccess Memory,RAM)和/或非易失性内存等形式,如只读存储器(Read Only Memory,ROM)或闪存(Flash Memory)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(Phase-Change Memory,PCM)、可编程随机存取存储器(Programmable Random Access Memory,PRAM)、静态随机存取存储器(Static Random-Access Memory,SRAM)、动态随机存取存储器(Dynamic Random AccessMemory,DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(Electrically-Erasable Programmable Read-Only Memory,EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(Compact Disc Read-Only Memory,CD-ROM)、数字多功能光盘(Digital Versatile Disc,DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。
本申请所指设备包括但不限于用户设备、网络设备、或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备包括但不限于任何一种可与用户进行人机交互(例如通过触摸板进行人机交互)的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作***,如android操作***、iOS操作***等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(Application Specific IntegratedCircuit,ASIC)、可编程逻辑器件(Programmable Logic Device,PLD)、现场可编程门阵列(Field Programmable Gate Array,FPGA)、数字信号处理器(Digital Signal Processor,DSP)、嵌入式设备等。所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、VPN网络、无线自组织网络(Ad Hoc网络)等。优选地,所述设备还可以是运行于所述用户设备、网络设备、或用户设备与网络设备、网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的程序。
当然,本领域技术人员应能理解上述设备仅为举例,其他现有的或今后可能出现的设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。
在本申请的描述中,“多个”的含义是两个或者更多,除非另有明确具体的限定。
图1示出了根据本申请一个实施例的一种在宿主程序中呈现寄宿程序的方法流程图。该方法包括步骤S101、步骤S102以及步骤S103。在步骤S101中,若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面;在步骤S102中,根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配;在步骤S103中,在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。在一些实施例中,所述宿主程序包括但不限于应用程序(例如,社交应用、支付应用、购物应用等)。在一些实施例中,所述宿主程序安装在用户设备上,其中,所述用户设备包括但不限于手机、平板、电脑等计算设备。在一些实施例中,所述寄宿程序(例如,所述第一寄宿程序)包括但不限于小程序,所述寄宿程序可在所述宿主程序上运行。在一些实施例中,所述第一界面组件是基于所述第一寄宿程序生成的,所述第一界面组件为用户设备中的组件,用于呈现所述第一寄宿程序,例如,通过所述第一界面组件的窗口呈现所述第一寄宿程序的当前执行页面。在一些实施例中,所述界面组件(例如,所述第一界面组件)在Android***中对应的是Activity,用Activity做界面组件资源,在一些实施例中,Android***已经对Activity做了一些处理,比如资源创建、隔离、释放等,进一步地,基于该第一寄宿程序的标识信息(例如,图标),在Manifest.xml里面定义该界面组件(例如,所述第一界面组件),在代码中通过startActivity生成对应的第一界面组件;在另一些实施例中,所述界面组件(例如,所述第一界面组件)在iOS***中可采用UIView,在一些实施例中,需要宿主程序做UIView生命周期的管理,包括资源创建和释放,切换到后台等工作,进一步地,基于第一寄宿程序的标识信息生成对应的第一界面组件。通过第一界面组件保存第一寄宿程序的运行状态信息,并通过该第一界面组件将该第一寄宿程序与其他界面组件对应的寄宿程序相隔离,从而支持在多个寄宿程序间自由切换的同时保持该多个寄宿程序各自的状态。
具体而言,在步骤S101中,若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面。在一些实施例中,所述宿主程序中正在运行的第一寄宿程序包括当前在前台呈现运行的第一寄宿程序。例如,用户在社交应用A中打开小程序a,该小程序a当前运行于前台,用户通过对应的用户设备进行操作(例如,按Home键,或者打开了小程序b),该用户设备基于该操作将该小程序a切换至后台。进一步地,用户设备获取该小程序a的当前执行页面。
在步骤S102中,根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配。在一些实施例中,所述第一界面组件包括窗口,所述窗口用于呈现所述当前执行页面。在一些实施例中,用户设备基于该窗口的尺寸比例生成该第一寄宿程序的当前执行页面对应的缩略图。在一些实施例中,所述缩略图用于向用户呈现该第一寄宿程序被切换至后台时的当前执行页面。在一些实施例中,用户设备中生成有一个或多个界面组件,每个界面组件包括对应的窗口,用户设备通过该窗口向用户呈现一个或多个被切换至后台的寄宿程序的缩略图,以便用户通过该缩略图获得对应的寄宿程序被切换至后台时的当前执行页面,从而更便于进行多个寄宿程序间的自由切换。
在步骤S103中,在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。在一些实施例中,所述第一界面组件包括窗口,所述窗口用于呈现所述缩略图,所述缩略图是基于所述第一寄宿程序的当前执行页面绘制的。在一些实施例中,所述缩略图的尺寸比例与所述第一界面组件的窗口的尺寸比例相同。在一些实施例中,用户设备生成有一个或多个界面组件,所述一个或多个界面组件用于呈现被切换至后台的一个或多个寄宿程序的当前执行页面。进一步地,在一些实施例中,所述宿主程序中呈现有一个或多个界面组件,所述界面组件通过窗口呈现对应的寄宿程序被切换至后台的当前执行页面对应的缩略图。在一些实施例中,用户通过点击每个寄宿程序对应的缩略图进行对应的寄宿程序的切换。
例如,请参考图1、图3以及图4。用户设备中安装有宿主程序A(例如,社交应用A),在该宿主程序中运行有寄宿程序a(例如,小程序a)、寄宿程序b(例如,小程序b)、寄宿程序c(例如,小程序c)。小程序b和小程序c被切换至了后台,小程序b以及小程序c分别对应有第二界面组件以及第三界面组件。当前在前台运行的是小程序a,其中,小程序a对应有第一界面组件。用户通过按Home键将该小程序a切换至了后台,用户设备获取该小程序a的当前执行页面(例如,该小程序a被切换至后台时的页面)。进一步地,用户设备根据该当前执行页面以及该小程序a对应的第一界面组件绘制该小程序a对应的缩略图,例如,根据该第一界面组件的窗口的尺寸比例绘制同等尺寸的缩略图。进一步地,在该社交应用A中呈现该第一界面组件,并通过该第一界面组件的窗口呈现该小程序a当前执行页面的缩略图。如图3所示,在一些实施例中,所述第一界面组件、第二界面组件以及第三界面组件呈现在社交应用A的会话页面中,其中,在该会话页面中通过界面组件可呈现小程序的图标100、名称200以及当前执行页面的缩略图300。如图4所示,在另一些实施例中,所述第一界面组件、第二界面组件以及第三界面组件呈现在社交应用A的小程序管理中心页面,其中,在该小程序管理中心页面中通过界面组件可呈现小程序的图标100、名称200以及当前执行页面的缩略图300。当然,本领域技术人员应能理解,以上所述的图标100、名称200以及当前执行页面的缩略图300的呈现方式仅为举例,其他现有的或今后可能出现的呈现方式如能适用于本申请,也包含在本申请的保护范围内,并以引用的方式包含于此。例如,在一些实施例中,通过界面组件在宿主程序中呈现寄宿程序的当前执行页面的缩略图300、图标100;在一些实施例中,通过界面组件在宿主程序中呈现寄宿程序的当前执行页面的缩略图300、名称200。用户可通过界面组件的窗口呈现的缩略图预览当前被切换至后台的一个或多个寄宿程序,并通过点击该缩略图切换至对应的寄宿程序,支持多任务切换以及展示,提高了用户体验。
在一些实施例中,所述方法还包括步骤S108(未示出),在步骤S108中,持久化存储所述缩略图;其中,所述步骤S103包括:在所述宿主程序中呈现所述第一界面组件,并读取所述缩略图以及将所述缩略图显示于所述第一界面组件的窗口。在一些实施例中,为了避免因非寄宿程序自身的关闭导致不能展示该寄宿程序对应的缩略图,用户设备会持久化存储生成的缩略图。例如,在宿主程序关闭或意外退出后,再次打开该宿主程序时,该寄宿程序的执行状态(例如,该寄宿程序对应的缩略图)仍可以被读出、显示。例如,用户设备将生成的缩略图保存在硬盘中,使得在宿主程序或者该用户设备重启后可以继续读取显示该缩略图。
在一些实施例中,所述缩略图包括以下任一项:经缩小处理的所述当前执行页面;所述当前执行页面中的页面主题信息;所述当前执行页面所属的标签页信息。在一些实施例中,为了方便用户通过界面组件的窗口所呈现的缩略图了解当前被切换至后台的一个或多个寄宿程序的当前执行页面情况,所述缩略图可以包括多种情况。
例如,所述缩略图包括经缩小处理的所述当前执行页面。在一些实施例中,界面组件的窗口的尺寸小于寄宿程序的当前执行页面的尺寸,因此,为了通过缩略图在该窗口中呈现该当前执行页面的全部内容,该缩略图是经过缩小处理的该当前执行页面。
再例如,所述缩略图包括所述当前执行页面中的页面主题信息。在一些实施例中,所述缩略图能够呈现出当前执行页面的页面主题信息,也可以帮助用户了解当前被切换至后台的寄宿程序的当前执行页面情况。例如,购物小程序包括图书页面、服装页面、百货页面等页面主题信息,用户将该购物小程序切换至后台时,该购物小程序的当前执行页面为图书页面,则该购物小程序对应的界面组件的窗口呈现该图书页面的页面主题信息。
又例如,所述缩略图包括所述当前执行页面所属的标签页信息。在一些实施例中,所述缩略图能够呈现出当前执行页面所属的标签页信息,也可以帮助用户了解当前被切换至后台的寄宿程序的当前执行页面情况。例如,购物小程序包括首页、分类、购物车等标签页信息,用户将该购物小程序切换至后台时,该购物小程序的当前执行页面所属的标签页信息为购物车,则该购物小程序对应的界面组件的窗口呈现该购物车的标签页信息。
在一些实施例中,所述方法在所述步骤S101之前还包括:当所述第一寄宿程序被启用,生成所述第一寄宿程序对应的第一界面组件。在一些实施例中,所述第一寄宿程序被启用后即生成该第一寄宿程序对应的第一界面组件。以便在后续再次打开该第一寄宿程序时通过该第一界面组件进行切换。
在一些实施例中,如图5所示,所述生成所述第一寄宿程序对应的第一界面组件,包括步骤S104以及步骤S105,在步骤S104中,从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源;在步骤S105中,在所述第一界面组件资源中渲染所述第一寄宿程序,以生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件包括所述第一寄宿程序的标识信息。
具体而言,在步骤S104中,从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,用户设备中预设有一个或多个界面组件资源;在另一些实施例中,寄宿程序管理中心中预设有一个或多个界面组件资源。通过在所述界面组件资源中渲染对应的寄宿程序来生成界面组件。例如,关于第一界面组件的生成,在Android***中对应的是Activity,用Activity做界面组件资源,在一些实施例中,Android***已经对Activity做了一些处理,比如资源创建、隔离、释放等,进一步地,基于第一寄宿程序的标识信息,在Manifest.xml里面定义界面组件,在代码中通过startActivity生成对应的第一界面组件;在iOS***中可采用UIView,在一些实施例中,需要宿主程序做UIView生命周期的管理,包括资源创建和释放,切换到后台等工作,进一步地,基于第一寄宿程序的标识信息生成对应的第一界面组件。在一些实施例中,根据所述一个或多个界面组件资源的渲染状态信息确定所述第一寄宿程序对应的第一界面组件资源,例如,从所述一个或多个界面组件资源中查找未被渲染的界面组件资源,并将该界面组件资源确定为第一界面组件资源。在一些实施例中,所述界面组件资源包括界面标识信息,所述界面标识信息包括但不限于关于界面组件资源的编号信息,例如,预设有五个界面组件资源,所述五个界面组件资源分别用编号1、2、3、4、5进行区分。在一些实施例中,按照该界面标识信息查找确定第一界面资源,例如,在所述五个界面组件资源查找到编号为1的界面组件资源为未被渲染的空闲状态,将该编号为1的界面组件资源作为第一界面组件资源。通过该界面标识信息也可实现第一界面组件资源与第一寄宿程序的标识信息间的映射对应,以基于该界面标识信息查找切换到该第一寄宿程序,或者,基于该第一寄宿程序的标识信息查找到对应的第一界面组件资源。
在步骤S105中,在所述第一界面组件资源中渲染所述第一寄宿程序,以生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件包括所述第一寄宿程序的标识信息。在一些实施例中,为了通过该第一界面组件呈现运行对应的第一寄宿程序,需要在所述第一界面组件资源中渲染该第一寄宿程序,以实现保持该第一寄宿程序的状态信息(例如,该第一寄宿程序被切换至后台时的界面状态信息)以及通过切换该第一界面组件来运行该第一寄宿程序的目的。对于根据第一寄宿程序渲染第一界面组件资源包括但不限于:绑定该寄宿程序的数据,以实现通过生成的第一界面组件即可运行第一寄宿程序;渲染该第一寄宿程序的标识信息,以实现通过该第一界面组件即可识别确定该第一界面组件对应的第一寄宿程序,从而实现通过各界面组件间的切换实现各寄宿程序间的切换。在一些实施例中,所述第一界面组件中包括该第一寄宿程序的标识信息,以在该第一界面组件中呈现该标识信息,方便用户选择确认;在一些实施例中,所述第一寄宿程序的标识信息用于与该第一界面组件形成关联映射,以便在切换时根据该第一界面组件查找到对应的第一寄宿程序,从而在该第一界面组件中运行以及展示该第一寄宿程序。
在一些实施例中,所述步骤S104包括:根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,当接收到满足生成界面组件的触发条件后,用户设备需要从预设的一个或多个界面组件资源中确定用于生成界面组件的界面组件资源。为了充分利用所述一个或多个界面组件资源,在一些实施例中,用户设备根据所述一个或多个界面组件资源的渲染状态信息确定所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述渲染状态信息包括该界面组件资源已经被渲染或者未被渲染。
在一些实施例中,所述步骤S104包括:根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中查找当前待渲染的界面组件资源,将所述当前待渲染的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述界面组件资源包括界面标识信息(例如,1#界面组件资源、2#界面组件资源、3#界面组件资源、4#界面组件资源、5#界面组件资源),在一些实施例中,为了各个寄宿程序能够更好的运行,用户设备中最多可预设五个界面组件资源。当检测到满足生成界面组件的触发条件时,用户设备根据该五个界面组件资源的渲染状态信息查找当前未被渲染的界面组件资源,例如,用户设备按照界面标识信息的顺序依次查找该五个界面组件资源的渲染状态信息,其中,5#界面组件资源未被渲染,用户设备将该5#界面组件资源确定为第一界面组件资源,并在该5#界面组件资源中渲染对应的第一寄宿程序。根据所述一个或多个界面组件资源的渲染状态信息查找用于渲染第一寄宿程序的第一界面组件资源,能够找到当前空闲的界面组件资源,从而更充分的利用该一个或多个界面组件资源,有利于资源的有效利用。
在一些实施例中,所述步骤S104还包括:若未查找到所述当前待渲染的界面组件资源,将寄宿程序管理中心最早记录的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述寄宿程序管理中心为所述宿主程序中的功能模块,在一些实施例中,所述功能模块为寄宿程序引擎的一部分(例如,小程序引擎中的一部分,所有打开小程序的行为都要经过该寄宿程序管理中心)。在一些实施例中,所述寄宿程序管理中心用于管理运行在所述宿主程序中的一个或多个寄宿程序,例如,所述寄宿程序管理中心用于支持所述一个或多个寄宿程序的启动、运行;所述寄宿程序管理中心用于记录生成的第一界面组件。在一些实施例中,所述界面组件用于呈现、运行对应的寄宿程序。为了能为第一寄宿程序及时有效的找到第一界面组件资源,当用户设备中预设的界面组件资源均已经被渲染时,用户设备根据寄宿程序管理中心记录的一个或多个界面组件的生成时间确定第一界面组件资源。当界面组件生成时,即在寄宿程序管理中心中记录该界面组件,因此,该寄宿程序管理中心中可保存该界面组件的生成时间。其中,每个界面组件均包括其对应的界面组件资源的界面标识信息,用户设备根据该界面标识信息可以识别预设的多个界面组件资源,从而确定当前可用的界面组件资源。在一些实施例中,为了均匀利用预设的一个或多个界面组件资源,用户设备根据每个界面组件资源生成界面组件的生成时间确定第一界面组件资源。例如,用户设备中预设了五个界面组件资源:1#界面组件资源、2#界面组件资源、3#界面组件资源、4#界面组件资源、5#界面组件资源,其中,1#界面组件资源生成界面组件的时间最早,用户设备将该1#界面组件资源确定为第一界面组件资源。
在一些实施例中,所述步骤S104还包括:若未查找到所述当前待渲染的界面组件资源,将所述寄宿程序管理中心在前台执行时长最短的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。为了能为第一寄宿程序及时有效的找到第一界面组件资源,当用户设备中预设的界面组件资源均已经被渲染时,用户设备根据寄宿程序被切换至前台的时长信息确定第一界面组件资源。在一定程度上,寄宿程序被切换至前台的时长越长说明用户越喜欢用该寄宿程序,同理,寄宿程序被切换至前台的时长越短说明用户不是很喜欢用该寄宿程序。在一些实施例中,用户设备在寄宿程序管理中心中记录的一个或多个界面组件中查找被切换至前台的时长最短的界面组件所对应的界面组件资源,并将该界面组件资源确定为第一界面组件资源。通过将被切换至前台的时长最短的寄宿程序确定第一界面组件资源,能够为用户筛选掉不是很喜欢的寄宿呈现占用界面组件资源,从而能够更充分的利用好每个界面组件资源。
在一些实施例中,所述步骤S101包括:若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,生成所述第一寄宿程序对应的第一界面组件,并获取所述第一寄宿程序的当前执行页面信息。在一些实施例中,所述生成第一界面组件的触发条件为将宿主程序中正在运行的第一寄宿程序切换至后台的操作。例如,当前正在运行的第一寄宿程序还没有对应的第一界面组件,在将该第一寄宿程序切换至后台时,生成该第一寄宿程序的第一界面组件,同时,获取该第一寄宿程序的当前执行页面信息,以生成该当前执行页面信息对应的缩略图,并在该第一界面组件中呈现该缩略图。
在一些实施例中,所述第一界面组件包括所述第一寄宿程序的标识信息,所述第一寄宿程序的标识信息与所述缩略图共同呈现于所述宿主程序中显示所述第一界面组件的窗口或所述第一界面组件的窗口所在的区域中。在一些实施例中,用户设备在生成第一界面组件时基于对应的第一寄宿程序的标识信息,将该标识信息传入该第一界面组件中。在一些实施例中,如图3所示,第一寄宿程序的标识信息100以及生成的缩略图300共同呈现于所述宿主程序中显示所述第一界面组件的区域;在另一些实施例中,如图4所示,第一寄宿程序的标识信息100以及生成的缩略图300共同呈现于所述宿主程序中显示所述第一界面组件的区域400(例如,图4中的虚线框部分为显示该第一界面组件的区域)。当然,本领域技术人员应能理解,图3以及图4中的呈现方式仅为举例,其他现有的或今后可能出现的呈现方式如能适用于本申请,也包含在本申请的保护范围内,并以引用的方式包含于此。
图2示出了根据本申请一个实施例的一种在宿主程序中呈现寄宿程序的设备模块图。该设备包括一一模块、一二模块以及一三模块。一一模块,用于若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面;一二模块,用于根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配;一三模块,用于在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。在一些实施例中,所述宿主程序包括但不限于应用程序(例如,社交应用、支付应用、购物应用等)。在一些实施例中,所述宿主程序安装在用户设备上,其中,所述用户设备包括但不限于手机、平板、电脑等计算设备。在一些实施例中,所述寄宿程序(例如,所述第一寄宿程序)包括但不限于小程序,所述寄宿程序可在所述宿主程序上运行。在一些实施例中,所述第一界面组件是基于所述第一寄宿程序生成的,所述第一界面组件为用户设备中的组件,用于呈现所述第一寄宿程序,例如,通过所述第一界面组件的窗口呈现所述第一寄宿程序的当前执行页面。在一些实施例中,所述界面组件(例如,所述第一界面组件)在Android***中对应的是Activity,用Activity做界面组件资源,在一些实施例中,Android***已经对Activity做了一些处理,比如资源创建、隔离、释放等,进一步地,基于该第一寄宿程序的标识信息(例如,图标),在Manifest.xml里面定义该界面组件(例如,所述第一界面组件),在代码中通过startActivity生成对应的第一界面组件;在另一些实施例中,所述界面组件(例如,所述第一界面组件)在iOS***中可采用UIView,在一些实施例中,需要宿主程序做UIView生命周期的管理,包括资源创建和释放,切换到后台等工作,进一步地,基于第一寄宿程序的标识信息生成对应的第一界面组件。通过第一界面组件保存第一寄宿程序的运行状态信息,并通过该第一界面组件将该第一寄宿程序与其他界面组件对应的寄宿程序相隔离,从而支持在多个寄宿程序间自由切换的同时保持该多个寄宿程序各自的状态。
具体而言,一一模块,用于若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面。在一些实施例中,所述宿主程序中正在运行的第一寄宿程序包括当前在前台呈现运行的第一寄宿程序。例如,用户在社交应用A中打开小程序a,该小程序a当前运行于前台,用户通过对应的用户设备进行操作(例如,按Home键,或者打开了小程序b),该用户设备基于该操作将该小程序a切换至后台。进一步地,用户设备获取该小程序a的当前执行页面。
一二模块,用于根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序对应的缩略图,其中,所述缩略图与所述窗口设置相匹配。在一些实施例中,所述第一界面组件包括窗口,所述窗口用于呈现所述当前执行页面。在一些实施例中,用户设备基于该窗口的尺寸比例生成该第一寄宿程序的当前执行页面对应的缩略图。在一些实施例中,所述缩略图用于向用户呈现该第一寄宿程序被切换至后台时的当前执行页面。在一些实施例中,用户设备中生成有一个或多个界面组件,每个界面组件包括对应的窗口,用户设备通过该窗口向用户呈现一个或多个被切换至后台的寄宿程序的缩略图,以便用户通过该缩略图获得对应的寄宿程序被切换至后台时的当前执行页面,从而更便于进行多个寄宿程序间的自由切换。
一三模块,用于在所述宿主程序中呈现所述所述第一界面组件,其中所述缩略图显示于所述第一界面组件的窗口中。在一些实施例中,所述第一界面组件包括窗口,所述窗口用于呈现所述缩略图,所述缩略图是基于所述第一寄宿程序的当前执行页面绘制的。在一些实施例中,所述缩略图的尺寸比例与所述第一界面组件的窗口的尺寸比例相同。在一些实施例中,用户设备生成有一个或多个界面组件,所述一个或多个界面组件用于呈现被切换至后台的一个或多个寄宿程序的当前执行页面。进一步地,在一些实施例中,所述宿主程序中呈现有一个或多个界面组件,所述界面组件通过窗口呈现对应的寄宿程序被切换至后台的当前执行页面对应的缩略图。在一些实施例中,用户通过点击每个寄宿程序对应的缩略图进行对应的寄宿程序的切换。
例如,请参考图1、图3以及图4。用户设备中安装有宿主程序A(例如,社交应用A),在该宿主程序中运行有寄宿程序a(例如,小程序a)、寄宿程序b(例如,小程序b)、寄宿程序c(例如,小程序c)。小程序b和小程序c被切换至了后台,小程序b以及小程序c分别对应有第二界面组件以及第三界面组件。当前在前台运行的是小程序a,其中,小程序a对应有第一界面组件。用户通过按Home键将该小程序a切换至了后台,用户设备获取该小程序a的当前执行页面(例如,该小程序a被切换至后台时的页面)。进一步地,用户设备根据该当前执行页面以及该小程序a对应的第一界面组件绘制该小程序a对应的缩略图,例如,根据该第一界面组件的窗口的尺寸比例绘制同等尺寸的缩略图。进一步地,在该社交应用A中呈现该第一界面组件,并通过该第一界面组件的窗口呈现该小程序a当前执行页面的缩略图。如图3所示,在一些实施例中,所述第一界面组件、第二界面组件以及第三界面组件呈现在社交应用A的会话页面中,其中,在该会话页面中通过界面组件可呈现小程序的图标100、名称200以及当前执行页面的缩略图300。如图4所示,在另一些实施例中,所述第一界面组件、第二界面组件以及第三界面组件呈现在社交应用A的小程序管理中心页面,其中,在该小程序管理中心页面中通过界面组件可呈现小程序的图标100、名称200以及当前执行页面的缩略图300。当然,本领域技术人员应能理解,以上所述的图标100、名称200以及当前执行页面的缩略图300的呈现方式仅为举例,其他现有的或今后可能出现的呈现方式如能适用于本申请,也包含在本申请的保护范围内,并以引用的方式包含于此。例如,在一些实施例中,通过界面组件在宿主程序中呈现寄宿程序的当前执行页面的缩略图300、图标100;在一些实施例中,通过界面组件在宿主程序中呈现寄宿程序的当前执行页面的缩略图300、名称200。用户可通过界面组件的窗口呈现的缩略图预览当前被切换至后台的一个或多个寄宿程序,并通过点击该缩略图切换至对应的寄宿程序,支持多任务切换以及展示,提高了用户体验。
在一些实施例中,所述设备还包括一八模块(未示出),所述一八模块用于持久化存储所述缩略图;其中,所述一三模块用于:在所述宿主程序中呈现所述第一界面组件,并读取所述缩略图以及将所述缩略图显示于所述第一界面组件的窗口。在一些实施例中,为了避免因非寄宿程序自身的关闭导致不能展示该寄宿程序对应的缩略图,用户设备会持久化存储生成的缩略图。例如,在宿主程序关闭或意外退出后,再次打开该宿主程序时,该寄宿程序的执行状态(例如,该寄宿程序对应的缩略图)仍可以被读出、显示。例如,用户设备将生成的缩略图保存在硬盘中,使得在宿主程序或者该用户设备重启后可以继续读取显示该缩略图。
在一些实施例中,所述缩略图包括以下任一项:经缩小处理的所述当前执行页面;所述当前执行页面中的页面主题信息;所述当前执行页面所属的标签页信息。在一些实施例中,为了方便用户通过界面组件的窗口所呈现的缩略图了解当前被切换至后台的一个或多个寄宿程序的当前执行页面情况,所述缩略图可以包括多种情况。
例如,所述缩略图包括经缩小处理的所述当前执行页面。在一些实施例中,界面组件的窗口的尺寸小于寄宿程序的当前执行页面的尺寸,因此,为了通过缩略图在该窗口中呈现该当前执行页面的全部内容,该缩略图是经过缩小处理的该当前执行页面。
再例如,所述缩略图包括所述当前执行页面中的页面主题信息。在一些实施例中,所述缩略图能够呈现出当前执行页面的页面主题信息,也可以帮助用户了解当前被切换至后台的寄宿程序的当前执行页面情况。例如,购物小程序包括图书页面、服装页面、百货页面等页面主题信息,用户将该购物小程序切换至后台时,该购物小程序的当前执行页面为图书页面,则该购物小程序对应的界面组件的窗口呈现该图书页面的页面主题信息。
又例如,所述缩略图包括所述当前执行页面所属的标签页信息。在一些实施例中,所述缩略图能够呈现出当前执行页面所属的标签页信息,也可以帮助用户了解当前被切换至后台的寄宿程序的当前执行页面情况。例如,购物小程序包括首页、分类、购物车等标签页信息,用户将该购物小程序切换至后台时,该购物小程序的当前执行页面所属的标签页信息为购物车,则该购物小程序对应的界面组件的窗口呈现该购物车的标签页信息。
在一些实施例中,所述一一模块还用于:当所述第一寄宿程序被启用,生成所述第一寄宿程序对应的第一界面组件。在一些实施例中,所述第一寄宿程序被启用后即生成该第一寄宿程序对应的第一界面组件。以便在后续再次打开该第一寄宿程序时通过该第一界面组件进行切换。
在一些实施例中,如图6所示,所述生成所述第一寄宿程序对应的第一界面组件,所述设备还包括一四模块以及一五模块,一四模块,用于从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源;一五模块,用于在所述第一界面组件资源中渲染所述第一寄宿程序,以生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件包括所述第一寄宿程序的标识信息。
具体而言,一四模块,用于从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源,其中,所述界面组件资源包括界面标识信息。在一些实施例中,用户设备中预设有一个或多个界面组件资源;在另一些实施例中,寄宿程序管理中心中预设有一个或多个界面组件资源。通过在所述界面组件资源中渲染对应的寄宿程序来生成界面组件。例如,关于第一界面组件的生成,在Android***中对应的是Activity,用Activity做界面组件资源,在一些实施例中,Android***已经对Activity做了一些处理,比如资源创建、隔离、释放等,进一步地,基于第一寄宿程序的标识信息,在Manifest.xml里面定义界面组件,在代码中通过startActivity生成对应的第一界面组件;在iOS***中可采用UIView,在一些实施例中,需要宿主程序做UIView生命周期的管理,包括资源创建和释放,切换到后台等工作,进一步地,基于第一寄宿程序的标识信息生成对应的第一界面组件。在一些实施例中,根据所述一个或多个界面组件资源的渲染状态信息确定所述第一寄宿程序对应的第一界面组件资源,例如,从所述一个或多个界面组件资源中查找未被渲染的界面组件资源,并将该界面组件资源确定为第一界面组件资源。在一些实施例中,所述界面组件资源包括界面标识信息,所述界面标识信息包括但不限于关于界面组件资源的编号信息,例如,预设有五个界面组件资源,所述五个界面组件资源分别用编号1、2、3、4、5进行区分。在一些实施例中,按照该界面标识信息查找确定第一界面资源,例如,在所述五个界面组件资源查找到编号为1的界面组件资源为未被渲染的空闲状态,将该编号为1的界面组件资源作为第一界面组件资源。通过该界面标识信息也可实现第一界面组件资源与第一寄宿程序的标识信息间的映射对应,以基于该界面标识信息查找切换到该第一寄宿程序,或者,基于该第一寄宿程序的标识信息查找到对应的第一界面组件资源。
一五模块,用于在所述第一界面组件资源中渲染所述第一寄宿程序,以生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件包括所述第一寄宿程序的标识信息。在一些实施例中,为了通过该第一界面组件呈现运行对应的第一寄宿程序,需要在所述第一界面组件资源中渲染该第一寄宿程序,以实现保持该第一寄宿程序的状态信息(例如,该第一寄宿程序被切换至后台时的界面状态信息)以及通过切换该第一界面组件来运行该第一寄宿程序的目的。对于根据第一寄宿程序渲染第一界面组件资源包括但不限于:绑定该寄宿程序的数据,以实现通过生成的第一界面组件即可运行第一寄宿程序;渲染该第一寄宿程序的标识信息,以实现通过该第一界面组件即可识别确定该第一界面组件对应的第一寄宿程序,从而实现通过各界面组件间的切换实现各寄宿程序间的切换。在一些实施例中,所述第一界面组件中包括该第一寄宿程序的标识信息,以在该第一界面组件中呈现该标识信息,方便用户选择确认;在一些实施例中,所述第一寄宿程序的标识信息用于与该第一界面组件形成关联映射,以便在切换时根据该第一界面组件查找到对应的第一寄宿程序,从而在该第一界面组件中运行以及展示该第一寄宿程序。
在一些实施例中,所述一四模块用于:根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,当接收到满足生成界面组件的触发条件后,用户设备需要从预设的一个或多个界面组件资源中确定用于生成界面组件的界面组件资源。为了充分利用所述一个或多个界面组件资源,在一些实施例中,用户设备根据所述一个或多个界面组件资源的渲染状态信息确定所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述渲染状态信息包括该界面组件资源已经被渲染或者未被渲染。
在一些实施例中,所述一四模块用于:根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中查找当前待渲染的界面组件资源,将所述当前待渲染的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述界面组件资源包括界面标识信息(例如,1#界面组件资源、2#界面组件资源、3#界面组件资源、4#界面组件资源、5#界面组件资源),在一些实施例中,为了各个寄宿程序能够更好的运行,用户设备中最多可预设五个界面组件资源。当检测到满足生成界面组件的触发条件时,用户设备根据该五个界面组件资源的渲染状态信息查找当前未被渲染的界面组件资源,例如,用户设备按照界面标识信息的顺序依次查找该五个界面组件资源的渲染状态信息,其中,5#界面组件资源未被渲染,用户设备将该5#界面组件资源确定为第一界面组件资源,并在该5#界面组件资源中渲染对应的第一寄宿程序。根据所述一个或多个界面组件资源的渲染状态信息查找用于渲染第一寄宿程序的第一界面组件资源,能够找到当前空闲的界面组件资源,从而更充分的利用该一个或多个界面组件资源,有利于资源的有效利用。
在一些实施例中,所述一四模块还用于:若未查找到所述当前待渲染的界面组件资源,将寄宿程序管理中心最早记录的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。在一些实施例中,所述寄宿程序管理中心为所述宿主程序中的功能模块,在一些实施例中,所述功能模块为寄宿程序引擎的一部分(例如,小程序引擎中的一部分,所有打开小程序的行为都要经过该寄宿程序管理中心)。在一些实施例中,所述寄宿程序管理中心用于管理运行在所述宿主程序中的一个或多个寄宿程序,例如,所述寄宿程序管理中心用于支持所述一个或多个寄宿程序的启动、运行;所述寄宿程序管理中心用于记录生成的第一界面组件。在一些实施例中,所述界面组件用于呈现、运行对应的寄宿程序。为了能为第一寄宿程序及时有效的找到第一界面组件资源,当用户设备中预设的界面组件资源均已经被渲染时,用户设备根据寄宿程序管理中心记录的一个或多个界面组件的生成时间确定第一界面组件资源。当界面组件生成时,即在寄宿程序管理中心中记录该界面组件,因此,该寄宿程序管理中心中可保存该界面组件的生成时间。其中,每个界面组件均包括其对应的界面组件资源的界面标识信息,用户设备根据该界面标识信息可以识别预设的多个界面组件资源,从而确定当前可用的界面组件资源。在一些实施例中,为了均匀利用预设的一个或多个界面组件资源,用户设备根据每个界面组件资源生成界面组件的生成时间确定第一界面组件资源。例如,用户设备中预设了五个界面组件资源:1#界面组件资源、2#界面组件资源、3#界面组件资源、4#界面组件资源、5#界面组件资源,其中,1#界面组件资源生成界面组件的时间最早,用户设备将该1#界面组件资源确定为第一界面组件资源。
在一些实施例中,所述一四模块还用于:若未查找到所述当前待渲染的界面组件资源,将所述寄宿程序管理中心在前台执行时长最短的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。为了能为第一寄宿程序及时有效的找到第一界面组件资源,当用户设备中预设的界面组件资源均已经被渲染时,用户设备根据寄宿程序被切换至前台的时长信息确定第一界面组件资源。在一定程度上,寄宿程序被切换至前台的时长越长说明用户越喜欢用该寄宿程序,同理,寄宿程序被切换至前台的时长越短说明用户不是很喜欢用该寄宿程序。在一些实施例中,用户设备在寄宿程序管理中心中记录的一个或多个界面组件中查找被切换至前台的时长最短的界面组件所对应的界面组件资源,并将该界面组件资源确定为第一界面组件资源。通过将被切换至前台的时长最短的寄宿程序确定第一界面组件资源,能够为用户筛选掉不是很喜欢的寄宿呈现占用界面组件资源,从而能够更充分的利用好每个界面组件资源。
在一些实施例中,所述一一模块用于:若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,生成所述第一寄宿程序对应的第一界面组件,并获取所述第一寄宿程序的当前执行页面信息。在一些实施例中,所述生成第一界面组件的触发条件为将宿主程序中正在运行的第一寄宿程序切换至后台的操作。例如,当前正在运行的第一寄宿程序还没有对应的第一界面组件,在将该第一寄宿程序切换至后台时,生成该第一寄宿程序的第一界面组件,同时,获取该第一寄宿程序的当前执行页面信息,以生成该当前执行页面信息对应的缩略图,并在该第一界面组件中呈现该缩略图。
在一些实施例中,所述第一界面组件包括所述第一寄宿程序的标识信息,所述第一寄宿程序的标识信息与所述缩略图共同呈现于所述宿主程序中显示所述第一界面组件的窗口或所述第一界面组件的窗口所在的区域中。在一些实施例中,用户设备在生成第一界面组件时基于对应的第一寄宿程序的标识信息,将该标识信息传入该第一界面组件中。在一些实施例中,如图3所示,第一寄宿程序的标识信息100以及生成的缩略图300共同呈现于所述宿主程序中显示所述第一界面组件的区域;在另一些实施例中,如图4所示,第一寄宿程序的标识信息100以及生成的缩略图300共同呈现于所述宿主程序中显示所述第一界面组件的区域400(例如,图4中的虚线框部分为显示该第一界面组件的区域)。当然,本领域技术人员应能理解,图3以及图4中的呈现方式仅为举例,其他现有的或今后可能出现的呈现方式如能适用于本申请,也包含在本申请的保护范围内,并以引用的方式包含于此。
本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如前任一项所述的方法被执行。
本申请还提供了一种计算机程序产品,当所述计算机程序产品被计算机设备执行时,如前任一项所述的方法被执行。
本申请还提供了一种计算机设备,所述计算机设备包括:
一个或多个处理器;
存储器,用于存储一个或多个计算机程序;
当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前任一项所述的方法。
图7示出了可被用于实施本申请中所述的各个实施例的示例性***;
如图7所示在一些实施例中,***1000能够作为各所述实施例中的任意一个网络设备、第一用户设备或第二用户设备。在一些实施例中,***1000可包括具有指令的一个或多个计算机可读介质(例如,***存储器或NVM/存储设备1020)以及与该一个或多个计算机可读介质耦合并被配置为执行指令以实现模块从而执行本申请中所述的动作的一个或多个处理器(例如,(一个或多个)处理器1005)。
对于一个实施例,***控制模块1010可包括任意适当的接口控制器,以向(一个或多个)处理器1005中的至少一个和/或与***控制模块1010通信的任意适当的设备或组件提供任意适当的接口。
***控制模块1010可包括存储器控制器模块1030,以向***存储器1015提供接口。存储器控制器模块1030可以是硬件模块、软件模块和/或固件模块。
***存储器1015可被用于例如为***1000加载和存储数据和/或指令。对于一个实施例,***存储器1015可包括任意适当的易失性存储器,例如,适当的DRAM。在一些实施例中,***存储器1015可包括双倍数据速率类型四同步动态随机存取存储器(DDR4SDRAM)。
对于一个实施例,***控制模块1010可包括一个或多个输入/输出(I/O)控制器,以向NVM/存储设备1020及(一个或多个)通信接口1025提供接口。
例如,NVM/存储设备1020可被用于存储数据和/或指令。NVM/存储设备1020可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(Hard Disk,HDD)、一个或多个光盘(CD)驱动器和/或一个或多个数字通用光盘(DVD)驱动器)。
NVM/存储设备1020可包括在物理上作为***1000被安装在其上的设备的一部分的存储资源,或者其可被该设备访问而不必作为该设备的一部分。例如,NVM/存储设备1020可通过网络经由(一个或多个)通信接口1025进行访问。
(一个或多个)通信接口1025可为***1000提供接口以通过一个或多个网络和/或与任意其他适当的设备通信。***1000可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信。
对于一个实施例,(一个或多个)处理器1005中的至少一个可与***控制模块1010的一个或多个控制器(例如,存储器控制器模块1030)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器1005中的至少一个可与***控制模块1010的一个或多个控制器的逻辑封装在一起以形成***级封装(SiP)。对于一个实施例,(一个或多个)处理器1005中的至少一个可与***控制模块1010的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器1005中的至少一个可与***控制模块1010的一个或多个控制器的逻辑集成在同一模具上以形成片上***(SoC)。
在各个实施例中,***1000可以但不限于是:服务器、工作站、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)。在各个实施例中,***1000可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,***1000包括一个或多个摄像机、键盘、液晶显示器(LCD)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(ASIC)和扬声器。
需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(ASIC)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。
另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。本领域技术人员应能理解,计算机程序指令在计算机可读介质中的存在形式包括但不限于源文件、可执行文件、安装包文件等,相应地,计算机程序指令被计算机执行的方式包括但不限于:该计算机直接执行该指令,或者该计算机编译该指令后再执行对应的编译后程序,或者该计算机读取并执行该指令,或者该计算机读取并安装该指令后再执行对应的安装后程序。在此,计算机可读介质可以是可供计算机访问的任意可用的计算机可读存储介质或通信介质。
通信介质包括藉此包含例如计算机可读指令、数据结构、程序模块或其他数据的通信信号被从一个***传送到另一***的介质。通信介质可包括有导的传输介质(诸如电缆和线(例如,光纤、同轴等))和能传播能量波的无线(未有导的传输)介质,诸如声音、电磁、RF、微波和红外。计算机可读指令、数据结构、程序模块或其他数据可被体现为例如无线介质(诸如载波或诸如被体现为扩展频谱技术的一部分的类似机制)中的已调制数据信号。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。调制可以是模拟的、数字的或混合调制技术。
作为示例而非限制,计算机可读存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质。例如,计算机可读存储介质包括,但不限于,易失性存储器,诸如随机存储器(RAM,DRAM,SRAM);以及非易失性存储器,诸如闪存、各种只读存储器(ROM,PROM,EPROM,EEPROM)、磁性和铁磁/铁电存储器(MRAM,FeRAM);以及磁性和光学存储设备(硬盘、磁带、CD、DVD);或其它现在已知的介质或今后开发的能够存储供计算机***使用的计算机可读信息/数据。
在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。
对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

Claims (12)

1.一种在宿主程序中呈现寄宿程序的方法,其特征在于,所述方法包括:
若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面;
根据所述当前执行页面,以及所述第一寄宿程序对应的第一界面组件的窗口设置,生成所述第一寄宿程序的当前执行页面对应的缩略图,其中,所述缩略图与所述窗口设置相匹配;
在所述宿主程序中呈现所述第一界面组件,其中,所述缩略图显示于所述第一界面组件的窗口中;
其中,所述方法在所述若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面,之前还包括:
当所述第一寄宿程序被启用,生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件用于呈现运行所述第一寄宿程序及保存所述第一寄宿程序的运行状态信息。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
持久化存储所述缩略图;
其中,所述在所述宿主程序中呈现所述第一界面组件,其中,所述缩略图显示于所述第一界面组件的窗口中,包括:
在所述宿主程序中呈现所述第一界面组件,并读取所述缩略图以及将所述缩略图显示于所述第一界面组件的窗口。
3.根据权利要求1或2所述的方法,其特征在于,所述缩略图包括以下任一项:
经缩小处理的所述当前执行页面;
所述当前执行页面中的页面主题信息;
所述当前执行页面所属的标签页信息。
4.根据权利要求1所述的方法,其特征在于,所述生成所述第一寄宿程序对应的第一界面组件,包括:
从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源;
在所述第一界面组件资源中渲染所述第一寄宿程序,以生成所述第一寄宿程序对应的第一界面组件,其中,所述第一界面组件包括所述第一寄宿程序的标识信息。
5.根据权利要求4所述的方法,其特征在于,所述从预设的一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源,包括:
根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源。
6.根据权利要求5所述的方法,其特征在于,所述根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中确定所述第一寄宿程序对应的第一界面组件资源,包括:
根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中查找当前待渲染的界面组件资源,将所述当前待渲染的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。
7.根据权利要求6所述的方法,其特征在于,所述根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中查找当前待渲染的界面组件资源,将所述当前待渲染的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源,还包括:
若未查找到所述当前待渲染的界面组件资源,将寄宿程序管理中心最早记录的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。
8.根据权利要求6所述的方法,其特征在于,所述根据每个界面组件资源的渲染状态信息从所述一个或多个界面组件资源中查找当前待渲染的界面组件资源,将所述当前待渲染的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源,还包括:
若未查找到所述当前待渲染的界面组件资源,将寄宿程序管理中心在前台执行时长最短的界面组件的界面组件资源确定为所述第一寄宿程序对应的第一界面组件资源。
9.根据权利要求1或2所述的方法,其特征在于,所述若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,获取所述第一寄宿程序的当前执行页面,包括:
若检测到用于将宿主程序中正在运行的第一寄宿程序切换至后台的操作,生成所述第一寄宿程序对应的第一界面组件,并获取所述第一寄宿程序的当前执行页面信息。
10.根据权利要求1或2所述的方法,其特征在于,所述第一界面组件包括所述第一寄宿程序的标识信息,所述第一寄宿程序的标识信息与所述缩略图共同呈现于所述宿主程序中显示所述第一界面组件的窗口或所述第一界面组件的窗口所在的区域中。
11. 一种在宿主程序中呈现寄宿程序的设备,其特征在于,所述设备包括:
处理器;以及
被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行如权利要求1至10中任一项方法。
12.一种存储指令的计算机可读介质,所述指令在被执行时使得***进行如权利要求1至10中任一项方法。
CN201910265412.0A 2019-04-03 2019-04-03 一种在宿主程序中呈现寄宿程序的方法与设备 Active CN110321189B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910265412.0A CN110321189B (zh) 2019-04-03 2019-04-03 一种在宿主程序中呈现寄宿程序的方法与设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910265412.0A CN110321189B (zh) 2019-04-03 2019-04-03 一种在宿主程序中呈现寄宿程序的方法与设备

Publications (2)

Publication Number Publication Date
CN110321189A CN110321189A (zh) 2019-10-11
CN110321189B true CN110321189B (zh) 2022-10-11

Family

ID=68112854

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910265412.0A Active CN110321189B (zh) 2019-04-03 2019-04-03 一种在宿主程序中呈现寄宿程序的方法与设备

Country Status (1)

Country Link
CN (1) CN110321189B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111367581B (zh) * 2020-02-28 2024-02-09 上海盛付通电子支付服务有限公司 一种用于提供寄宿程序的方法与设备
CN113377504A (zh) * 2020-03-10 2021-09-10 成都龙兵科技有限公司 一种小程序的后台切换管理***
CN116302142A (zh) * 2021-12-20 2023-06-23 北京有竹居网络技术有限公司 生命周期事件管理方法、装置、存储介质以及电子设备
CN114666390B (zh) * 2022-05-19 2022-08-05 云账户技术(天津)有限公司 应用程序的页面监测方法、装置、电子设备及存储介质

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227423A (zh) * 2016-07-15 2016-12-14 百度在线网络技术(北京)有限公司 用于展示页面的方法和装置

Family Cites Families (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2926234B1 (en) * 2012-11-20 2019-08-28 Jolla OY Managing applications in multitasking environment
US10282088B2 (en) * 2012-12-06 2019-05-07 Samsung Electronics Co., Ltd. Configuration of application execution spaces and sub-spaces for sharing data on a mobile tough screen device
CN104777967B (zh) * 2015-05-07 2018-03-30 北京金山安全软件有限公司 页面信息显示方法及装置
CN106802803B (zh) * 2017-01-06 2020-06-05 腾讯科技(深圳)有限公司 应用数据处理的方法和装置
CN107145385A (zh) * 2017-04-25 2017-09-08 努比亚技术有限公司 一种多任务界面显示方法、移动终端和计算机存储介质
CN108664304A (zh) * 2018-05-03 2018-10-16 广州腾讯科技有限公司 应用程序处理方法、装置、存储介质和计算机设备
CN108846100A (zh) * 2018-06-19 2018-11-20 上海掌门科技有限公司 快速搜索寄宿应用的方法及设备
CN108932147A (zh) * 2018-06-27 2018-12-04 上海掌门科技有限公司 用于切换寄宿应用的方法和设备

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106227423A (zh) * 2016-07-15 2016-12-14 百度在线网络技术(北京)有限公司 用于展示页面的方法和装置

Also Published As

Publication number Publication date
CN110321189A (zh) 2019-10-11

Similar Documents

Publication Publication Date Title
CN110321189B (zh) 一种在宿主程序中呈现寄宿程序的方法与设备
CN110333918B (zh) 一种管理寄宿程序的方法与设备
CN110290557B (zh) 一种加载应用内页面标签的方法与设备
CN110827061B (zh) 一种用于在小说阅读过程中提供呈现信息的方法与设备
CN110765395B (zh) 一种用于提供小说信息的方法与设备
CN110333955B (zh) 一种管理应用中消息通知的方法与设备
CN110519250B (zh) 一种提供信息流的方法与设备
CN110781397A (zh) 一种用于提供小说信息的方法与设备
CN111506232B (zh) 一种用于在阅读应用中控制菜单显示的方法与设备
CN111427650A (zh) 一种用于提供呈现信息的方法与设备
CN109254781B (zh) 一种用于在用户设备上安装应用的方法与设备
CN114666652A (zh) 一种用于播放视频的方法、设备、介质及程序产品
CN110780955A (zh) 一种用于处理表情消息的方法与设备
CN111666195B (zh) 一种用于提供视频信息或者图像信息的方法与设备
CN111177062B (zh) 一种用于提供阅读呈现信息的方法与设备
CN110321205B (zh) 一种在宿主程序中管理寄宿程序的方法与设备
CN113157162B (zh) 一种用于撤回会话消息的方法、设备、介质及程序产品
CN110765390A (zh) 一种用于在社交空间发布分享信息的方法与设备
CN111079039B (zh) 一种用于收藏书籍的方法与设备
US11366613B2 (en) Method and apparatus for writing data
CN110460642B (zh) 一种管理阅读模式的方法与设备
CN110995813B (zh) 一种检测页面性能的方法与设备
CN110781416A (zh) 一种提供风景信息的方法与设备
CN111078654A (zh) 一种分享信息的方法与设备
CN110333914A (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