CN115167875A - 基于Web移动操作系统的Android应用方法及系统 - Google Patents
基于Web移动操作系统的Android应用方法及系统 Download PDFInfo
- Publication number
- CN115167875A CN115167875A CN202210646530.8A CN202210646530A CN115167875A CN 115167875 A CN115167875 A CN 115167875A CN 202210646530 A CN202210646530 A CN 202210646530A CN 115167875 A CN115167875 A CN 115167875A
- Authority
- CN
- China
- Prior art keywords
- application
- web
- service
- android
- management
- 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
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/61—Installation
- G06F8/62—Uninstallation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F8/00—Arrangements for software engineering
- G06F8/60—Software deployment
- G06F8/65—Updates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/44—Arrangements for executing specific programs
- G06F9/445—Program loading or initiating
- G06F9/44505—Configuring for program initiating, e.g. using registry, configuration files
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements 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/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Landscapes
- Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Stored Programmes (AREA)
Abstract
本发明提供了一种基于Web移动操作系统的Android应用方法及系统,涉及移动操作系统技术领域,包括:在WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理;并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动以及系统显示切换在内的相关功能。本发明能够提升Web系统应用多样性,从而满足不同用户多样化使用场景需求。
Description
技术领域
本发明涉及移动操作系统技术领域,具体地,涉及在Web移动操作系统中Android应用兼容运行方法的实现,尤其涉及一种基于Web移动操作系统的Android应用方法及系统。
背景技术
银河锐华移动操作系统是一款基于Linux+HTML5技术路线的Web移动操作系统,支持多种国产低功耗芯片,能够兼容安卓驱动,为满足国产移动操作系统自主化、个性化、实时性和高安全性需求的前提下,基于智能手持、平板、可穿戴等移动终端设备提供国产化移动操作系统解决方案。
近年来,随着移动硬件性能不断提升,智能手机与智能平板已从原先单一系统模式向多系统支持转变,以满足用户在不同应用场景使用需求。如今智能移动设备多系统应用支持主要分为两种方式,其一是通过在硬件设备不同分区部署多个操作系统镜像,通过定制系统启动Loader程序选择对应系统镜像后,进入所需运行操作系统,但该技术无法满足系统热切换需求,每次等待时间较长,影响用户体验;其二是通过容器技术通过Linux内核创建多个虚拟容器,每个容器独立运行各自系统镜像,但各容器之间数据相互独立,无法在两个系统间进行关联业务逻辑操作,且需要消耗较高的系统资源。当前移动终端非Android系统兼容运行Android应用,主要通过多系统镜像引导或容器技术并行运行多个系统实现。
公开号为CN107102853B的发明专利,公开了一种定制化移动操作系统兼容Android应用的方法,包括以下步骤:(1)提炼定制化移动操作系统原生应用和Android应用共用的底层,形成统一的硬件适配层;(2)在定制化移动操作系统的基础类库中,增加支持Android应用运行的基础库;(3)在定制化移动操作系统运行环境的基础上利用Dalvik虚拟机技术增加Android应用运行环境,使定制化移动操作系统包含两套应用运行环境;(4)在定制化移动操作系统的应用框架层中添加Android应用框架,同时对Android基础组件进行适配,使两套环境使用一个窗口管理器。
发明内容
针对现有技术中的缺陷,本发明提供一种基于Web移动操作系统的Android应用方法及系统。
根据本发明提供的一种基于Web移动操作系统的Android应用方法及系统,所述方案如下:
第一方面,提供了一种基于Web移动操作系统的Android应用方法,所述方法包括:在WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理;
并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动以及系统显示切换在内的相关功能。
优选地,所述建立代理访问服务包括:作为后台服务进程优先启动,初始化Web通信服务,并构建应用代理服务与图形管理服务对象;同时Android系统启动时进行远程访问服务初始化,存储应用管理、包管理、窗口管理在内的相关服务对象引用,并向代理访问服务注册创建自身远程访问服务代理对象。
优选地,所述代理访问服务还包括:
当Web应用进行Android系统功能调用时,首先通过Js/C++兼容层加载Web通信客户端动态库,并通过Binder调用实现向代理访问服务远程功能调用与回调函数注册;
代理访问接收到相关功能调用请求后,获取远程访问服务代理对象来通知Android系统进行应用安装、应用启动、应用卸载在内的相关业务操作;
业务操作完成后代理访问服务依据Android系统返回的业务执行结果,通知Web系统客户端进行相关回调函数回调,并调用图形管理服务进行图层显示切换。
优选地,所述代理访问服务包括应用管理代理和图形显示控制;
Web系统通过代理访问服务的应用管理模块向Android应用管理服务发起应用安装请求,并负责对应Android应用的启动与关闭;图形显示控制模块负责在监听到Android应用启动与退出状态后,进行系统切换显示处理。
优选地,所述应用管理代理具体包括:
应用安装步骤:当Web系统进行Android应用安装时,首先通过代理访问服务向Android发起应用安装请求,当包管理服务完成应用包解析与安装则将应用包包名返回给Web系统,Web系统根据返回的包名再向Android端申请获取应用名称与应用图标位图数据;当获取到应用名称与图标图片数据后,更新Web模板应用包内应用配置清单文件与应用图标,从而生成与Android系统应用名称一致的Web应用包,转交Web系统安装并在桌面生成应用启动图标;
应用启动步骤:完成Android应用包安装后,会在Web系统端生成一个虚拟应用,该虚拟应用主要负责向Android系统发送启动应用请求并注册应用堆栈监听回调函数进行显示切换处理;Android端根据接收到的应用包名,通过Intent进行离屏应用启动,应用启动成功后窗口管理器应用堆栈获得当前应用顶层显示应用页面class名,通知更新代理服务应用堆栈列表操作,并回调Web应用堆栈监听回调函数;
应用退出步骤:当用户在Android端执行应用退出操作时,窗口管理器中原先顶层应用页面移除或被替代,代理服务接收到应用堆栈列表更新信息后回调Web虚拟应用注册堆栈监听函数,当Web虚拟应用检测到当前应用堆栈顶端应用名与自身不匹配时关闭当前虚拟应用Web页面,回退至主界面并通知代理图形服务进行屏幕显示切换。
优选地,所述图形显示控制具体包括:通过使用统一图形显示服务管理进行显示设备驱动控制,两个系统运行空间通过客户端访问方式进行可绘制图层创建处理,并将每个创建的图层stacklayer传递图形显示控制模块保存,以进行图层管理切换处理。
优选地,所述应用启动步骤还包括:Web应用内应用堆栈监听回调函数触发后,通知代理服务图形管理服务将Android应用页面图形缓存区绘制到屏幕上;
当应用再次进入时,通过遍历代理服务中应用堆栈列表查询是否已有运行应用页面存在,若已存在则获取其页面class名称进行代理应用服务堆栈列表更新,并进行屏幕显示切换。
第二方面,提供了一种基于Web移动操作系统的Android应用系统,所述系统包括:
在WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理;
并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动以及系统显示切换在内的相关功能。
优选地,所述建立代理访问服务包括:作为后台服务进程优先启动,初始化Web通信服务,并构建应用代理服务与图形管理服务对象;同时Android系统启动时进行远程访问服务初始化,存储应用管理、包管理、窗口管理在内的相关服务对象引用,并向代理访问服务注册创建自身远程访问服务代理对象;
所述代理访问服务还包括:
当Web应用进行Android系统功能调用时,首先通过Js/C++兼容层加载Web通信客户端动态库,并通过Binder调用实现向代理访问服务远程功能调用与回调函数注册;
代理访问接收到相关功能调用请求后,获取远程访问服务代理对象来通知Android系统进行应用安装、应用启动、应用卸载在内的相关业务操作;
业务操作完成后代理访问服务依据Android系统返回的业务执行结果,通知Web系统客户端进行相关回调函数回调,并调用图形管理服务进行图层显示切换。
优选地,所述代理访问服务包括应用管理代理模块和图形显示控制模块;
Web系统通过代理访问服务的应用管理模块向Android应用管理服务发起应用安装请求,并负责对应Android应用的启动与关闭;图形显示控制模块负责在监听到Android应用启动与退出状态后,进行系统切换显示处理;
所述应用管理代理模块具体包括:
应用安装模块:当Web系统进行Android应用安装时,首先通过代理访问服务向Android发起应用安装请求,当包管理服务完成应用包解析与安装则将应用包包名返回给Web系统,Web系统根据返回的包名再向Android端申请获取应用名称与应用图标位图数据;当获取到应用名称与图标图片数据后,更新Web模板应用包内应用配置清单文件与应用图标,从而生成与Android系统应用名称一致的Web应用包,转交Web系统安装并在桌面生成应用启动图标;
应用启动模块:完成Android应用包安装后,会在Web系统端生成一个虚拟应用,该虚拟应用主要负责向Android系统发送启动应用请求并注册应用堆栈监听回调函数进行显示切换处理;Android端根据接收到的应用包名,通过Intent进行离屏应用启动,应用启动成功后窗口管理器应用堆栈获得当前应用顶层显示应用页面class名,通知更新代理服务应用堆栈列表操作,并回调Web应用堆栈监听回调函数;
Web应用内应用堆栈监听回调函数触发后,通知代理服务图形管理服务将Android应用页面图形缓存区绘制到屏幕上;当应用再次进入时,通过遍历代理服务中应用堆栈列表查询是否已有运行应用页面存在,若已存在则获取其页面class名称进行代理应用服务堆栈列表更新,并进行屏幕显示切换;
应用退出模块:当用户在Android端执行应用退出操作时,窗口管理器中原先顶层应用页面移除或被替代,代理服务接收到应用堆栈列表更新信息后回调Web虚拟应用注册堆栈监听函数,当Web虚拟应用检测到当前应用堆栈顶端应用名与自身不匹配时关闭当前虚拟应用Web页面,回退至主界面并通知代理图形服务进行屏幕显示切换;
所述图形显示控制模块具体包括:通过使用统一图形显示服务管理进行显示设备驱动控制,两个系统运行空间通过客户端访问方式进行可绘制图层创建处理,并将每个创建的图层stacklayer传递图形显示控制模块保存,以进行图层管理切换处理。
与现有技术相比,本发明具有如下的有益效果:
本发明实现了Web系统下Android应用安装与兼容运行功能,并通过定制化图形管理服务实现Web应用与Android应用热切换功能,能够丰富Web移动操作系统应用多样性,提升Web移动系统使用便利程度。
附图说明
通过阅读参照以下附图对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
图1为技术方案总体框图;
图2为代理访问服务实现方法;
图3为应用安装流程图;
图4为应用启动流程图;
图5为应用退出流程图;
图6为显示控制模块原理示意图。
具体实施方式
下面结合具体实施例对本发明进行详细说明。以下实施例将有助于本领域的技术人员进一步理解本发明,但不以任何形式限制本发明。应当指出的是,对本领域的普通技术人员来说,在不脱离本发明构思的前提下,还可以做出若干变化和改进。这些都属于本发明的保护范围。
本发明实施例提供了一种基于Web移动操作系统的Android应用方法,将WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理。并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动、系统显示切换等功能。参照图1所示,本发明中的代理访问服务主要由应用管理模块、图形显示控制模块组成。Web系统通过代理访问服务的应用管理模块向Android应用管理服务发起应用安装请求,并负责对应Android应用的启动与关闭;图形显示控制模块负责在监听到Android应用启动与退出状态后,进行系统切换显示处理。
(1)代理访问服务:
本申请通过建立代理访问后台服务作为Web系统与Android系统间远程功能调用功能。如图2所示,代理访问服务作为后台服务进程优先启动,并初始化Web通信服务,并构建应用代理服务与图形管理服务对象;同时Android系统启动时进行远程访问服务初始化,存储应用管理、包管理、窗口管理等服务对象引用,并向代理访问服务注册创建自身远程访问服务代理对象。当Web应用进行Android系统功能调用时,首先通过Js/C++兼容层加载Web通信客户端动态库,并通过Binder调用实现向代理访问服务远程功能调用与回调函数注册;代理访问接收到相关功能调用请求后,获取远程访问服务代理对象来通知Android系统进行应用安装、应用启动、应用卸载等业务操作;业务操作完成后代理访问服务依据Android系统返回的业务执行结果,通知Web系统客户端进行相关回调函数回调,并调用图形管理服务进行图层显示切换。
(2)应用管理模块:
通常Web系统下应用安装包信息在生成时就已固定,在本申请方法中,应用管理代理模块通过构建一种虚拟应用机制,利用创建统一模板Web应用与动态信息更新机制来实现Android各类应用在Web系统上的安装与管理。
a)应用安装
当Web系统进行Android应用安装时,首先通过代理访问服务向Android发起应用安装请求,当包管理服务完成应用包解析与安装则将应用包包名返回给Web系统,Web系统根据返回的包名再向Android端申请获取应用名称与应用图标位图数据。当获取到应用名称与图标图片数据后,更新Web模板应用包内应用配置清单文件与应用图标,从而生成与Android系统应用名称一致的Web应用包,转交Web系统安装并在桌面生成应用启动图标。应用安装主要流程图如图3所示。
b)应用启动
本申请中完成Android应用包安装后,会在Web系统端生成一个虚拟应用,该应用主要负责向Android系统发送启动应用请求并注册应用堆栈监听回调函数进行显示切换处理。Android端根据接收到的应用包名,通过Intent进行离屏应用启动,应用启动成功后窗口管理器应用堆栈获得当前应用顶层显示应用页面class名,通知更新代理服务应用堆栈列表操作,并回调Web应用堆栈监听回调函数。Web应用内应用堆栈监听回调函数触发后,通知代理服务图形管理服务将Android应用页面图形缓存区绘制到屏幕上。当应用再次进入时,通过遍历代理服务中应用堆栈列表查询是否已有运行应用页面存在,若已存在则获取其页面class名称进行代理应用服务堆栈列表更新,并进行屏幕显示切换。应用启动流程图如图4所示。
c)应用退出
当用户在Android端执行应用退出操作时,窗口管理器中原先顶层应用页面移除或被替代,代理服务接收到应用堆栈列表更新信息后回调Web虚拟应用注册堆栈监听函数,当Web虚拟应用检测到当前应用堆栈顶端应用名与自身不匹配时关闭当前虚拟应用Web页面,回退至主界面并通知代理图形服务进行屏幕显示切换。应用启动流程图如图5所示。
(3)图形显示控制模块:
如图6所示,本申请通过使用统一图形显示服务管理进行显示设备驱动控制,两个系统运行空间通过客户端访问方式进行可绘制图层创建处理,并将每个创建的图层stacklayer传递图形显示控制模块保存,以进行图层管理切换处理。默认系统启动时Web系统通过向图形显示服务申请一块可绘制Surface图层,并将此Surface的layStack值传递给代理服务图形显示控制模块进行注册;当Web页面启动时,将显示的各个网页进行排版堆叠后交由Web图形合成器生成最终图像的buffer拷贝进Web系统创建的Suface图层中。同样,Web系统启动Android应用时,以相同创建Surface图层存储Android应用窗口显示buffer,并将该图层layerstack传递给图形显示控制模块存储。当代理服务接收到Android应用启动与退出事件时,根据所需启动的页面读取其对应Surface的laystack值与屏幕显示设备操作对象一起传递给图形显示服务,通知其进行显示切换与屏幕送显处理,从而实现Web应用与Android应用热切换功能。
接下来,对本发明进行更为具体的说明。
实施举例:
(一)应用安装与启动
Web应用通过JS/C++兼容层调用代理访问服务应用管理接口,实现对Android应用包的安装、启动与事件监听处理功能。应用管理接口伪代码如下所示:
(1)应用安装接口
接口说明:申请安装Android应用安装包。
参数说明:参数packagePath为Android应用包路径,返回为安装应用包包名。
std::string application_agent_insallAPK(std::string packagePath)
(2)应用卸载接口
接口说明:卸载一个Web端已安装的Android应用。
参数说明:参数packageName为Web上已安装Android应用包名,返回值为卸载执行结果。
status_t application_agent_uninsall(std::string packageName);
(3)获取应用图标接口
接口说明:从Web端获取Android应用图标。
参数说明:参数packageName为Android应用包名,icon为获取图标点阵位图容器指针,返回值为获取是否成功结果。
status_t application_agent_getIcon(std::string packageName,std::vector<uint8_t>*icon);
(4)应用启动接口
接口说明:从Web端启动已安装的Android应用
参数说明:参数packageName为Web上已安装Android应用包名,返回值为卸载执行结果。
status_t application_agent_launchApp(std::string packageName);
(5)应用状态监听接口
接口说明:注册Android端运行应用列表监听回调函数
参数说明:参数listener_callback为注册的应用列表监听回调函数,其中event为回调事件类型,packageName为Web上已安装Android应用包名,activityClassName为当前回调上报事件所属应用页面函数名,list为应用堆栈列表数据指针,返回值为创建监听器的ID号。
int32_t application_agent_addEventLinstener(
void*(listener_callback)(int event,std::string packageName,
std::string activityClassName,void*list)));
(二)显示控制
系统通过调用图形显示控制模块实现创建图层数据注册与切换控制操作,显示控制接口伪代码如下所示:
(1)图层注册接口
接口说明:向图形控制管理器注册创建的Surface图层信息
参数说明:参数content为创建Surface图层句柄,layerStack为所属图层对应layerStack值,返回值为执行结果。
status_t display_agent_setSurface(int32_t content,int32_tlayerStack);
(2)图层切换接口
接口说明:切换当前屏幕显示Surface图层
参数说明:参数content为创建Surface图层句柄,返回值为执行结果。
status_t display_agent_showSurface(int32_t content);
(3)获取当前显示图层
接口说明:获取当前屏幕显示Surface句柄
参数说明:参数content为所需获取Surface句柄指针,返回值为执行结果。
status_t display_agent_getCurrentSurface(int32_t*content);
本发明实施例提供了一种基于Web移动操作系统的Android应用方法及系统,通过改造Web系统应用包安装管理与显示框架流程,使其支持Android应用包安装功能,并将其图标显示在Web系统主界面供点击启动,为Web OS平台实现Android应用包安装与启动功能提供有力支撑;实现在Web移动操作系统环境下,Android系统应用兼容运行与热切换功能,提升Web系统应用多样性,从而满足不同用户多样化使用场景需求。
本领域技术人员知道,除了以纯计算机可读程序代码方式实现本发明提供的系统及其各个装置、模块、单元以外,完全可以通过将方法步骤进行逻辑编程来使得本发明提供的系统及其各个装置、模块、单元以逻辑门、开关、专用集成电路、可编程逻辑控制器以及嵌入式微控制器等的形式来实现相同功能。所以,本发明提供的系统及其各项装置、模块、单元可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置、模块、单元也可以视为硬件部件内的结构;也可以将用于实现各种功能的装置、模块、单元视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
以上对本发明的具体实施例进行了描述。需要理解的是,本发明并不局限于上述特定实施方式,本领域技术人员可以在权利要求的范围内做出各种变化或修改,这并不影响本发明的实质内容。在不冲突的情况下,本申请的实施例和实施例中的特征可以任意相互组合。
Claims (10)
1.一种基于Web移动操作系统的Android应用方法,其特征在于,包括:在WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理;
并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动以及系统显示切换在内的相关功能。
2.根据权利要求1所述的基于Web移动操作系统的Android应用方法,其特征在于,所述建立代理访问服务包括:作为后台服务进程优先启动,初始化Web通信服务,并构建应用代理服务与图形管理服务对象;同时Android系统启动时进行远程访问服务初始化,存储应用管理、包管理、窗口管理在内的相关服务对象引用,并向代理访问服务注册创建自身远程访问服务代理对象。
3.根据权利要求2所述的基于Web移动操作系统的Android应用方法,其特征在于,所述代理访问服务还包括:
当Web应用进行Android系统功能调用时,首先通过Js/C++兼容层加载Web通信客户端动态库,并通过Binder调用实现向代理访问服务远程功能调用与回调函数注册;
代理访问接收到相关功能调用请求后,获取远程访问服务代理对象来通知Android系统进行应用安装、应用启动、应用卸载在内的相关业务操作;
业务操作完成后代理访问服务依据Android系统返回的业务执行结果,通知Web系统客户端进行相关回调函数回调,并调用图形管理服务进行图层显示切换。
4.根据权利要求1所述的基于Web移动操作系统的Android应用方法,其特征在于,所述代理访问服务包括应用管理代理和图形显示控制;
Web系统通过代理访问服务的应用管理模块向Android应用管理服务发起应用安装请求,并负责对应Android应用的启动与关闭;图形显示控制模块负责在监听到Android应用启动与退出状态后,进行系统切换显示处理。
5.根据权利要求4所述的基于Web移动操作系统的Android应用方法,其特征在于,所述应用管理代理具体包括:
应用安装步骤:当Web系统进行Android应用安装时,首先通过代理访问服务向Android发起应用安装请求,当包管理服务完成应用包解析与安装则将应用包包名返回给Web系统,Web系统根据返回的包名再向Android端申请获取应用名称与应用图标位图数据;当获取到应用名称与图标图片数据后,更新Web模板应用包内应用配置清单文件与应用图标,从而生成与Android系统应用名称一致的Web应用包,转交Web系统安装并在桌面生成应用启动图标;
应用启动步骤:完成Android应用包安装后,在Web系统端生成一个虚拟应用,该虚拟应用主要负责向Android系统发送启动应用请求并注册应用堆栈监听回调函数进行显示切换处理;Android端根据接收到的应用包名,通过Intent进行离屏应用启动,应用启动成功后窗口管理器应用堆栈获得当前应用顶层显示应用页面class名,通知更新代理服务应用堆栈列表操作,并回调Web应用堆栈监听回调函数;
应用退出步骤:当用户在Android端执行应用退出操作时,窗口管理器中原先顶层应用页面移除或被替代,代理服务接收到应用堆栈列表更新信息后回调Web虚拟应用注册堆栈监听函数,当Web虚拟应用检测到当前应用堆栈顶端应用名与自身不匹配时关闭当前虚拟应用Web页面,回退至主界面并通知代理图形服务进行屏幕显示切换。
6.根据权利要求4所述的基于Web移动操作系统的Android应用方法,其特征在于,所述图形显示控制具体包括:通过使用统一图形显示服务管理进行显示设备驱动控制,两个系统运行空间通过客户端访问方式进行可绘制图层创建处理,并将每个创建的图层stacklayer传递图形显示控制模块保存,以进行图层管理切换处理。
7.根据权利要求5所述的基于Web移动操作系统的Android应用方法,其特征在于,所述应用启动步骤还包括:Web应用内应用堆栈监听回调函数触发后,通知代理服务图形管理服务将Android应用页面图形缓存区绘制到屏幕上;
当应用再次进入时,通过遍历代理服务中应用堆栈列表查询是否已有运行应用页面存在,若已存在则获取其页面class名称进行代理应用服务堆栈列表更新,并进行屏幕显示切换。
8.一种基于Web移动操作系统的Android应用系统,其特征在于,包括:在WEB移动操作系统与Android系统同时运行情况下,将Web移动操作系统图形显示框架桥接至图形显示服务,通过图形显示服务统一进行图形缓存区的分配与读写管理;
并通过建立代理访问服务实现Web系统与Android系统间应用安装卸载、应用启动以及系统显示切换在内的相关功能。
9.根据权利要求8所述的基于Web移动操作系统的Android应用系统,其特征在于,所述建立代理访问服务包括:作为后台服务进程优先启动,初始化Web通信服务,并构建应用代理服务与图形管理服务对象;同时Android系统启动时进行远程访问服务初始化,存储应用管理、包管理、窗口管理在内的相关服务对象引用,并向代理访问服务注册创建自身远程访问服务代理对象;
所述代理访问服务还包括:
当Web应用进行Android系统功能调用时,首先通过Js/C++兼容层加载Web通信客户端动态库,并通过Binder调用实现向代理访问服务远程功能调用与回调函数注册;
代理访问接收到相关功能调用请求后,获取远程访问服务代理对象来通知Android系统进行应用安装、应用启动、应用卸载在内的相关业务操作;
业务操作完成后代理访问服务依据Android系统返回的业务执行结果,通知Web系统客户端进行相关回调函数回调,并调用图形管理服务进行图层显示切换。
10.根据权利要求8所述的基于Web移动操作系统的Android应用系统,其特征在于,所述代理访问服务包括应用管理代理模块和图形显示控制模块;
Web系统通过代理访问服务的应用管理模块向Android应用管理服务发起应用安装请求,并负责对应Android应用的启动与关闭;图形显示控制模块负责在监听到Android应用启动与退出状态后,进行系统切换显示处理;
所述应用管理代理模块具体包括:
应用安装模块:当Web系统进行Android应用安装时,首先通过代理访问服务向Android发起应用安装请求,当包管理服务完成应用包解析与安装则将应用包包名返回给Web系统,Web系统根据返回的包名再向Android端申请获取应用名称与应用图标位图数据;当获取到应用名称与图标图片数据后,更新Web模板应用包内应用配置清单文件与应用图标,从而生成与Android系统应用名称一致的Web应用包,转交Web系统安装并在桌面生成应用启动图标;
应用启动模块:完成Android应用包安装后,在Web系统端生成一个虚拟应用,该虚拟应用主要负责向Android系统发送启动应用请求并注册应用堆栈监听回调函数进行显示切换处理;Android端根据接收到的应用包名,通过Intent进行离屏应用启动,应用启动成功后窗口管理器应用堆栈获得当前应用顶层显示应用页面class名,通知更新代理服务应用堆栈列表操作,并回调Web应用堆栈监听回调函数;
Web应用内应用堆栈监听回调函数触发后,通知代理服务图形管理服务将Android应用页面图形缓存区绘制到屏幕上;当应用再次进入时,通过遍历代理服务中应用堆栈列表查询是否已有运行应用页面存在,若已存在则获取其页面class名称进行代理应用服务堆栈列表更新,并进行屏幕显示切换;
应用退出模块:当用户在Android端执行应用退出操作时,窗口管理器中原先顶层应用页面移除或被替代,代理服务接收到应用堆栈列表更新信息后回调Web虚拟应用注册堆栈监听函数,当Web虚拟应用检测到当前应用堆栈顶端应用名与自身不匹配时关闭当前虚拟应用Web页面,回退至主界面并通知代理图形服务进行屏幕显示切换;
所述图形显示控制模块具体包括:通过使用统一图形显示服务管理进行显示设备驱动控制,两个系统运行空间通过客户端访问方式进行可绘制图层创建处理,并将每个创建的图层stacklayer传递图形显示控制模块保存,以进行图层管理切换处理。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210646530.8A CN115167875A (zh) | 2022-06-09 | 2022-06-09 | 基于Web移动操作系统的Android应用方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210646530.8A CN115167875A (zh) | 2022-06-09 | 2022-06-09 | 基于Web移动操作系统的Android应用方法及系统 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115167875A true CN115167875A (zh) | 2022-10-11 |
Family
ID=83484742
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210646530.8A Pending CN115167875A (zh) | 2022-06-09 | 2022-06-09 | 基于Web移动操作系统的Android应用方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115167875A (zh) |
-
2022
- 2022-06-09 CN CN202210646530.8A patent/CN115167875A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN109240677B (zh) | 一种图层处理方法及装置 | |
US9798555B2 (en) | Application implementation method and apparatus | |
EP3992796A1 (en) | Inter-process communication method, apparatus and device | |
US8978051B2 (en) | Method and apparatus for displaying application image | |
CN109324903B (zh) | 用于嵌入式系统的显示资源调度方法及装置 | |
CN109308241B (zh) | 监听应用程序启动流程方法、装置、终端设备和存储介质 | |
WO2017167126A1 (zh) | 一种窗口显示方法、信息交互方法及系统 | |
CN110990075A (zh) | 快应用的启动方法、装置、设备及存储介质 | |
CN107077379B (zh) | 一种虚拟机创建方法和装置 | |
CN111309216B (zh) | 列表页面的显示方法、装置、计算机设备及存储介质 | |
CN111782192B (zh) | 一种混合模式开发移动办公系统的方法 | |
CN104899039A (zh) | 用于在终端设备上提供截屏服务的方法和装置 | |
CN111796838A (zh) | Mpp数据库自动部署方法及装置 | |
CN109725977A (zh) | 一种基于Android系统的多应用显示方法及终端设备 | |
CN110968331A (zh) | 应用程序运行的方法和装置 | |
CN114116092A (zh) | 云桌面系统处理方法、云桌面系统控制方法以及相关设备 | |
CN113242309A (zh) | 云计算方法、系统、设备和介质 | |
CN116775118A (zh) | 一种跨系统运行应用程序的方法及电子设备 | |
CN109886861A (zh) | 一种高效率图档格式heif图像加载方法及装置 | |
CN115167875A (zh) | 基于Web移动操作系统的Android应用方法及系统 | |
CN117319476A (zh) | 多系统终端的实施方法、服务端、应用能力端及系统 | |
US20120252536A1 (en) | Mobile terminal | |
CN115220803A (zh) | 一种数据处理方法以及设备 | |
CN112911359A (zh) | 一种资源显示方法、显示设备及遥控器 | |
CN111240805A (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 |