CN112966257A - 一种应用程序的授权方法及装置 - Google Patents

一种应用程序的授权方法及装置 Download PDF

Info

Publication number
CN112966257A
CN112966257A CN202110541240.2A CN202110541240A CN112966257A CN 112966257 A CN112966257 A CN 112966257A CN 202110541240 A CN202110541240 A CN 202110541240A CN 112966257 A CN112966257 A CN 112966257A
Authority
CN
China
Prior art keywords
application program
authorization
application
virtual
processing
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.)
Granted
Application number
CN202110541240.2A
Other languages
English (en)
Other versions
CN112966257B (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.)
Tencent Technology Shenzhen Co Ltd
Original Assignee
Tencent Technology Shenzhen 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 Tencent Technology Shenzhen Co Ltd filed Critical Tencent Technology Shenzhen Co Ltd
Priority to CN202110541240.2A priority Critical patent/CN112966257B/zh
Publication of CN112966257A publication Critical patent/CN112966257A/zh
Application granted granted Critical
Publication of CN112966257B publication Critical patent/CN112966257B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/50Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
    • G06F21/51Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems at application loading time, e.g. accepting, rejecting, starting or inhibiting executable software based on integrity or source reliability

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

本申请实施例涉及计算机技术领域,尤其涉及一种应用程序的授权方法及装置。该方法包括:响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数,并基于所述授权参数,向所述第二应用程序发送相应的授权请求;通过主进程接收所述第二应用程序反馈的授权响应,并根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。这样,可以降低操作成本,减少终端系统的工作压力。

Description

一种应用程序的授权方法及装置
技术领域
本申请实施例涉及计算机技术领域,尤其涉及一种应用程序的授权方法及装置。
背景技术
安卓(Android)系统内,源应用程序获取其它应用程序的授权功能时,源应用程序需要通过Android系统提供的标准接口启动Android系统中已经安装的其它应用程序,按照其它应用程序提供的参数进行编码生成授权请求并发送,其它应用程序收到授权请求后,经过业务处理后再返回授权结果给源应用程序。
相关方案中,源应用程序获取其它应用程序的授权需要依赖于Android系统中安装的其它应用程序,具体的授权过程需要在两个应用程序分别对应的两个主进程中来回切换。
这种情况下,终端中央处理器(CPU)和内存的消耗较大,具有较高的运行压力。
发明内容
本申请实施例提供一种应用程序的授权方法及装置,以降低操作成本,减少终端系统的工作压力。
本申请实施例提供一种应用程序的授权方法,包括:
响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;
通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;
通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数,并基于所述授权参数,向所述第二应用程序发送相应的授权请求;
通过主进程接收所述第二应用程序反馈的授权响应,并根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。
另一方面,本申请实施例还提供一种应用程序的授权装置,包括:
启动单元,用于响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;
所述启动单元,还用于通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;
处理单元,用于通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数;
收发单元,用于通过所述主进程,基于所述授权参数,向所述第二应用程序发送相应的授权请求;
所述收发单元,还用于通过所述主进程接收所述第二应用程序反馈的授权响应;
所述处理单元,还用于通过所述主进程,根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。
可选的,所述启动单元,还用于:
判断所述虚拟应用系统中是否已安装有所述第二应用程序;
若是,则通过所述虚拟子进程,在所述虚拟应用系统中,直接启动所述第二应用程序;
否则,通过所述虚拟子进程获取所述第二应用程序的安装包,并运行所述第二应用程序的安装包,在所述虚拟应用系统中安装及启动所述第二应用程序。
可选的,所述启动单元,具体用于:
通过所述虚拟子进程,从所述第一应用程序的安装包中获取所述第二应用程序的安装包,所述第二应用程序的安装包预先设置于所述第一应用程序的安装包中;或者,
通过所述虚拟子进程,从网络侧获取所述第二应用程序的安装包。
可选的,所述收发单元,还用于:
通过所述主进程,基于所述授权参数,生成所述授权请求;
通过所述主进程将所述授权请求发送至所述虚拟子进程;
通过所述虚拟子进程,向所述第二应用程序的服务器发送所述授权请求。
可选的,所述收发单元,还用于:
通过所述虚拟子进程,接收所述第二应用程序的服务器反馈的授权处理响应;
根据所述授权处理响应,呈现所述第二应用程序的授权处理界面;
响应于在所述授权处理界面中触发的处理操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求。
可选的,所述授权操作为登录授权操作;
所述启动单元,还用于响应于在所述第一应用程序的第一登录界面针对第二应用程序触发的登录授权操作;根据所述授权处理响应,呈现所述第二应用程序的第二登录界面;
所述收发单元,还用于响应于在所述第二登录界面中触发的登录操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求,所述处理请求中包括对应于所述第二应用程序的登录验证数据。
可选的,所述处理单元,还用于:
通过所述虚拟子进程,关闭所述第二应用程序。
另一方面,本申请实施例还提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如上所述的方法。
另一方面,本申请实施例还提供一种计算机可读存储介质,当所述计算机可读存储介质中的指令由处理器执行时,使得所述处理器能够执行如上所述的方法。
本申请实施例中,用户在第一应用程序的业务界面中进行授权操作,终端响应于针对第二应用程序触发的授权操作,在承载第一应用程序的主进程中启动虚拟子进程,该虚拟子进程中运行有虚拟应用系统。通过虚拟子进程,在虚拟应用系统中启动第二应用程序。终端通过主进程,从虚拟子进程中获取第二应用程序的授权参数,并基于该授权参数向第二应用程序发送相应的授权请求。通过主进程,终端接收第二应用程序反馈的授权响应,并根据授权响应中包含的授权处理结果对第一应用程序进行相应的业务处理。这样,本申请实施例的虚拟应用系统集成于第一应用程序中,第二应用程序运行于第一应用程序的虚拟应用系统中,终端上只需要安装第一应用程序即可,从而降低了用户的操作成本。另一方面,相关技术中的授权方案需要第一应用程序和第二应用成均在终端上启动运行,且授权过程涉及到两个应用的切换,对CPU和内存的消耗较大。本申请实施例中第二应用程序为运行在第一应用程序上的虚拟应用,对于终端而言,第一应用程序与第二应用程序为同一个应用,因此降低了CPU和内存的消耗。
附图说明
图1为本申请实施例中应用程序的授权方法的应用架构示意图;
图2为本申请实施例中实现应用程序的授权方法的流程示意图;
图3为本申请实施例中第一应用程序APK包、Android沙箱代码和第二应用程序APK包的关系示意图;
图4为本申请实施例中第一应用程序APK包、Android沙箱代码和第二应用程序APK包的运行关系示意图;
图5A-图5F为本申请实施例中终端显示的界面示意图;
图6为本申请具体实施例提供的应用程序的登录授权方法的实现过程流程图;
图7为本申请实施例提供的应用程序的授权装置的结构示意图;
图8为本申请实施例提供的一种电子设备的结构示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
为便于对本申请实施例的理解,下面先对几个概念进行简单介绍:
沙箱:(网络编程虚拟执行环境)即是一个虚拟系统程序,允许在沙盘环境中运行浏览器或其他程序,因此运行所产生的变化可以随后删除。它创造了一个类似沙盒的独立作业环境,在其内部运行的程序并不能对硬盘产生永久性的影响。在网络安全中,沙箱指在隔离环境中,用以测试不受信任的文件或应用程序等行为的工具。在Android系统中,采用虚拟化技术提供的隔离空间的、独立运行的环境,如同一个沙箱;被虚拟化的Android应用(简称“虚拟应用”)不需要安装在沙箱的外部系统中,而是通过沙箱框架提供的运行环境进行虚拟安装和加载运行。
Android客户端:是指在Android平台上的手机、平板等终端设备。
虚拟应用:虚拟应用是指在Android沙箱中运行的应用程序,本质上与在外部系统运行的应用无区别,如:即时通信类APP(Application,应用程序)、支付类APP、政务处理类APP等。本申请实施例中提及的虚拟应用均可以在外部系统运行,也可以在本申请实施例的沙箱中运行。
应用程序授权:应用程序对其他应用程序的功能授权。如:A应用程序对B应用程序授予用户登录登出、分享和支付等功能,使B应用程序可以使用A应用程序的帐号登录、分享和支付等功能。这个过程即是应用程序的授权。
云计算(cloud computing):是一种计算模式,它将计算任务分布在大量计算机构成的资源池上,使各种应用系统能够根据需要获取计算力、存储空间和信息服务。提供资源的网络被称为“云”。“云”中的资源在使用者看来是可以无限扩展的,并且可以随时获取,按需使用,随时扩展,按使用付费。
作为云计算的基础能力提供商,会建立云计算资源池(简称云平台,一般称为基础设施即服务(Infrastructure as a Service,IaaS)平台,在资源池中部署多种类型的虚拟资源,供外部客户选择使用。云计算资源池中主要包括:计算设备(为虚拟化机器,包含操作系统)、存储设备、网络设备。
按照逻辑功能划分,在IaaS层上可以部署平台即服务(Platform as a Service,PaaS)层,PaaS层之上再部署软件即服务(Software as a Service,SaaS)层,也可以直接将SaaS部署在IaaS上。PaaS为软件运行的平台,如数据库、web容器等。SaaS为各式各样的业务软件,如web门户网站、短信群发器等。一般来说,SaaS和PaaS相对于IaaS是上层。
下面结合附图对本申请优选的实施方式作出进一步详细说明。
具体实施中,通过终端进行应用程序的授权的流程可以应用于多种应用场景。参阅图1所示,为本申请实施例中应用程序的授权方法的应用架构示意图,包括第一应用程序对应的第一服务器100、第二应用程序对应的第二服务器200和终端设备300。
第一服务器100以及第二服务器200可以为终端设备300提供各种网络服务,第一服务器100和第二服务器200可以采用云计算技术进行信息处理。其中,第一服务器100和第二服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台等基础云计算服务的云服务器。这些服务器还可以是区块链网络上的节点服务器。
终端以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请在此不做限制。可选地,上述的通信方式使用标准通信技术和/或协议。互联网通常为因特网、但也可以是任何网络,包括但不限于局域网(Local Area Network,LAN)、城域网(Metropolitan Area Network,MAN)、广域网(Wide Area Network,WAN)、移动、有线或者无线网络、专用网络或者虚拟专用网络的任何组合。在一些实施例中,使用包括超文本标记语言(Hyper Text Mark-up Language,HTML)、可扩展标记语言(Extensible MarkupLanguage,XML)等的技术和/或格式来代表通过网络交换的数据。此外还可以使用诸如安全套接字层(Secure Socket Layer,SSL)、传输层安全(Transport Layer Security,TLS)、虚拟专用网络(Virtual Private Network,VPN)、网际协议安全(Internet ProtocolSecurity,IPsec)等常规加密技术来加密所有或者一些链路。在另一些实施例中,还可以使用定制和/或专用数据通信技术取代或者补充上述数据通信技术。
终端设备300可以是移动的,也可以是固定的电子设备。例如,手机、平板电脑、笔记本电脑、台式电脑、各类可穿戴设备、智能电视、车载设备或其它能够实现上述功能的电子设备等。终端设备300上能够安装各种应用程序,显示各应用程序的界面,并与应用程序对应的服务器进行信息交互。
具体地,终端设备300可以包括处理器110(Center Processing Unit ,CPU)、存储器120、输入设备130和输出设备140等,输入设备130可以包括键盘、鼠标、触摸屏等,输出设备140可以包括显示设备,如液晶显示器(Liquid Crystal Display, LCD)、阴极射线管(Cathode Ray Tube,CRT)等。
存储器120可以包括只读存储器(ROM)和随机存取存储器(RAM),并向处理器110提供存储器120中存储的程序指令和数据。在本申请实施例中,存储器120可以用于存储本发明实施例中应用程序的授权方法的程序。
处理器110通过调用存储器120存储的程序指令,处理器110用于按照获得的程序指令执行本发明实施例中任一种应用程序的授权方法的步骤。
基于上述设计构思,参阅图2所示,本申请实施例中,实现应用程序的授权方法的流程如下:
步骤201:终端响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载第一应用程序的主进程中启动虚拟子进程。其中,虚拟子进程中运行有虚拟应用系统。
具体的,终端可以在针对第一应用程序的目标业务的执行过程中显示对应的业务页面,用户在第一应用程序的业务页面中操作时,触发针对第二应用程序的授权操作。这里的授权操作可以是利用第二应用程序中的账户登录或登出第一应用程序的登录授权操作,或者是将第二应用程序中的图片等分享至第一应用程序的分享授权操作,或者是利用第二应用程序中金融数据对第一应用程序中的业务进行支付的支付授权操作等。
终端响应于用户在业务界面中的授权操作,在承载第一应用程序的主进程中启动虚拟子进程。该虚拟子进程中运行有虚拟应用系统,即该虚拟子进程为承载沙箱的子进程,也就是说通过虚拟子进程,在第一应用程序中运行一个虚拟化的独立运行的环境。例如,第一应用程序运行在终端的Android系统上,由主进程承载;在主进程中的虚拟子进程中运行Android沙箱即虚拟应用系统,通过Android沙箱,在第一应用程序中运行一个虚拟环境。从而,可以将第二应用程序安装并运行于Android沙箱中。
步骤202:通过虚拟子进程,在虚拟应用系统中,启动第二应用程序。
一般来说,第二应用程序与第一应用程序为不同的应用程序。其中,第二应用程序为虚拟应用程序,即为在沙箱中运行的应用程序,该应用程序既可以在终端的正常应用系统中运行,也可以在例如沙箱等虚拟应用系统中运行。
进一步地,通过虚拟子进程,在虚拟应用系统中,启动第二应用程序,包括:
判断虚拟应用系统中是否已安装有第二应用程序;
若是,则通过虚拟子进程,在虚拟应用系统中,直接启动第二应用程序;
否则,通过虚拟子进程获取第二应用程序的安装包,并运行第二应用程序的安装包,在虚拟应用系统中安装及启动第二应用程序。
具体地,第二应用程序的运行建立在虚拟应用系统中已安装第二应用程序的基础上,因此需要判断虚拟应用系统中是否已安装有第二应用程序。具体判断虚拟应用系统中是否已安装有第二应用程序的方法与一般判断应用系统中是否已安装应用程序的方法类似,可以是终端单独搜索判断,例如通过搜索虚拟应用系统中设定的存储位置,判断是否存有第二应用程序对应的应用程序信息;也可以是终端和第二应用程序的服务器联合执行判断的过程,例如,终端通过虚拟应用系统向第二应用程序的服务器发送问询数据包,若能够成功发送并收到问询响应,则认为安装有第二应用程序,否则认为未安装。以上判断虚拟应用系统中是否安装第二应用程序的方法均为举例,本申请实施例不做限制。
具体实施过程中,第一应用程序的安装包(APK,Android application package,Android应用程序包)中可以预先设置有虚拟应用系统的代码以及第二应用程序的安装包。具体可以按照客户的要求,在第一应用程序下载时将第二应用程序的安装包设置于第一应用程序的安装包内;或者由管理员在管理控制台下发第二应用程序的安装包。进一步地,第一应用程序的安装包中可以包括多个第二应用程序的安装包,从而第一应用程序可以进行多个第二应用程序的授权,第二应用程序的具体数量不做限制。
图3示出了第一应用程序APK包、Android沙箱代码和第二应用程序APK包的关系。如图3所示,第一应用程序的APK包包含了Android沙箱的代码和第二应用程序APK包。在第一应用程序构建时,Android沙箱的代码与第一应用程序的代码一起编译,java文件经过编译生成class文件,然后集合生成一个或者多个dex文件,so库文件则封装在lib/armeabi目录中;而第二应用程序APK包是放在第一应用程序APK包的assets目录下。
这样,在运行的时候,第一应用程序运行在终端的Android系统上,Android沙箱即虚拟应用系统的代码以及第二应用程序的安装包是集成在第一应用程序的安装包中,因此第二应用程序未安装到终端的Android系统上,而是直接运行在Android沙箱的虚拟应用系统中。第一应用程序、Android沙箱和第二应用程序的运行关系如图4所示。
当判断出虚拟应用系统中已安装有第二应用程序,则通过虚拟子进程,在虚拟应用系统中直接启动第二应用程序。若第二应用程序仍未安装,则通过虚拟子进程获取第二应用程序的安装包,并运行第二应用程序的安装包,在虚拟应用系统中安装及启动第二应用程序。
这里的获取第二应用程序的安装包的方式,可以为从第一应用程序的安装包中直接获取,此时,第二应用程序的安装包预先设置于第一应用程序的安装包中。这种方式安装时无需联网即可将第二应用程序在虚拟应用系统中进行安装,对于网络的压力较小。
另一种实施例中,也可以通过虚拟子进程,从网络侧获取第二应用程序的安装包。具体地,可以在第一应用程序进程启动后,虚拟应用系统从网络上下载第二应用程序的安装包并安装于虚拟应用系统中。这种方式较为灵活,可以由用户选择授权涉及的第二应用程序进行下载,从而满足用户需求,提升用户体验。
步骤203:通过主进程,从虚拟子进程中获取第二应用程序的授权参数,并基于授权参数,向第二应用程序发送相应的授权请求。
具体实施过程中,第二应用程序的授权参数可以包括第二应用程序的可授权的功能接口参数、第一应用程序的包名、第一应用程序的APPID(应用程序标识)、第一应用程序的AgentID(软件标识)、第一应用程序的schema(模式)等。承载了第一应用程序的主进程获取第二应用程序的授权参数后,基于获取的授权参数生成授权请求,将授权参数封装于授权请求中,向第二应用程序发送该授权请求。
第二应用程序接收到授权请求后,可以由终端直接对该授权请求进行处理,或者也可以将授权请求发送至第二应用程序对应的服务器,由服务器对授权请求进行处理,从而减轻终端的处理压力。
即,基于所述授权参数,向第二应用程序发送相应的授权请求,包括:
通过主进程,基于授权参数,生成授权请求;
通过主进程将授权请求发送至虚拟子进程;
通过虚拟子进程,向第二应用程序的服务器发送授权请求。
具体是否向服务器发送授权请求,取决于第二应用程序自身的设置。一般来说,为了加快计算速度,保证安全性,第二应用程序会向对应的服务器发送授权请求,由服务器进行处理。
具体实施过程中,主进程基于授权参数生成授权请求后,将授权请求发送至虚拟子进程,例如Android沙箱进程,由Android沙箱进程向第二应用程序的服务器发送授权请求。服务器对授权请求进行处理,包括校验其中的授权参数是否合法,处理可授权功能的业务逻辑,计算出可授权功能的结果等,并基于授权处理结果生成授权响应,向终端发送。
若由服务器处理该授权请求,则主进程生成授权请求后,将授权请求向虚拟子进程发送,由虚拟子进程将授权请求发送至服务器。服务器反馈授权响应时,为虚拟子进行接收授权响应,再将授权响应发送至主进程,主进程确认最终的授权结果以及进行相应的业务处理。
若由终端直接处理授权请求,则主进程生成授权请求后,将授权请求向虚拟子进程发送,由虚拟子进程对授权请求进行处理,确定处理结果后,虚拟子进程直接将授权响应向主进程反馈,仍由主进程根据授权响应中包含的授权处理结果对第一应用程序进行相应的业务处理。
步骤204:通过主进程接收第二应用程序反馈的授权响应,并根据授权响应中包含的授权处理结果对第一应用程序进行相应的业务处理。
本申请实施例中,用户在第一应用程序的业务界面中进行授权操作,终端响应于针对第二应用程序触发的授权操作,在承载第一应用程序的主进程中启动虚拟子进程,该虚拟子进程中运行有虚拟应用系统。通过虚拟子进程,在虚拟应用系统中启动第二应用程序。终端通过主进程,从虚拟子进程中获取第二应用程序的授权参数,并基于该授权参数向第二应用程序发送相应的授权请求。通过主进程,终端接收第二应用程序反馈的授权响应,并根据授权响应中包含的授权处理结果对第一应用程序进行相应的业务处理。这样,本申请实施例的虚拟应用系统集成于第一应用程序中,第二应用程序运行于第一应用程序的虚拟应用系统中,终端上只需要安装第一应用程序即可,从而降低了用户的操作成本。另一方面,相关技术中的授权方案需要第一应用程序和第二应用成均在终端上启动运行,且授权过程涉及到两个应用的切换,对CPU和内存的消耗较大。本申请实施例中第二应用程序为运行在第一应用程序上的虚拟应用,对于终端而言,第一应用程序与第二应用程序为同一个应用,因此降低了CPU和内存的消耗。
进一步地,上述步骤通过主进程接收第二应用程序反馈的授权响应之后,根据授权响应中包含的授权处理结果对第一应用程序进行相应的业务处理之前,还包括:
通过虚拟子进程,关闭第二应用程序。
具体实施过程中,若由服务器接收并处理授权请求,则虚拟子进程接收到服务器反馈的授权响应之后,将授权响应发送至主进程。这时,虚拟子进程可以结束第二应用程序,以减少终端的工作量,缓解数据处理压力。
另一方面,若终端直接处理授权请求,则可以在虚拟子进程处理完授权请求,并将授权响应发送至主进程之后,虚拟子进程将第二应用程序进行关闭。
进一步地,通过虚拟子进程,向第二应用程序的服务器发送授权请求之后,还包括:
通过虚拟子进程,接收第二应用程序的服务器反馈的授权处理响应;
根据授权处理响应,呈现第二应用程序的授权处理界面;
响应于在授权处理界面中触发的处理操作,通过虚拟子进程,向第二应用程序的服务器发送处理请求。
具体实施过程中,第二应用程序向第一应用程序的授权需要经过用户的授权同意。具体地,第二应用程序的服务器可以在接收到授权请求后,向终端反馈授权处理响应,虚拟子进程接收到授权处理响应后,向用户呈现第二应用程序的授权处理界面。用户在授权处理界面中进行处理操作。终端响应于在授权处理界面中触发的处理操作,由虚拟子进程根据用户的处理操作获取对应的处理参数,并生成处理请求。
虚拟子进程向第二应用程序的服务器发送处理请求。这样,服务器可以根据接收到的处理参数确认用户是否具有授权的权力,以及是否同意授权等,从而得到处理结果,并将处理结果向终端反馈。
下面通过第一应用程序向第二应用程序申请登录授权为例介绍本申请实施例中的界面切换过程。
此时,授权操作为登录授权操作,则上述步骤响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,包括:
响应于在第一应用程序的第一登录界面针对第二应用程序触发的登录授权操作;
根据授权处理响应,呈现第二应用程序的授权处理界面,包括:
根据授权处理响应,呈现第二应用程序的第二登录界面;
响应于在授权处理界面中触发的处理操作,通过虚拟子进程,向第二应用程序的服务器发送处理请求,包括:
响应于在第二登录界面中触发的登录操作,通过虚拟子进程,向第二应用程序的服务器发送处理请求,处理请求中包括对应于第二应用程序的登录验证数据。
具体实施过程中,以第一应用程序为安全工作空间,第二应用程序为政务服务为例进行说明。终端向在桌面的显示界面中向用户呈现安全工作空间的图标,如图5A所示。
用户点击桌面上安全工作空间的图标后,终端响应该点击操作,启动安全工作空间应用程序,向用户显示如图5B所示的安全工作空间的登录界面。如图5B所示,安全工作空间的登录界面中包括账号登录和第三方授权登录两个选项。
用户选择第三方授权登录后,进行授予存储权限、电话权限和设置应用存活权限的操作,则终端跳转至政务服务的帐号登录引导界面,如图5C所示。
终端接收到用户点击帐号登录引导界面中“去政务服务登录”操作后,会调起政务服务的应用程序,若政务服务目前未登录,则跳转到政务服务的帐号登录界面,如图5D所示。若政务服务已经登录了帐号,则直接跳转到政务服务应用程序授予安全工作空间的登录功能授权界面,如图5E。
用户在政务服务应用程序的帐号登录界面输入帐号和密码后,点击“登录”按钮。终端响应于上述操作,向政务服务的服务器发送登录请求,该登录请求中包括用户输入的账号和密码。服务器验证通过后确认政务服务登录成功,则也会跳转到政务服务应用程序授予安全工作空间的登录功能授权界面,即图5E。
用户在登录功能授权界面中点击“确认登录”按钮后,即进一步登录授权确认,终端响应于用户的操作跳转到安全工作空间的应用模块界面,如图5F。
以下通过具体实例说明本申请实施例提供的应用程序的登录授权方法的实现过程。具体实施例为安全工作空间(第一应用程序)获取政务服务(第二应用程序)的帐号登录功能授权,具体过程如图6所示。
(1)用户点击安卓系统安全工作空间的图标后,启动安全工作空间应用程序的进程,进入到安卓系统存储、电话权限引导界面,用户授予安卓系统的存储、电话权限后,进入到安全工作空间的应用存活权限设置引导界面,用户设置安全工作空间应用的存活权限后,程序继续执行,判断是否需要帐号登录。
(2)若已经登录帐号,则直接跳到下述步骤(10),若没有登录帐号,则继续判断登录方式是否为第三方应用政务服务登录,若是,则跳到下述步骤(3);若否则使用安全工作空间的自建帐号体系,则跳到自建登录界面,然后输出帐号、密码登录,当登录成功后,直接跳转到安全工作空间应用模块的界面。
(3)若是第三方应用政务服务登录,则进入政务服务登录引导界面,点击“登录”按钮后,此时会启动安卓沙箱进程。
(4)启动安卓沙箱进程后,安全工作空间会根据政务服务的包名,调用安卓沙箱的检测虚拟应用的安装状态,检测政务服务虚拟应用是否安装,如未安装,则跳转到下述步骤(5);若已经安装,则跳转到下述步骤(6)。
(5)若安卓沙箱内没有安装有政务服务应用程序,则调用安卓系统的context.getAssets(目录资源读取)方法,将内置在安全工作空间安装包的政务服务的安装包,从assets(资源)目录复制到安卓沙箱的根目录的/sand/apk/目录下。然后通过安卓沙箱的安装虚拟应用的installApp(安装应用程序)方法将政务服务应用安装在安卓沙箱的虚拟运行系统中,然后继续下述步骤(6)。
(6)安全工作空间的进程收到安卓沙箱安装政务服务应用成功的回调后,将根据政务服务的登录授权功能所需要的参数封装在Intent(意图)中,参数包括安全工作空间的包名、政务服务开放平台下注册的安全工作空间应用对应的appid(应用程序标识)、agentid(软件标识)和schema(模式)等信息。同时该Intent设置了一个等待的,未决定的PendingIntent(封装意图)对象,该PendingIntent对象是注册了政务服务登录授权结果回调事件的广播监听。
(7)封装好Intent意图对象后,安全工作空间的进程会调用安卓沙箱进程的startActivity(开启界面)方法,将封装好的Intent对象唤起政务服务应用程序。
(8)此时,虚拟应用政务服务应用收到唤起的请求后,根据调用的唤起的方法以及封装的Intent对象的数据,政务服务会启动其帐号登录界面。此时用户输入政务服务的帐号、密码等信息且点击“登录”按钮后,政务服务应用会执行登录授权功能的逻辑处理,包括对用户输入的账号密码等信息进行校验等处理,直到该功能的逻辑处理完成后,政务服务应用会广播其登录功能授权的结果回调事件。
(9)当安卓沙箱进程收到政务服务应用广播的登录功能授权的结果回调事件后,首先调用其结束虚拟应用进程的killApp(杀死应用程序)方法将政务服务的进程结束,然后解析和根据回调结果判断政务服务是否登录成功,若登录成功,则继续下述步骤(10);若登录失败,则继续下述步骤(11)。
(10)登录成功后,跳转到安全工作空间应用模块的界面。
(11)登录失败后,跳转到安全工作空间登录失败的界面。
从安卓系统点击安全工作空间的图标,到其获取到第三方应用政务服务的登录功能授权结果,整个流程都没有检测安卓系统是否有政务服务应用程序,也没有将政务服务安装包单独安装在安卓系统,而是将政务服务安装包放在安全工作空间的安装包中,然后通过安卓沙箱将政务服务安装包安装在虚拟运行系统中。
与上述方法实施例相对应地,本申请实施例还提供了一种应用程序的授权装置。图7为本申请实施例的提供的应用程序的授权装置的结构示意图;如图7所示,该应用程序的授权装置包括:
启动单元701,用于响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;
所述启动单元701,还用于通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;
处理单元702,用于通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数;
收发单元703,用于基于所述授权参数,向所述第二应用程序发送相应的授权请求;
所述收发单元703,还用于通过主进程接收所述第二应用程序反馈的授权响应;
所述处理单元702,还用于根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。
可选的,所述启动单元701,还用于:
判断所述虚拟应用系统中是否已安装有所述第二应用程序;
若是,则通过所述虚拟子进程,在所述虚拟应用系统中,直接启动所述第二应用程序;
否则,通过所述虚拟子进程获取所述第二应用程序的安装包,并运行所述第二应用程序的安装包,在所述虚拟应用系统中安装及启动所述第二应用程序。
可选的,所述启动单元701,具体用于:
通过所述虚拟子进程,从所述第一应用程序的安装包中获取所述第二应用程序的安装包,所述第二应用程序的安装包预先设置于所述第一应用程序的安装包中;或者,
通过所述虚拟子进程,从网络侧获取所述第二应用程序的安装包。
可选的,所述收发单元703,还用于:
通过所述主进程,基于所述授权参数,生成所述授权请求;
通过所述主进程将所述授权请求发送至所述虚拟子进程;
通过所述虚拟子进程,向所述第二应用程序的服务器发送所述授权请求。
可选的,所述收发单元703,还用于:
通过所述虚拟子进程,接收所述第二应用程序的服务器反馈的授权处理响应;
根据所述授权处理响应,呈现所述第二应用程序的授权处理界面;
响应于在所述授权处理界面中触发的处理操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求。
可选的,所述授权操作为登录授权操作;
所述启动单元701,还用于响应于在所述第一应用程序的第一登录界面针对第二应用程序触发的登录授权操作;根据所述授权处理响应,呈现所述第二应用程序的第二登录界面;
所述收发单元703,还用于响应于在所述第二登录界面中触发的登录操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求,所述处理请求中包括对应于所述第二应用程序的登录验证数据。
可选的,所述处理单元702,还用于:
通过所述虚拟子进程,关闭所述第二应用程序。
与上述方法实施例相对应地,本申请实施例还提供了一种电子设备。
图8为本申请实施例提供的一种电子设备的结构示意图;如图8所示,本申请实施例中该电子设备80包括:处理器81、显示器82、存储器83、输入设备86、总线85和通讯设备84;该处理器81、存储器83、输入设备86、显示器82和通讯设备84均通过总线85连接,该总线85用于该处理器81、存储器83、显示器82、通讯设备84和输入设备86之间传输数据。
其中,存储器83可用于存储软件程序以及模块,如本申请实施例中的应用程序的授权方法对应的程序指令/模块,处理器81通过运行存储在存储器83中的软件程序以及模块,从而执行电子设备80的各种功能应用以及数据处理,如本申请实施例提供的应用程序的授权方法。存储器83可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个应用的应用程序等;存储数据区可存储根据电子设备80的使用所创建的数据(比如训练样本、特征提取网络)等。此外,存储器83可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
处理器81是电子设备80的控制中心,利用总线85以及各种接口和线路连接整个电子设备80的各个部分,通过运行或执行存储在存储器83内的软件程序和/或模块,以及调用存储在存储器83内的数据,执行电子设备80的各种功能和处理数据。可选的,处理器81可包括一个或多个处理单元,如CPU、GPU(Graphics Processing Unit,图形处理单元)、数字处理单元等。
本申请实施例中,处理器81将分割的图像通过显示器82展示给用户。
该输入设备86主要用于获得用户的输入操作,当该电子设备不同时,该输入设备86也可能不同。例如,当该电子设备为计算机时,该输入设备86可以为鼠标、键盘等输入设备;当该电子设备为智能手机、平板电脑等便携设备时,该输入设备86可以为触控屏。
本申请实施例还提供了一种计算机存储介质,该计算机存储介质中存储有计算机可执行指令,该计算机可执行指令用于实现本申请任一实施例所述的应用程序的授权方法。
在一些可能的实施方式中,本申请提供的应用程序的授权方法的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在计算机设备上运行时,所述程序代码用于使所述计算机设备执行本说明书上述描述的根据本申请各种示例性实施方式的应用程序的授权方法的步骤,例如,所述计算机设备可以执行如图2所示的步骤S201~S204中的应用程序的授权流程。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括——但不限于——电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
在本申请所提供的几个实施例中,应该理解到,所揭露的设备和方法,可以通过其它的方式实现。以上所描述的设备实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,如:多个单元或组件可以结合,或可以集成到另一个系统,或一些特征可以忽略,或不执行。另外,所显示或讨论的各组成部分相互之间的耦合、或直接耦合、或通信连接可以是通过一些接口,设备或单元的间接耦合或通信连接,可以是电性的、机械的或其它形式的。
上述作为分离部件说明的单元可以是、或也可以不是物理上分开的,作为单元显示的部件可以是、或也可以不是物理单元,即可以位于一个地方,也可以分布到多个网络单元上;可以根据实际的需要选择其中的部分或全部单元来实现本实施例方案的目的。
另外,在本申请各实施例中的各功能单元可以全部集成在一个处理单元中,也可以是各单元分别单独作为一个单元,也可以两个或两个以上单元集成在一个单元中;上述集成的单元既可以采用硬件的形式实现,也可以采用硬件加软件功能单元的形式实现。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本申请揭露的技术范围内,可轻易想到变化或替换,都应涵盖在本申请的保护范围之内。

Claims (10)

1.一种应用程序的授权方法,其特征在于,包括:
响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;
通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;
通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数,并基于所述授权参数,向所述第二应用程序发送相应的授权请求;
通过所述主进程接收所述第二应用程序反馈的授权响应,并根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。
2.根据权利要求1所述的方法,其特征在于,所述通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序,包括:
判断所述虚拟应用系统中是否已安装有所述第二应用程序;
若是,则通过所述虚拟子进程,在所述虚拟应用系统中,直接启动所述第二应用程序;
否则,通过所述虚拟子进程获取所述第二应用程序的安装包,并运行所述第二应用程序的安装包,在所述虚拟应用系统中安装及启动所述第二应用程序。
3.根据权利要求2所述的方法,其特征在于,所述通过所述虚拟子进程获取所述第二应用程序的安装包,包括:
通过所述虚拟子进程,从所述第一应用程序的安装包中获取所述第二应用程序的安装包,所述第二应用程序的安装包预先设置于所述第一应用程序的安装包中;或者,
通过所述虚拟子进程,从网络侧获取所述第二应用程序的安装包。
4.根据权利要求1、2或3所述的方法,其特征在于,所述基于所述授权参数,向所述第二应用程序发送相应的授权请求,包括:
通过所述主进程,基于所述授权参数,生成所述授权请求;
通过所述主进程将所述授权请求发送至所述虚拟子进程;
通过所述虚拟子进程,向所述第二应用程序的服务器发送所述授权请求。
5.根据权利要求4所述的方法,其特征在于,所述通过所述虚拟子进程,向所述第二应用程序的服务器发送所述授权请求之后,还包括:
通过所述虚拟子进程,接收所述第二应用程序的服务器反馈的授权处理响应;
根据所述授权处理响应,呈现所述第二应用程序的授权处理界面;
响应于在所述授权处理界面中触发的处理操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求。
6.根据权利要求5所述的方法,其特征在于,所述授权操作为登录授权操作;
所述响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,包括:
响应于在所述第一应用程序的第一登录界面针对第二应用程序触发的登录授权操作;
所述根据所述授权处理响应,呈现所述第二应用程序的授权处理界面,包括:
根据所述授权处理响应,呈现所述第二应用程序的第二登录界面;
所述响应于在所述授权处理界面中触发的处理操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求,包括:
响应于在所述第二登录界面中触发的登录操作,通过所述虚拟子进程,向所述第二应用程序的服务器发送处理请求,所述处理请求中包括对应于所述第二应用程序的登录验证数据。
7.根据权利要求1、2或3所述的方法,其特征在于,所述通过所述主进程接收所述第二应用程序反馈的授权响应之后,所述根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理之前,还包括:
通过所述虚拟子进程,关闭所述第二应用程序。
8.一种应用程序的授权装置,其特征在于,包括:
启动单元,用于响应于在第一应用程序的业务界面中针对第二应用程序触发的授权操作,在承载所述第一应用程序的主进程中启动虚拟子进程,所述虚拟子进程中运行有虚拟应用系统;
所述启动单元,还用于通过所述虚拟子进程,在所述虚拟应用系统中,启动所述第二应用程序;
处理单元,用于通过所述主进程,从所述虚拟子进程中获取所述第二应用程序的授权参数;
收发单元,用于通过所述主进程,基于所述授权参数,向所述第二应用程序发送相应的授权请求;
所述收发单元,还用于通过所述主进程接收所述第二应用程序反馈的授权响应;
所述处理单元,还用于通过所述主进程,根据所述授权响应中包含的授权处理结果对所述第一应用程序进行相应的业务处理。
9.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于读取并执行所述存储器中存储的可执行指令,以实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其特征在于,当所述计算机可读存储介质中的指令由处理器执行时,使得所述处理器能够执行如权利要求1-7任一项所述的方法。
CN202110541240.2A 2021-05-18 2021-05-18 一种应用程序的授权方法及装置 Active CN112966257B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110541240.2A CN112966257B (zh) 2021-05-18 2021-05-18 一种应用程序的授权方法及装置

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110541240.2A CN112966257B (zh) 2021-05-18 2021-05-18 一种应用程序的授权方法及装置

Publications (2)

Publication Number Publication Date
CN112966257A true CN112966257A (zh) 2021-06-15
CN112966257B CN112966257B (zh) 2022-02-08

Family

ID=76275600

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110541240.2A Active CN112966257B (zh) 2021-05-18 2021-05-18 一种应用程序的授权方法及装置

Country Status (1)

Country Link
CN (1) CN112966257B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113591106A (zh) * 2021-06-30 2021-11-02 荣耀终端有限公司 一种应用授权方法、装置和终端设备
CN113868602A (zh) * 2021-09-06 2021-12-31 浙江大华技术股份有限公司 应用授权方法、分布式集群系统、电子设备和存储介质

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110185013A1 (en) * 2010-01-27 2011-07-28 Code Systems Corporation System for downloading and executing a virtual application
US20160077819A1 (en) * 2014-09-16 2016-03-17 Xiaomi Inc. Method and device for running application program
CN107203715A (zh) * 2016-03-18 2017-09-26 阿里巴巴集团控股有限公司 执行系统调用的方法及装置
CN108932429A (zh) * 2017-05-27 2018-12-04 腾讯科技(深圳)有限公司 应用程序的分析方法、终端及存储介质
CN111880987A (zh) * 2020-07-09 2020-11-03 青岛海尔科技有限公司 应用程序的动态监测方法、装置、存储介质以及电子装置
CN111949334A (zh) * 2020-10-16 2020-11-17 腾讯科技(深圳)有限公司 基于沙箱环境的虚拟应用启动控制方法、装置及设备
CN112100613A (zh) * 2020-08-27 2020-12-18 腾讯科技(深圳)有限公司 一种应用登录控制方法、装置、电子设备和存储介质

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110185013A1 (en) * 2010-01-27 2011-07-28 Code Systems Corporation System for downloading and executing a virtual application
US20160077819A1 (en) * 2014-09-16 2016-03-17 Xiaomi Inc. Method and device for running application program
CN107203715A (zh) * 2016-03-18 2017-09-26 阿里巴巴集团控股有限公司 执行系统调用的方法及装置
CN108932429A (zh) * 2017-05-27 2018-12-04 腾讯科技(深圳)有限公司 应用程序的分析方法、终端及存储介质
CN111880987A (zh) * 2020-07-09 2020-11-03 青岛海尔科技有限公司 应用程序的动态监测方法、装置、存储介质以及电子装置
CN112100613A (zh) * 2020-08-27 2020-12-18 腾讯科技(深圳)有限公司 一种应用登录控制方法、装置、电子设备和存储介质
CN111949334A (zh) * 2020-10-16 2020-11-17 腾讯科技(深圳)有限公司 基于沙箱环境的虚拟应用启动控制方法、装置及设备

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113591106A (zh) * 2021-06-30 2021-11-02 荣耀终端有限公司 一种应用授权方法、装置和终端设备
WO2023273350A1 (zh) * 2021-06-30 2023-01-05 荣耀终端有限公司 一种应用授权方法、装置和终端设备
CN113868602A (zh) * 2021-09-06 2021-12-31 浙江大华技术股份有限公司 应用授权方法、分布式集群系统、电子设备和存储介质
CN113868602B (zh) * 2021-09-06 2023-06-20 浙江大华技术股份有限公司 应用授权方法、分布式集群系统、电子设备和存储介质

Also Published As

Publication number Publication date
CN112966257B (zh) 2022-02-08

Similar Documents

Publication Publication Date Title
KR101872141B1 (ko) 확장자가 애플리케이션의 기능을 다른 애플리케이션으로 확장하게 하는 고정적 확장 포인트
CN106575305B (zh) 反向代理服务器内的服务
CN108681662B (zh) 一种安装程序的方法及装置
US10069832B2 (en) Ephemeral applications
CN113296798B (zh) 一种服务部署方法、装置及可读存储介质
US20150332043A1 (en) Application analysis system for electronic devices
US10922445B2 (en) Computing systems and methods
CN112966257B (zh) 一种应用程序的授权方法及装置
WO2016086765A1 (zh) 浏览器防注入方法、浏览器客户端和装置
US11782748B2 (en) Cloud shell extension framework
CN111737687A (zh) 网页应用系统的访问控制方法、系统、电子设备和介质
CN110945504B (zh) 递送基于配置的工作流
WO2022076997A1 (en) Integrated edge cloud architecture
CN112199151B (zh) 一种应用程序的运行方法及装置
CN113572763A (zh) 数据处理方法、装置、电子设备及存储介质
CN112100613A (zh) 一种应用登录控制方法、装置、电子设备和存储介质
CN112528286B (zh) 终端设备安全检测方法、关联设备以及计算机程序产品
CN111984963B (zh) 绕过自签证书校验的方法和装置
US11244042B2 (en) Systems and methods for zero-footprint email and browser lifecycle
CN111125676B (zh) 联合授权方法和装置
US20230325593A1 (en) Computing device and methods providing enhanced language detection and display features for virtual computing sessions
CN114285583A (zh) 设备安全接入物联网的方法、装置、电子设备及存储介质
CN118018557A (zh) 应用的处理方法、装置、系统以及存储介质
CN116069637A (zh) 一种应用程序的测试方法、装置、设备及存储介质
CN116501336A (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