CN114281555A - 应用状态同步方法、装置、电子设备和存储介质 - Google Patents

应用状态同步方法、装置、电子设备和存储介质 Download PDF

Info

Publication number
CN114281555A
CN114281555A CN202111314631.7A CN202111314631A CN114281555A CN 114281555 A CN114281555 A CN 114281555A CN 202111314631 A CN202111314631 A CN 202111314631A CN 114281555 A CN114281555 A CN 114281555A
Authority
CN
China
Prior art keywords
application
operating system
target
manager
controlling
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
Application number
CN202111314631.7A
Other languages
English (en)
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.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing Jingling Information System 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 Beijing Jingling Information System Technology Co Ltd filed Critical Beijing Jingling Information System Technology Co Ltd
Priority to CN202111314631.7A priority Critical patent/CN114281555A/zh
Publication of CN114281555A publication Critical patent/CN114281555A/zh
Priority to PCT/CN2022/106591 priority patent/WO2023077868A1/zh
Priority to US18/435,958 priority patent/US20240176678A1/en
Pending legal-status Critical Current

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/46Multiprogramming arrangements
    • G06F9/52Program synchronisation; Mutual exclusion, e.g. by means of semaphores
    • 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/30Arrangements for executing machine instructions, e.g. instruction decode
    • 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/445Program loading or initiating
    • G06F9/44505Configuring for program initiating, e.g. using registry, configuration files
    • 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
    • G06F9/452Remote windowing, e.g. X-Window System, desktop virtualisation
    • 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
    • G06F9/485Task life-cycle, e.g. stopping, restarting, resuming execution
    • 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/542Event management; Broadcasting; Multicasting; Notifications
    • 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)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Multimedia (AREA)
  • Stored Programmes (AREA)
  • Telephonic Communication Services (AREA)

Abstract

本发明提供一种应用状态同步方法、装置、电子设备和存储介质,应用于电子设备,该电子设备运行第一操作系统和以容器化运行在第一操作系统中的第二操作系统,其中方法包括:响应于用户对目标应用的目标操作,控制第一操作系统向第二操作系统发送目标操作请求;目标应用为第一操作系统包括的第二操作系统的应用程序;在第二操作系统内执行目标操作,控制第二操作系统向第一操作系统发送目标操作成功消息;在第一操作系统内更新目标应用的当前状态。本发明提供的应用状态同步方法、装置、电子设备和存储介质,实现了第一操作系统中的目标应用的当前状态与第二操作系统中目标应用的当前状态的同步,方便用户操作。

Description

应用状态同步方法、装置、电子设备和存储介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种应用状态同步方法、装置、电子设备和存储介质。
背景技术
随着计算机技术的发展,为了扩展Linux操作系统下的应用程序(Aplication,简称APP),丰富应用环境,Linux操作系统上可支持运行安卓(Android)操作系统的应用程序。
现有技术中,通常是采用Anbox等方案实现Linux操作系统支持Android应用程序的操作。
发明内容
针对现有技术存在的问题,本发明实施例提供一种应用状态同步方法、装置、电子设备和存储介质。
本发明提供一种应用状态同步方法,应用于电子设备,所述电子设备运行第一操作系统和以容器化运行在所述第一操作系统中的第二操作系统,所述方法包括:
建立所述第一操作系统与所述第二操作系统的连接;
响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
根据本发明提供的一种应用状态同步方法,所述第一操作系统包括第一应用管理器,所述第二操作系统包括第二应用管理器;
所述建立第一操作系统与第二操作系统的连接包括:
建立所述第一应用管理器与所述第二应用管理器的连接;
在所述目标操作包括启动操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送启动成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态。
根据本发明提供的一种应用状态同步方法,在所述启动操作为用户在所述第一操作系统的桌面上触发的所述目标应用的启动操作时,所述控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求包括:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求;
在所述启动操作为用户在所述第一操作系统的当前应用上触发的所述目标应用的启动操作时,所述控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求包括:
控制所述当前应用通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求。
根据本发明提供的一种应用状态同步方法,所述第一操作系统还包括窗口管理器;
在所述目标操作包括后台切换操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送后台切换成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为后台冻结状态;
在所述控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求之前,所述方法还包括:
控制所述第一操作系统的桌面向所述窗口管理器发送所述后台切换操作请求;
控制所述窗口管理器将所述目标应用的窗口切换至后台。
根据本发明提供的一种应用状态同步方法,所述第一操作系统还包括任务管理器;
在所述目标操作包括前台切换操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送前台切换成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态;
所述在控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求之前,所述方法还包括:
控制所述任务管理器向所述窗口管理器发送所述前台切换操作请求;
控制所述窗口管理器将所述目标应用的窗口切换至前台。
根据本发明提供的一种应用状态同步方法,在所述目标操作包括关闭操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送关闭操作请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送关闭成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器删除所述目标应用的代理对象。
根据本发明提供的一种应用状态同步方法,所述在所述第二操作系统内执行所述目标操作之后,所述方法还包括:
控制所述第二应用管理器根据所述目标操作更新所述目标应用的当前状态。
根据本发明提供的一种应用状态同步方法,所述代理对象还包括所述目标应用的名称信息;其中,所述目标应用的名称信息与所述当前状态一一对应。
本发明还提供一种应用状态同步装置,包括:
建立单元,用于建立所述第一操作系统与所述第二操作系统的连接;
第一控制单元,用于响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
第二控制单元,用于在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
更新单元,用于在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
本发明还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述应用状态同步方法的步骤。
本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述应用状态同步方法的步骤。
本发明还提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时实现如上述任一种所述应用状态同步方法的步骤。
本发明提供的一种应用状态同步方法、装置、电子设备和存储介质,通过响应于用户对第一操作系统包括的第二操作系统的目标应用的目标操作,控制第一操作系统向第二操作系统发送目标操作请求,在第二操作系统内执行目标操作,第一操作系统在接收到第二操作系统发送的目标操作成功消息时,更新目标应用的当前状态,实现了第一操作系统中的目标应用的当前状态与第二操作系统中目标应用的当前状态的同步,方便用户操作。
附图说明
为了更清楚地说明本发明或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明提供的应用状态同步方法的流程示意图之一;
图2是本发明提供的应用的生命周期状态示意图;
图3是本发明提供的应用状态同步方法的流程示意图之二;
图4是本发明提供的应用状态同步方法的流程示意图之三;
图5是本发明提供的应用状态同步方法的流程示意图之四;
图6是本发明提供的应用状态同步方法的流程示意图之五;
图7是本发明提供的应用状态同步方法的流程示意图之六;
图8是本发明提供的应用状态同步装置的结构示意图;
图9是本发明提供的电子设备的实体结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合本发明中的附图,对本发明中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
首先,对本发明实施例涉及的应用场景进行介绍。
本发明实施例的方法可以应用于电子设备,在一实施例中该电子设备中设置有至少两个系统,例如第一操作系统和第二操作系统,第二操作系统以容器化的方式运行在第一操作系统中。如本领域技术人员所知,容器化即以Linux内核特性为基础实现的Linux容器(Linux Container,LXC),其充分利用了控制组(Control group)和命名空间(Namespace)特性,隔离进程和资源,使得第二操作系统高效、轻量的实现。该电子设备可以为手机、平板电脑等移动装置。
在本发明的实施例中,尽管没有明确描述的,第一操作系统和第二操作系统可以是相同的,例如第一操作系统和第二操作系统均为Linux或均为Android;第一操作系统和第二操作系统也可以是不同的,例如第一操作系统和第二操作系统中一者为Linux,一者为Android。在第一操作系统为Linux,第二操作系统为Android时,在Linux系统侧的桌面上同时显示Android应用图标和Linux应用图标,用户可以点击Android应用图标对Android应用进行相关操作,而且在Linux系统侧的任务管理器中显示有所有已运行的Android应用和Linux应用的应用截图,用户点击任务管理器中的某个应用截图,即可实现将该应用截图对应的应用拉升到前台运行;用户也可以从任务管理器中通过对应用截图的操作来关闭对应的应用,使得应用能够正常退出。
在本发明的实施例中,应用程序APP泛指在操作系统中具有一个或多个功能的应用,例如即时通讯软件、购物软件、音乐播放器、视频播放器等。
现有技术中,通常是采用Anbox等方案实现Linux操作系统支持Android应用程序的操作。但现有技术中,并没有涉及到Linux操作系统中的Android应用程序与安卓操作系统中的该Android应用程序的状态同步,这样就会导致Linux操作系统中的Android应用程序的当前状态与安卓操作系统中的该Android应用程序的当前状态不同,从而给用户操作带来不便。
下面结合图1-图7描述本发明的应用状态同步方法。
图1是本发明提供的应用状态同步方法的流程示意图之一,如图1所示,本实施例提供的方法,应用于电子设备,电子设备中运行有第一操作系统和以容器化方式运行在第一操作系统中的第二操作系统,该方法包括:
步骤110、建立所述第一操作系统与所述第二操作系统的连接。
具体地,为了实现第一操作系统和第二操作系统的数据交互,第一操作系统与第二操作系统需要建立通信连接。
步骤120、响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求。
其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序。
具体地,用户触发目标应用的目标操作,第一操作系统在检测到用户对目标应用的目标操作时,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一操作系统向第二操作系统发送目标操作请求,该目标操作请求用于请求执行目标应用的目标操作。
步骤130、在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息。
具体地,第二操作系统接收到第一操作系统发送的目标操作请求时,解析该目标操作请求,确定需要执行目标应用的目标操作,进而控制目标应用执行对应的目标操作,在执行完目标操作之后,第二操作系统再向第一操作系统返回目标操作成功消息。
步骤140、在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象。
其中,所述代理对象包括所述目标应用的当前状态;进一步的,所述代理对象还包括所述目标应用的名称信息;所述目标应用的名称信息与所述当前状态一一对应;也就是说,第二操作系统的每个应用在第一操作系统端均对应一个该应用的代理对象,每个应用的代理对象包括该应用的名称信息和对应的当前状态,便于根据应用的名称信息查找应用对应的当前状态。
具体地,第一操作系统在接收到第二操作系统发送的目标操作成功消息时,确定第一操作系统已经执行了目标应用的目标操作,此时,在创建的目标应用的代理对象中将目标应用的当前状态设置为与目标操作对应的状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
需要说明的是,图2是本发明提供的应用的生命周期状态示意图,如图2所示,应用的生命周期状态主要包括四个状态,分别为已启动状态(Launched状态)、前台运行状态(Running状态)、冻结状态(Stopped状态)和关闭状态(Destroyed状态)。关于Launched状态,用户启动应用时,该应用处于Launched状态,Launched状态可切换到Running状态;关于Running状态,Launched状态应该立即切换到Running状态,Running状态代表应用返回到了前台可视状态;关于Stopped状态,应用在被切换到后台后,不可获取焦点,状态变为Stopped状态,意味着该应用被剥夺中央处理器(Central Processing Unit,CPU)时间片并处于冻结状态,当用户通过任务管理器点击该应用的应用截图时,该应用被拉升到前台,此时可以获取焦点,由Stopped状态变为Running状态;当用户在桌面上点击应用图标启动应用时,该应用的状态切换到Launched状态;关于Destroyed状态,当操作系统或者用户主动关闭应用时,应用的状态切换为Destroyed状态。本发明主要是对目标应用的当前状态进行更新。
本发明提供一种应用状态同步方法,通过响应于用户对第一操作系统包括的第二操作系统的目标应用的目标操作,控制第一操作系统向第二操作系统发送目标操作请求,在第二操作系统内执行目标操作,第一操作系统在接收到第二操作系统发送的目标操作成功消息时,更新目标应用的当前状态,实现了第一操作系统中的目标应用的当前状态与第二操作系统中目标应用的当前状态的同步,方便用户操作。
在一实施例中,所述第一操作系统包括第一应用管理器,所述第二操作系统包括第二应用管理器,建立第一操作系统与第二操作系统的连接具体为:建立所述第一应用管理器与所述第二应用管理器的连接。
可选的,在所述目标操作包括启动操作时,控制第一操作系统向第二操作系统发送目标操作请求可通过以下方式实现:
控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求。
具体地,在所述启动操作为用户在所述第一操作系统的桌面上触发的所述目标应用的启动操作时,控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求。
在所述启动操作为用户在所述第一操作系统的当前应用上触发的所述目标应用的启动操作时,控制所述当前应用通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求。
可选的,控制第二操作系统向第一操作系统发送目标操作成功消息可通过以下方式实现:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送启动成功消息。
可选的,在第一操作系统内根据所述目标操作成功消息更新目标应用的代理对象可通过以下方式实现:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态。
具体地,图3是本发明提供的应用状态同步方法的流程示意图之二,如图3所示,第一操作系统包括第一应用管理器和第一操作系统的桌面,第二操作系统包括第二应用管理器和目标应用,电子设备内部可以通过第一应用管理器和第二应用管理器之间的套接字(socket)连接,实现第一操作系统和第二操作系统之间的交互,图3为基于第一操作系统的桌面启动目标应用的场景,具体应用状态同步流程为:步骤301、建立第一应用管理器和第二应用管理器之间的通信连接;步骤302、用户在第一操作系统的桌面上触发第二操作系统的目标应用的启动操作;步骤303、第一操作系统的桌面在检测到用户对目标应用的启动操作时,向第一应用管理器发送启动操作请求,该启动操作请求用于请求启动目标应用;步骤304、第一应用管理器在接收到该启动操作请求时,从启动操作请求中解析得到目标应用的标识信息,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一应用管理器向第二操作系统的第二应用管理器发送启动操作请求;步骤305、第二应用管理器再将接收到的启动操作请求转发给目标应用;步骤306、目标应用在接收到启动操作请求时,执行启动操作,即将目标应用置于前台显示;步骤307、目标应用向第二应用管理器返回启动成功消息;步骤308、第二应用管理器再将启动成功消息转发给第一操作系统的第一应用管理器;步骤309、第一应用管理器在接收到启动成功消息时,确定第一操作系统已经将目标应用启动,此时在创建的目标应用的代理对象中将目标应用的当前状态设置为前台运行状态。这样,第二操作系统中目标应用的当前状态和第一操作系统中该目标应用的当前状态相同,都是前台运行状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
具体地,图4是本发明提供的应用状态同步方法的流程示意图之三,如图4所示,第一操作系统包括第一应用管理器和当前应用,第二操作系统包括第二应用管理器和目标应用,图4为基于第一操作系统的当前应用启动目标应用的场景,具体应用状态同步流程为:步骤401、建立第一应用管理器和第二应用管理器之间的通信连接;步骤402、用户在第一操作系统上运行的第一操作系统的当前应用中触发第二操作系统的目标应用的启动操作;步骤403、第一操作系统的当前应用在检测到用户对目标应用的启动操作时,向第一应用管理器发送启动操作请求,该启动操作请求用于请求启动目标应用;步骤404、第一应用管理器在接收到该启动操作请求时,从启动操作请求中解析得到目标应用的标识信息,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一应用管理器向第二操作系统的第二应用管理器发送启动操作请求;步骤405、第二应用管理器再将接收到的启动操作请求转发给目标应用;步骤406、目标应用在接收到启动操作请求时,执行启动操作,即将目标应用置于前台显示;步骤407、目标应用向第二应用管理器返回启动成功消息;步骤408、第二应用管理器再将启动成功消息转发给第一操作系统的第一应用管理器;步骤409、第一应用管理器在接收到启动成功消息时,确定第一操作系统已经将目标应用启动,此时在创建的目标应用的代理对象中将目标应用的当前状态设置为前台运行状态。这样,第二操作系统中目标应用的当前状态和第一操作系统中该目标应用的当前状态相同,都是前台运行状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
在一实施例中,所述第一操作系统还包括窗口管理器;在所述目标操作包括后台切换操作时,控制所述第一操作系统向所述第二操作系统发送目标操作请求可通过以下方式实现:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求。
可选的,控制所述第二操作系统向所述第一操作系统发送目标操作成功消息可通过以下方式实现:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送后台切换成功消息。
可选的,在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象可通过以下方式实现:
控制所述第一应用管理器将所述目标应用的当前状态设置为后台冻结状态。
进一步的,在所述控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求之前,还需要执行以下步骤:
控制所述第一操作系统的桌面向所述窗口管理器发送所述后台切换操作请求;控制所述窗口管理器将所述目标应用的窗口切换至后台。
具体地,图5是本发明提供的应用状态同步方法的流程示意图之四,如图5所示,第一操作系统包括第一应用管理器、第一操作系统的桌面和窗口管理器,第二操作系统包括第二应用管理器和目标应用,图5为基于在第一操作系统中将已启动的目标应用从前台切换至后台的场景,具体应用状态同步流程为:501、用户在第一操作系统的桌面上触发第二操作系统的目标应用的后台切换操作(例如,用户点击目标应用窗口中的最小化图标,或者启动了其他应用导致目标应用需要切换到后台);步骤502、第一操作系统的桌面在检测到用户对目标应用的后台切换操作时,分别向窗口管理器和第一应用管理器发送后台切换操作请求,该后台切换操作请求用于请求将目标应用从前台切换至后台;步骤503、窗口管理器在接收到后台切换操作请求时,将目标应用的窗口最小化,置于后台;步骤504、窗口管理器向第一应用管理器发送后台切换成功消息;步骤505、第一应用管理器此时从后台切换操作请求中解析得到目标应用的标识信息,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一应用管理器向第二操作系统的第二应用管理器发送后台切换操作请求;步骤506、第二应用管理器再将接收到的后台切换操作请求转发给目标应用;步骤507、目标应用在接收到后台切换操作请求时,最小化目标应用的窗口,使得目标应用位于后台;步骤508、目标应用向第二应用管理器返回后台切换成功消息;步骤509、第二应用管理器再将后台切换成功消息转发给第一操作系统的第一应用管理器;步骤510、第一应用管理器在接收到后台切换成功消息时,确定第一操作系统已经将目标应用从前台切换至后台,此时在创建的目标应用的代理对象中将目标应用的当前状态设置为后台冻结状态,目标应用处于后台冻结状态时,通知第一操作系统的内核该目标应用已处于冻结状态,第一操作系统的内核在接收到该通知消息时,禁止该目标应用获取焦点,也就意味着目标应用被剥夺CPU时间片。这样,第二操作系统中目标应用的当前状态和第一操作系统中该目标应用的当前状态相同,都是后台冻结状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
在一实施例中,所述第一操作系统还包括任务管理器,在所述目标操作包括前台切换操作时,控制所述第一操作系统向所述第二操作系统发送目标操作请求可通过以下方式实现:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求。
可选的,控制所述第二操作系统向所述第一操作系统发送目标操作成功消息可通过以下方式实现:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送前台切换成功消息。
可选的,在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象可通过以下方式实现:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态。
进一步的,在控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求之前,还需要执行以下操作:
控制所述任务管理器向所述窗口管理器发送所述前台切换操作请求;控制所述窗口管理器将所述目标应用的窗口切换至前台。
具体地,图6是本发明提供的应用状态同步方法的流程示意图之五,如图6所示,第一操作系统包括第一应用管理器、任务管理器和窗口管理器,第二操作系统包括第二应用管理器和目标应用,图6为基于在第一操作系统中将已启动的目标应用从后台切换至前台的场景,具体应用状态同步流程为:步骤601、用户在第一操作系统的任务管理器中触发第二操作系统的目标应用的前台切换操作(例如,用户点击任务管理器中目标应用的图标缩略图);步骤602、任务管理器在检测到用户对目标应用的前台切换操作时,向窗口管理器发送前台切换操作请求;步骤603、窗口管理器在接收到前台切换操作请求时,将目标应用的窗口置于前台;步骤604、窗口管理器向任务管理器发送前台切换成功消息;步骤605、任务管理器向第一应用管理器发送前台切换操作请求,该前台切换操作请求用于请求将目标应用从后台切换至前台;步骤606、第一应用管理器在接收到该前台切换操作请求时,从前台切换操作请求中解析得到目标应用的标识信息,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一应用管理器向第二操作系统的第二应用管理器发送前台切换操作请求;步骤607、第二应用管理器再将接收到的前台切换操作请求转发给目标应用;步骤608、目标应用在接收到前台切换操作请求时,将目标应用的窗口显示在桌面,使得目标应用位于前台;步骤609、目标应用向第二应用管理器返回前台切换成功消息;步骤610、第二应用管理器再将前台切换成功消息转发给第一操作系统的第一应用管理器;步骤611、第一应用管理器在接收到前台切换成功消息时,确定第一操作系统已经将目标应用从后台切换至前台,此时在创建的目标应用的代理对象中将目标应用的当前状态设置为前台运行状态,目标应用处于前台运行状态时,通知第一操作系统的内核该目标应用已处于前台运行状态,第一操作系统的内核在接收到该通知消息时,允许该目标应用获取焦点,能够占用CPU时间片正常运行。这样,第二操作系统中目标应用的当前状态和第一操作系统中该目标应用的当前状态相同,都是前台运行状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
在一实施例中,在所述目标操作包括关闭操作时,控制所述第一操作系统向所述第二操作系统发送目标操作请求可通过以下方式实现:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送关闭操作请求。
可选的,控制所述第二操作系统向所述第一操作系统发送目标操作成功消息可通过以下方式实现:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送关闭成功消息。
可选的,在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象可通过以下方式实现:
控制所述第一应用管理器删除所述目标应用的代理对象。
具体地,图7是本发明提供的应用状态同步方法的流程示意图之六,如图7所示,第一操作系统包括第一应用管理器和任务管理器,第二操作系统包括第二应用管理器和目标应用;图7为在第一操作系统的任务管理器中将目标应用关闭的场景,具体应用状态同步流程为:步骤701、用户在任务管理器中触发第二操作系统的目标应用的关闭操作;步骤702、任务管理器在检测到用户对目标应用的关闭操作时,向第一应用管理器发送关闭操作请求,该关闭操作请求用于请求关闭目标应用;步骤703、第一应用管理器在接收到该关闭操作请求时,从关闭操作请求中解析得到目标应用的标识信息,根据目标应用的标识信息确定目标应用是否为第二操作系统的应用程序,在确定目标应用为第二操作系统的应用程序时,第一应用管理器向第二操作系统的第二应用管理器发送关闭操作请求;步骤704、第二应用管理器再将接收到的关闭操作请求转发给目标应用;步骤705、目标应用在接收到关闭操作请求时,执行关闭操作;步骤706、目标应用向第二应用管理器返回关闭成功消息;步骤707、第二应用管理器再将关闭成功消息转发给第一操作系统的第一应用管理器;步骤708、第一应用管理器在接收到关闭成功消息时,确定第一操作系统已经将目标应用关闭,此时将创建的目标应用的代理对象删除。这样,第二操作系统中目标应用的当前状态和第一操作系统中该目标应用的当前状态相同,都是已关闭状态,从而实现了第一操作系统和第二操作系统中应用状态的同步。
需要说明的是,用户还可以在目标应用的前台窗口上点击关闭图标来实现目标应用的关闭操作,此时第一操作系统的桌面在检测到目标应用的关闭操作时,向第一应用管理器发送关闭操作请求,对此不做限定。
在一实施例中,在所述第二操作系统内执行目标操作之后,该方法还包括以下步骤:
控制所述第二应用管理器根据所述目标操作更新所述目标应用的当前状态。
具体地,第二应用管理器在接收到目标应用发送的操作成功消息时,可以根据操作成功消息确定目标应用的当前状态,进而将目标应用的当前状态进行记录。在实际应用中,第二应用管理器将目标应用的名称信息与当前状态对应存储,这样,便于查看每个目标应用的当前状态。
下面对本发明提供的应用状态同步装置进行描述,下文描述的应用状态同步装置与上文描述的应用状态同步方法可相互对应参照。
图8是本发明提供的应用状态同步装置的结构示意图,如图8所示,应用状态同步装置包括建立单元810、第一控制单元820、第二控制单元830和更新单元840;其中:
建立单元810,用于建立所述第一操作系统与所述第二操作系统的连接;
第一控制单元820,用于响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
第二控制单元830,用于在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
更新单元840,用于在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
本发明提供的应用状态同步装置,通过响应于用户对第一操作系统包括的第二操作系统的目标应用的目标操作,控制第一操作系统向第二操作系统发送目标操作请求,在第二操作系统内执行目标操作,第一操作系统在接收到第二操作系统发送的目标操作成功消息时,更新目标应用的当前状态,实现了第一操作系统中的目标应用的当前状态与第二操作系统中目标应用的当前状态的同步,方便用户操作。
基于上述任一实施例,所述第一操作系统包括第一应用管理器,所述第二操作系统包括第二应用管理器;所述建立单元810具体用于:
建立所述第一应用管理器与所述第二应用管理器的连接;
在所述目标操作包括启动操作时,所述第一控制单元820具体用于:
控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求;
第二控制单元830具体用于:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送启动成功消息;
更新单元840具体用于:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态。
基于上述任一实施例,在所述启动操作为用户在所述第一操作系统的桌面上触发的所述目标应用的启动操作时,所述第一控制单元820还具体用于:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求;
在所述启动操作为用户在所述第一操作系统的当前应用上触发的所述目标应用的启动操作时,所述第一控制单元820还具体用于:
控制所述当前应用通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求。
基于上述任一实施例,所述第一操作系统还包括窗口管理器;在所述目标操作包括后台切换操作时,所述第一控制单元820还具体用于:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求;
所述第二控制单元830还具体用于:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送后台切换成功消息;
所述更新单元840还具体用于:
控制所述第一应用管理器将所述目标应用的当前状态设置为后台冻结状态;
所述装置还包括第三控制单元和第四控制单元;
第三控制单元,用于控制所述第一操作系统的桌面向所述窗口管理器发送所述后台切换操作请求;
第四控制单元,用于控制所述窗口管理器将所述目标应用的窗口切换至后台。
基于上述任一实施例,所述第一操作系统还包括任务管理器;在所述目标操作包括前台切换操作时,所述第一控制单元820还具体用于:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求;
所述第二控制单元830还具体用于:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送前台切换成功消息;
所述更新单元840还具体用于:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态;
所述装置还包括第五控制单元和第六控制单元;
第五控制单元,用于控制所述任务管理器向所述窗口管理器发送所述前台切换操作请求;
第六控制单元,用于控制所述窗口管理器将所述目标应用的窗口切换至前台。
基于上述任一实施例,在所述目标操作包括关闭操作时,所述第一控制单元820还具体用于:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送关闭操作请求;
所述第二控制单元830还具体用于:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送关闭成功消息;
所述更新单元840还具体用于:
控制所述第一应用管理器删除所述目标应用的代理对象。
基于上述任一实施例,所述装置还包括第七控制单元;
第七控制单元,用于控制所述第二应用管理器根据所述目标操作更新所述目标应用的当前状态。
基于上述任一实施例,所述代理对象还包括所述目标应用的名称信息;其中,所述目标应用的名称信息与所述当前状态一一对应。
图9是本发明提供的一种电子设备的实体结构示意图,如图9所示,该电子设备可以包括:处理器(processor)910、通信接口(Communications Interface)920、存储器(memory)930和通信总线940,其中,处理器910,通信接口920,存储器930通过通信总线940完成相互间的通信。处理器910可以调用存储器930中的逻辑指令,以执行应用状态同步方法,该方法包括:建立所述第一操作系统与所述第二操作系统的连接;
响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
此外,上述的存储器930中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:U盘、移动硬盘、只读存储器(ROM,Read-Only Memory)、随机存取存储器(RAM,Random Access Memory)、磁碟或者光盘等各种可以存储程序代码的介质。
另一方面,本发明还提供一种计算机程序产品,所述计算机程序产品包括计算机程序,计算机程序可存储在非暂态计算机可读存储介质上,所述计算机程序被处理器执行时,计算机能够执行上述各方法所提供的应用状态同步方法,该方法包括:建立所述第一操作系统与所述第二操作系统的连接;
响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
又一方面,本发明还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各方法提供的应用状态同步方法,该方法包括:建立所述第一操作系统与所述第二操作系统的连接;
响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。
最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

Claims (12)

1.一种应用状态同步方法,应用于电子设备,所述电子设备运行第一操作系统和以容器化运行在所述第一操作系统中的第二操作系统,其特征在于,所述方法包括:
建立所述第一操作系统与所述第二操作系统的连接;
响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
2.根据权利要求1所述的应用状态同步方法,其特征在于,所述第一操作系统包括第一应用管理器,所述第二操作系统包括第二应用管理器;
所述建立第一操作系统与第二操作系统的连接包括:
建立所述第一应用管理器与所述第二应用管理器的连接;
在所述目标操作包括启动操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送启动成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态。
3.根据权利要求2所述的应用状态同步方法,其特征在于,在所述启动操作为用户在所述第一操作系统的桌面上触发的所述目标应用的启动操作时,所述控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求包括:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求;
在所述启动操作为用户在所述第一操作系统的当前应用上触发的所述目标应用的启动操作时,所述控制所述第一应用管理器通过所述第二应用管理器向所述目标应用发送启动操作请求包括:
控制所述当前应用通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送所述启动操作请求。
4.根据权利要求2所述的应用状态同步方法,其特征在于,所述第一操作系统还包括窗口管理器;
在所述目标操作包括后台切换操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送后台切换成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为后台冻结状态;
在所述控制所述第一操作系统的桌面通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送后台切换请求之前,所述方法还包括:
控制所述第一操作系统的桌面向所述窗口管理器发送所述后台切换操作请求;
控制所述窗口管理器将所述目标应用的窗口切换至后台。
5.根据权利要求4所述的应用状态同步方法,其特征在于,所述第一操作系统还包括任务管理器;
在所述目标操作包括前台切换操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送前台切换成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器将所述目标应用的当前状态设置为前台运行状态;
所述在控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送前台切换请求之前,所述方法还包括:
控制所述任务管理器向所述窗口管理器发送所述前台切换操作请求;
控制所述窗口管理器将所述目标应用的窗口切换至前台。
6.根据权利要求5所述的应用状态同步方法,其特征在于,在所述目标操作包括关闭操作时,所述控制所述第一操作系统向所述第二操作系统发送目标操作请求包括:
控制所述任务管理器通过所述第一应用管理器和所述第二应用管理器向所述目标应用发送关闭操作请求;
所述控制所述第二操作系统向所述第一操作系统发送目标操作成功消息包括:
控制所述目标应用通过所述第二应用管理器向所述第一应用管理器发送关闭成功消息;
所述在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象包括:
控制所述第一应用管理器删除所述目标应用的代理对象。
7.根据权利要求2所述的应用状态同步方法,其特征在于,所述在所述第二操作系统内执行所述目标操作之后,所述方法还包括:
控制所述第二应用管理器根据所述目标操作更新所述目标应用的当前状态。
8.根据权利要求1-7任一项所述的应用状态同步方法,其特征在于,所述代理对象还包括所述目标应用的名称信息;其中,所述目标应用的名称信息与所述当前状态一一对应。
9.一种应用状态同步装置,其特征在于,包括:
建立单元,用于建立所述第一操作系统与所述第二操作系统的连接;
第一控制单元,用于响应于用户对目标应用的目标操作,控制所述第一操作系统向所述第二操作系统发送目标操作请求;其中,所述目标应用为所述第一操作系统包括的所述第二操作系统的应用程序;
第二控制单元,用于在所述第二操作系统内执行所述目标操作,并控制所述第二操作系统向所述第一操作系统发送目标操作成功消息;
更新单元,用于在所述第一操作系统内根据所述目标操作成功消息更新所述目标应用的代理对象;其中,所述代理对象包括所述目标应用的当前状态。
10.一种电子设备,包括存储器、处理器及存储在所述存储器上并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述程序时实现如权利要求1至8任一项所述应用状态同步方法的步骤。
11.一种非暂态计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述应用状态同步方法的步骤。
12.一种计算机程序产品,包括计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至8任一项所述应用状态同步方法的步骤。
CN202111314631.7A 2021-11-08 2021-11-08 应用状态同步方法、装置、电子设备和存储介质 Pending CN114281555A (zh)

Priority Applications (3)

Application Number Priority Date Filing Date Title
CN202111314631.7A CN114281555A (zh) 2021-11-08 2021-11-08 应用状态同步方法、装置、电子设备和存储介质
PCT/CN2022/106591 WO2023077868A1 (zh) 2021-11-08 2022-07-19 应用状态同步方法、装置、电子设备和存储介质
US18/435,958 US20240176678A1 (en) 2021-11-08 2024-02-07 Method, apparatus, electronic device and storage medium for application state synchronization

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202111314631.7A CN114281555A (zh) 2021-11-08 2021-11-08 应用状态同步方法、装置、电子设备和存储介质

Publications (1)

Publication Number Publication Date
CN114281555A true CN114281555A (zh) 2022-04-05

Family

ID=80868806

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202111314631.7A Pending CN114281555A (zh) 2021-11-08 2021-11-08 应用状态同步方法、装置、电子设备和存储介质

Country Status (3)

Country Link
US (1) US20240176678A1 (zh)
CN (1) CN114281555A (zh)
WO (1) WO2023077868A1 (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023077868A1 (zh) * 2021-11-08 2023-05-11 北京字节跳动网络技术有限公司 应用状态同步方法、装置、电子设备和存储介质
CN116319947A (zh) * 2023-05-18 2023-06-23 云账户技术(天津)有限公司 一种app前后台切换中状态信息的获取方法及装置

Family Cites Families (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8023934B2 (en) * 2008-03-28 2011-09-20 Ianywhere Solutions, Inc. Synchronizing communications and data between mobile devices and servers
CN110058905B (zh) * 2018-01-18 2022-10-04 斑马智行网络(香港)有限公司 事件处理及操作系统管理方法、装置、设备以及存储介质
CN112015475B (zh) * 2019-05-30 2021-11-12 杭州海康威视数字技术股份有限公司 一种应用程序启动方法及装置
CN111273948A (zh) * 2019-06-24 2020-06-12 深圳市鸿合创新信息技术有限责任公司 一种跨系统启动程序的方法及电子设备
CN112286667A (zh) * 2020-11-18 2021-01-29 安徽鸿程光电有限公司 应用程序控制方法、装置、电子设备及介质
CN114281555A (zh) * 2021-11-08 2022-04-05 北京鲸鲮信息系统技术有限公司 应用状态同步方法、装置、电子设备和存储介质

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2023077868A1 (zh) * 2021-11-08 2023-05-11 北京字节跳动网络技术有限公司 应用状态同步方法、装置、电子设备和存储介质
CN116319947A (zh) * 2023-05-18 2023-06-23 云账户技术(天津)有限公司 一种app前后台切换中状态信息的获取方法及装置
CN116319947B (zh) * 2023-05-18 2023-07-21 云账户技术(天津)有限公司 一种app前后台切换中状态信息的获取方法及装置

Also Published As

Publication number Publication date
WO2023077868A1 (zh) 2023-05-11
US20240176678A1 (en) 2024-05-30

Similar Documents

Publication Publication Date Title
EP2919496B1 (en) Method for realizing downloading of mobile terminal application program and mobile terminal
US20240176678A1 (en) Method, apparatus, electronic device and storage medium for application state synchronization
CN108023808B (zh) 应用程序中的消息分发方法及装置
WO2020207454A1 (zh) 信息推送方法和装置
US20210365287A1 (en) Application processing method and apparatus for jumping between child applications and storage medium
CN100419684C (zh) 为软件中的程序模块创建快捷方式及启动方法
CN109976667A (zh) 一种镜像管理方法、装置及系统
CN110913015A (zh) 一种云手机app的分布式快捷安装方法、系统及介质
CN106027631B (zh) 一种数据传输方法及装置
US20210271491A1 (en) Application processing method, device, electronic device and storage medium
CN113407383B (zh) 主备系统切换方法、装置、服务器及主备系统
CN112926068B (zh) 权限管理方法、管理服务器、业务服务器及可读存储介质
CN110704760B (zh) 数据处理方法和装置
CN113805962A (zh) 应用页面的显示方法、装置以及电子设备
CN109857537B (zh) 后台服务启动方法、装置、介质及电子设备
CN108255547B (zh) 一种应用程序控制方法及装置
WO2023077858A1 (zh) 应用栈管理方法、装置、电子设备和存储介质
CN111615171B (zh) 无线局域网的接入方法和装置
CN114610446B (zh) 一种自动注入探针的方法、装置及系统
CN113805858B (zh) 持续部署脚本语言开发的软件的方法和装置
CN115225966A (zh) 应用启动方法、装置、终端设备和存储介质
CN105094896B (zh) 虚拟化平台上客户端启动方法、设备和系统
CN111324386B (zh) 分身应用程序的启动方法、装置、电子设备及存储介质
CN114265714A (zh) 一种基于云手机的驱动控制方法及装置、存储介质
CN114035893A (zh) 虚拟机管理方法以及系统

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20220408

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

Address before: 2005, floor 2, No. 39, West Street, Haidian District, Beijing 100082

Applicant before: Beijing jingling Information System Technology Co.,Ltd.

SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination