CN116679990B - 一种服务状态初始化的统一方法及电子设备 - Google Patents

一种服务状态初始化的统一方法及电子设备 Download PDF

Info

Publication number
CN116679990B
CN116679990B CN202211321546.8A CN202211321546A CN116679990B CN 116679990 B CN116679990 B CN 116679990B CN 202211321546 A CN202211321546 A CN 202211321546A CN 116679990 B CN116679990 B CN 116679990B
Authority
CN
China
Prior art keywords
service
app
state
initialization
service app
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
CN202211321546.8A
Other languages
English (en)
Other versions
CN116679990A (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.)
Honor Device Co Ltd
Original Assignee
Honor Device 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 Honor Device Co Ltd filed Critical Honor Device Co Ltd
Priority to CN202211321546.8A priority Critical patent/CN116679990B/zh
Publication of CN116679990A publication Critical patent/CN116679990A/zh
Application granted granted Critical
Publication of CN116679990B publication Critical patent/CN116679990B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/4401Bootstrapping
    • G06F9/4403Processor initialisation
    • 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/57Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
    • G06F21/575Secure boot
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/61Installation
    • G06F8/62Uninstallation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • 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/44594Unloading
    • YGENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
    • Y02D10/00Energy efficient computing, e.g. low power processors, power management or thermal management

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)
  • Computer Hardware Design (AREA)
  • Stored Programmes (AREA)

Abstract

本申请提供一种服务状态初始化的统一方法及电子设备,涉及终端技术领域。其方法包括:判断服务App的服务状态是否未初始化,服务App是能够为电子设备提供具体能力的App;若服务App的服务状态未初始化,则获取初始服务状态;若服务App的服务状态已初始化,则对初始服务状态进行更新;监听服务App是否发生变化;若服务App发生变化,则判断是否存在配置项;若存在配置项,则对服务App完成拉起服务;基于拉起服务,获取服务App的服务状态配置;将服务状态配置更新到内存或数据库中。由此,能够使相同类型、不同型号的电子设备通过一个通用模型配置文件,完成服务状态的初始化。

Description

一种服务状态初始化的统一方法及电子设备
技术领域
本申请涉及终端技术领域,尤其涉及一种服务状态初始化的统一方法及电子设备。
背景技术
在超级终端的业务场景下,相同类型、不同型号的电子设备的初始服务状态(服务状态,即服务支持能力,例如是否支持协同、分享、投屏等功能状态)是不同的,例如低端手机不支持服务状态switch,中段手机支持服务状态switch但默认为关闭,高端手机支持服务状态switch且默认为开启。因此,目前相同类型、不同型号的电子设备需要通过不同的配置文件进行初始服务状态的配置。
然而,如果相同类型、不同型号的电子设备通过不同的配置文件进行初始服务状态的配置,一方面配置文件的编写、维护和固件配置成本会大大增加,另一方面服务状态也无法做到独立升级迭代,而必须随系统固件的更新而更新,导致无法在短周期内完成更新迭代。
发明内容
本申请的目的在于:提供一种服务状态初始化的统一方法及电子设备,能够使相同类型、不同型号的电子设备通过一个通用模型配置文件,完成服务状态的初始化。
第一方面,本申请提供了一种服务状态初始化的统一方法,应用于包含服务App的电子设备,电子设备可以是手机、PAD、PC、大屏等设备。该方法包括:判断服务App的服务状态是否未初始化,服务状态,即服务支持能力,例如是否支持协同、分享、投屏等功能状态,服务App是能够为电子设备提供具体能力的App;若服务App的服务状态未初始化,则获取初始服务状态;若服务App的服务状态已初始化,则对初始服务状态进行更新;监听服务App是否发生变化,变化包括应用安装、应用卸载或应用升级;若服务App发生变化,则判断是否存在配置项;若存在配置项,则对服务App完成拉起服务;基于拉起服务,获取服务App的服务状态配置;将服务状态配置更新到内存或数据库中。
由此,能够通过一个通用模型配置完成通用状态的初始化,从而降低配置文件的编写、维护和固件配置成本,并缩短电子设备迭代的周期。并且,若对服务APP进行了安装或升级,则说明该服务APP的版本出现了变化,则本申请可以快速安装或更新服务App完成服务使能;若对服务APP进行了卸载,也可以完成功能的关闭。
在一些可能的实现方式中,该方法还包括:电子设备监听用户授权开关的变化情况;若接收到用户授权开关由开变为关时,则关闭服务App;若接收到用户授权开关由关变为开,且服务总开关为开时,则继续执行监听所述服务App是否发生变化的操作。
在一些可能的实现方式中,判断服务App的服务状态是否未初始化,可以包括:如果初始化服务对服务App完成拉起服务,则服务App的服务状态已初始化;若初始化服务对服务App未完成拉起服务,则服务App的服务状态未初始化。
由此,可以判断服务App的服务状态是否未初始化,从而获取初始服务状态,或完成初始服务状态更新。
在一些可能的实施方式中,获取初始服务状态,包括:获取通用模型配置文件;解析通用模型配置文件,获取通用模型配置文件中的服务属性和服务属性对应的服务App的包名;基于服务App的包名,获取服务App的版本信息,同时判断是否有初始化服务定义的配置项;若不存在初始化服务定义的配置项,则查询下一个服务App是否存在所述初始化服务定义的配置项;若存在初始化服务定义的配置项,则对服务App完成拉起服务;基于所述拉起服务,获取初始服务状态。
在一些可能的实施方式中,对初始服务状态进行更新,包括:获取通用模型配置文件;解析通用模型配置文件,获取通用模型配置文件中的服务属性和服务属性对应的服务App的包名;基于服务App的包名,获取服务App的版本信息,同时判断是否有初始化服务定义的配置项、服务App的版本信息是否更新;若不存在所述初始化服务定义的配置项,则查询下一个服务App是否存在初始化服务定义的配置项;若服务App的版本信息未更新,则查询下一个服务App的版本信息是否更新;若存在初始化服务定义的配置项且服务App的版本信息更新,则对服务App完成拉起服务;基于拉起服务,对初始服务状态进行更新。
由此,可以获取初始服务状态或对初始服务状态进行更新,获取初始服务状态,进而使初始化服务监听到服务App发生变化后,对初始服务状态完成初始化,从而达到通过一个通用模型配置完成通用状态的初始化,从而降低配置文件的编写、维护和固件配置成本,并缩短电子设备迭代的周期的有益效果。
在一些可能的实施方式中,电子设备获取通用模型配置文件,可以包括:获取电子设备的设备类型;基于所述电子设备的设备类型,获取对应类型的通用模型配置文件。
在一些可能的实施方式中,电子设备获取其备类型,可以包括:判断服务总开关和用户授权开关是否开启;若服务总开关和用户授权开关均开启,则获取电子设备的设备类型。
在一些可能的实施方式中,该方法还包括:电子设备将服务属性、服务App的版本信息、初始服务状态保存至内存和数据库中。
第二方面,本申请公开了一种电子设备,包括处理器和存储器;存储器用于存储计算机执行命令;处理器用于执行存储器存储的计算机执行命令,使得处理器执行如第一方面中的方法。
第三方面,本申请公开了一种计算机可读存储介质,计算机可读存储介质中存储有计算机程序或指令,当计算机程序或指令被运行时,实现如第一方面中的方法。
第四方面,本申请公开了一种计算机程序产品,包括计算机程序或指令,计算机程序或指令被处理器执行时,实现如第一方面中的方法。
基于上述技术方案,本申请具有如下有益效果:
本申请公开了一种服务状态初始化的统一方法及电子设备,初始化服务可以监听服务App是否发生变化,若服务App发生变化,则判断是否存在配置项;若存在配置项,则对服务App完成拉起服务后获取服务状态配置,并将所述获取到的服务状态配置更新到内存或数据库中。由此,能够通过一个通用模型配置完成通用状态的初始化,从而降低配置文件的编写、维护和固件配置成本,并缩短电子设备迭代的周期。并且,若对服务APP进行了安装或升级,则说明该服务APP的版本出现了变化,则本申请可以快速安装或更新服务App完成服务使能;若对服务APP进行了卸载,也可以完成功能的关闭。
应当理解的是,本申请中对技术特征、技术方案、有益效果或类似语言的描述并不是暗示在任意的单个实施例中可以实现所有的特点和优点。相反,可以理解的是对于特征或有益效果的描述意味着在至少一个实施例中包括特定的技术特征、技术方案或有益效果。因此,本说明书中对于技术特征、技术方案或有益效果的描述并不一定是指相同的实施例。进而,还可以任何适当的方式组合本实施例中所描述的技术特征、技术方案和有益效果。本领域技术人员将会理解,无需特定实施例的一个或多个特定的技术特征、技术方案或有益效果即可实现实施例。在其他实施例中,还可在没有体现所有实施例的特定实施例中识别出额外的技术特征和有益效果。
附图说明
图1为本申请实施例提供的一种固件集成型号配置示意图;
图2为本申请实施例提供的一种电子设备的硬件结构示意图;
图3为本申请实施例提供的一种服务状态初始化的统一方法流程图;
图4为本申请实施例提供的一种获取初始服务状态的交互图;
图5为本申请实施例提供的一种对初始服务状态进行更新的交互图;
图6为本申请实施例提供的一种服务APP变化后对初始服务状态完成初始化的交互图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述。以下实施例中所使用的术语只是为了描述特定实施例的目的,而并非旨在作为对本申请的限制。如在本申请的说明书和所附权利要求书中所使用的那样,单数表达形式“一个”、“一种”、“所述”、“上述”、“该”和“这一”旨在也包括例如“一个或多个”这种表达形式,除非其上下文中明确地有相反指示。还应当理解,在本申请实施例中,“一个或多个”是指一个、两个或两个以上;“和/或”,描述关联对象的关联关系,表示可以存在三种关系;例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B的情况,其中A、B可以是单数或者复数。字符“/”一般表示前后关联对象是一种“或”的关系。
在本说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本申请的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。术语“包括”、“包含”、“具有”及它们的变形都意味着“包括但不限于”,除非是以其他方式另外特别强调。
本申请实施例涉及的多个,是指大于或等于两个。需要说明的是,在本申请实施例的描述中,“第一”、“第二”等词汇,仅用于区分描述的目的,而不能理解为指示或暗示相对重要性,也不能理解为指示或暗示顺序。
在超级终端的业务场景下,相同类型、不同型号的电子设备的初始服务状态(服务状态,即服务支持能力,例如是否支持协同、分享、投屏等功能状态)是不同的,例如低端手机不支持服务状态switch,中段手机支持服务状态switch但默认为关闭,高端手机支持服务状态switch且默认为开启。因此,目前相同类型、不同型号的电子设备需要通过不同的配置文件进行初始服务状态的配置。
然而,如果相同类型、不同型号的电子设备通过不同的配置文件进行初始服务状态的配置,一方面配置文件的编写、维护和固件配置成本会大大增加,另一方面服务状态也无法做到独立升级迭代,而必须随系统固件的更新而更新,导致无法在短周期内完成更新迭代。
参见图1,该图为本申请实施例提供的一种固件集成型号配置示意图。手机A、手机B、大屏A等电子设备需要分别将手机型号A配置、手机型号B配置、大屏型号A配置等配置分别打包输入至配置服务器,配置服务器输出各自电子设备的型号及其配置后,触发初始化服务(DM)自启动。初始化服务(DM)启动后,需要先读取指定配置文件并获取手机A、手机B、大屏A等电子设备的初始化状态,从而进一步生成手机型号A、手机型号B和大屏型号A的配置文件。这种方法导致每个型号设备、每个固件版本都需要去更新配置文件并配置到固件中,一方面配置文件的编写、维护和固件配置成本会大大增加,另一方面初始服务状态也无法做到独立升级迭代,而必须随系统固件的更新而更新,导致无法在短周期内完成更新迭代。
由此,本申请公开了一种服务状态初始化的统一方法及电子设备,初始化服务可以监听服务App是否发生变化,若服务App发生变化,则判断是否存在配置项;若存在配置项,则对服务App完成拉起服务后获取服务状态配置,并将所述获取到的服务状态配置更新到内存或数据库中。由此,能够通过一个通用模型配置完成通用状态的初始化,从而降低配置文件的编写、维护和固件配置成本,并缩短电子设备迭代的周期。并且,若对服务APP进行了安装或升级,则说明该服务APP的版本出现了变化,则本申请可以快速安装或更新服务App完成服务使能;若对服务APP进行了卸载,也可以完成功能的关闭。
在一些实施例中,电子设备可以是手机、Pad、大屏和PC等设备,本申请对上述电子设备的具体形式不做特殊限制。在本实施例中,电子设备的结构可以如图2所示,图2为本申请实施例提供的一种电子设备的硬件结构示意图。
如图2所示,电子设备200可以包括处理器201,存储器202,通用串行总线(universal serial bus,USB)接口203,射频电路204,移动通信模块205,无线通信模块206,摄像头207,显示屏208,触摸传感器209,气压传感器210和按键211等。
处理器201可以包括一个或多个处理单元,例如:处理器201可以包括应用程序处理器(application processor,AP),调制解调处理器,图形处理器(graphics processingunit,GPU),图像信号处理器(image signal processor,ISP),视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中,例如集成在系统芯片(system on a chip,SoC)中。处理器201中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器201中的存储器为高速缓冲存储器。该存储器可以保存处理器201刚用过或循环使用的指令或数据。
在一些实施例中,处理器201可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuitsound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purposeinput/output,GPIO)接口,用户标识模块(subscriber identitymodule,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
存储器202可以用于存储计算机可执行程序代码,可执行程序代码包括指令。存储器202可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统、至少一个功能所需的应用程序程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储电子设备200使用过程中所创建的数据(比如音频数据,电话本等)等。此外,存储器202可以包括一个或者多个存储单元,例如可以包括易失性存储器(volatile memory),如:动态随机存取存储器(dynamic random access memory,DRAM)、静态随机存取存储器(static randomaccess memory,SRAM)等;还可以包括非易失性存储器(non-volatile memory,NVM),如:只读存储器(read-only memory,ROM)、闪存(flash memory)等。处理器201通过运行存储在存储器202的指令,和/或存储在设置于处理器中的存储器的指令,执行电子设备200的各种功能应用程序以及数据处理。
电子设备200的无线通信功能可以通过射频电路204、移动通信模块205、无线通信模块206、调制解调处理器以及基带处理器等实现。
射频电路204可以包括至少一个天线,用于发射和接收电磁波信号。电子设备200中的每个天线可用于覆盖单个或多个通信频带。在一些实施例中,天线可以和调谐开关结合使用。
移动通信模块205可以提供应用程序在电子设备200上的包括2G/3G/4G/5G等无线通信的解决方案。移动通信模块205可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。移动通信模块205可以由天线接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。移动通信模块205还可以对经调制解调处理器调制后的信号放大,经天线转为电磁波辐射出去。在一些实施例中,移动通信模块205的至少部分功能模块可以被设置于处理器201中。在一些实施例中,移动通信模块205的至少部分功能模块可以与处理器201的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用程序处理器。应用程序处理器通过音频设备(包括但不限于扬声器,受话器等)输出声音信号,或通过显示屏208显示图像或视频。在一些实施例中,调制解调处理器可以是独立的器件。在另一些实施例中,调制解调处理器可以独立于处理器201,与移动通信模块205或其他功能模块设置在同一个器件中。
无线通信模块206可以包括无线保真(wireless fidelity,Wi-Fi)模块,蓝牙(bluetooth,BT)模块、GNSS模块、近距离无线通信技术(near field communication,NFC)模块、红外(infrared,IR)模块等。无线通信模块206可以是集成上述至少一个模块的一个或多个器件。无线通信模块206经由天线接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器201。无线通信模块206还可以从处理器201接收待发送的信号,对其进行调频,放大,经天线转为电磁波辐射出去。
本申请实施例中,电子设备200的无线通信功能例如可以包括全球移动通讯系统(global system for mobile communications,GSM),通用分组无线服务(general packetradio service,GPRS),码分多址接入(code division multiple access,CDMA),宽带码分多址(wideband code division multiple access,WCDMA),时分码分多址(time-divisioncode division multiple access,TD-SCDMA),长期演进(long term evolution,LTE),第五代移动通信技术新空口(5th generation mobile networks new radio,5G NR),BT,GNSS,WLAN,NFC,FM,和/或IR等功能。GNSS可以包括全球卫星定位系统(globalpositioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite basedaugmentation systems,SBAS)。
摄像头207用于捕获静态图像或视频。摄像头207包括镜头和感光元件,物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupleddevice,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给ISP转换成数字图像信号。ISP将数字图像信号输出到DSP加工处理。DSP将数字图像信号转换成标准的RGB,YUV,RYYB等格式的图像信号。在一些实施例中,电子设备200可以包括1个或N个摄像头207,N为大于1的正整数。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现电子设备200的智能认知等应用程序,例如:图像识别,人脸识别,语音识别,文本理解等。
显示屏208用于显示图像,视频等。显示屏208包括显示面板。显示面板可以采用液晶显示屏(liquid crystal display,LCD),有机发光二极管(organic light-emittingdiode,OLED),有源矩阵有机发光二极体或主动矩阵有机发光二极体(active-matrixorganic light emitting diode的,AMOLED),柔性发光二极管(flex light-emittingdiode,FLED),MiniLED,MicroLED,Micro-OLED,量子点发光二极管(quantum dot lightemitting diodes,QLED)等。在一些实施例中,电子设备200可以包括1个或N个显示屏208,N为大于1的正整数。
触摸传感器209,也称“触控器件”。触摸传感器209可以设置于显示屏208,由触摸传感器209与显示屏208组成触摸屏,也称“触控屏”。触摸传感器209用于检测作用于其上或附近的触摸操作。触摸传感器可以将检测到的触摸操作传递给应用程序处理器,以确定触摸事件类型。可以通过显示屏208提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器209也可以设置于电子设备200的表面,与显示屏208所处的位置不同。
气压传感器210用于测量气压。在一些实施例中,电子设备200通过气压传感器210测得的气压值计算海拔高度,辅助定位和导航。
按键211包括开机键,音量键等。按键211可以是机械按键。也可以是触摸式按键。电子设备200可以接收按键输入,产生与电子设备200的用户设置以及功能控制有关的键信号输入。
对于本领域的技术人员而言将显而易见的是,上文关于电子设备200所呈现的具体细中的一些细节可为实践特定的所述实施方案或其等同物所不需要的。类似地,其他电子设备可以包括更多数量的子系统、模块、部件等。在适当的情况下,一些子模块可以被实现为较件或硬件。因此,应当理解,上述描述并非旨在穷举或将本公开限制于本文所述的精确形式。相反,对于本领域的普通技术人员而言将显而易见的是,根据上述教导内容,许多修改和变型是可能的。
参见图3,该图为本申请实施例提供的一种服务状态初始化的统一方法流程图。该方法包括:
S31:判断服务App的服务状态是否未初始化,若是,则执行S32,若否,则执行S33。
服务指超级终端可以提供的服务,可以是接续、来电、通知、键鼠、协同、分享、投屏等。对于具体的服务内容,本申请不做限定。
服务状态指服务的支持能力,可以是是否支持接续、来电、通知、键鼠、协同、分享、投屏等服务。
服务App指的是能够提供具体能力的App,如超级终端、超级通话、分享等应用的Android安装包(APK,Android Package)。
若电子设备200的服务状态未初始化,则执行S32;若电子设备200的服务状态已初始化,则执行S33。
在一些实施例中,判断服务状态是否未初始化的方法可以是,查看初始化服务(DM)是否对服务App完成拉起服务。若初始化服务(DM)已对服务App完成拉起,则说明服务状态已初始化;若初始化服务(DM)未对服务APP完成拉起,则说明服务状态未初始化。其中,初始化服务(DM)指的是完成模型配置文件加载、定义服务差异化状态获取方式并从服务App中获取具体差异化状态、监听服务App变化事件,完成服务状态更新的应用。
需要说明的是,还有其他方法判断服务状态是否未初始化,关于判断的具体方法,本申请不做限定。
S32:获取初始服务状态。
若服务App的服务状态未初始化,则进行首次服务状态初始化,获取该服务App的初始服务状态。具体的,首次服务状态初始化指的是用户使用电子设备200首次打开服务App时,服务App的系统完成的首次服务状态初始化。
S33:初始服务状态更新。
若服务App的服务状态已初始化,即初始化服务已对服务App完成拉起服务,或服务App已完成系统更新,或服务App已完成设备重启,则对已经获取的初始服务状态进行更新。
在一些实施例中,服务App完成的系统更新可以是固件更新。固件更新,即对内嵌固件进行升级。固件更新可能导致服务App的初始服务状态发生变化。在一些实施例中,服务状态可以是电子设备200是否支持协同、分享、投屏等功能状态,例如原来不支持的协同服务,现在支持了,也可以是原来支持的服务,现在不支持了等。
S34:初始化服务(DM)监听服务App是否发生变化。
初始化服务(DM)会订阅服务App的系统事件,包括服务App的应用安装、应用卸载和应用升级。若服务App发生变化,则执行S35;若服务App没有发生变化,则继续执行S34,持续监听其变化情况。
S35:对初始服务状态完成初始化。
倘若服务App发生应用安装、应用卸载、应用升级后,初始化服务(DM)会将对发生事件的初始服务状态进行初始化。
以下是关于S32中如何获取初始服务状态的介绍。参见图4,该图为本申请实施例提供的一种获取初始服务状态的交互图。该方法包括:
S401:初始化服务(DM)随系统启动时启动。
获取初始服务状态时,即首次服务状态初始化时,初始化服务(DM)随系统的启动而启动。其中,首次服务状态初始化指的是用户使用电子设备200首次打开服务App时,服务App的系统完成的首次服务状态初始化。
S402:初始化服务(DM)读取服务总开关。
服务总开关,指的是控制所有服务是否支持的总开关,服务总开关的配置是随固件打包集成的。在一些实施例中,该服务可以是超级终端服务,也可以是超级通话服务、分享服务等,对于服务的具体内容,本申请不做限定。
在一些实施方式中,初始化服务(DM)可以通过固件中系统组件、产品组件的配置项读取的服务总开关。
S403:初始化服务(DM)读取用户授权开关。
用户授权开关指的是用户是否同意服务使能的开关,用户授权开关的配置只有在服务总开关配置成支持时才需要用户控制。
在一些实施方式中,用户首次拿到手机等电子设备200后,需要用户勾选“服务增强”开关,即为用户授权开关。用户勾选后电子设备200会对服务App进行监听,从而收集用户数据。
需要说明的是,可以先执行S402读取服务总开关,再执行S403读取用户手段开关,也可以先执行S403后执行S402,对于二者的先后顺序,本申请不做限定。
S404:初始化服务(DM)判断服务总开关和用户授权开关是否开启。
初始化服务(DM)读取服务总开关和用户授权开关后,判断服务总开关配置和用户授权开关状态,即判断服务总开关配置和用户授权开关是否开启。
如果服务总开关和用户授权开关二者中有一个关闭,则初始化服务(DM)退出,停止获取初始服务状态;若总服务总开关和用户授权开关二者都开启,则继续下一流程,执行S35。
S405:初始化服务(DM)获取电子设备类型。
如果总服务总开关和用户授权开关二者都开启时,初始化服务(DM)会先读取电子设备200的类型。具体的,初始化服务(DM)会判断该电子设备200是手机、Pad、大屏和PC中的具体哪一类。
S406:初始化服务(DM)获取对应电子设备类型的通用模型配置文件。
基于S405中获取的电子设备200的类型,初始化服务(DM)获取指定通用模型配置文件。其中,通用模型配置文件指的是完成一类电子设备200的服务定义和通用状态配置的文件,当前有手机、Pad、大屏和PC四类通用模型配置文件。即,倘若S405中获取的电子设备200的类型为手机,则获取的对应电子设备200类型的通用模型配置文件为手机模型配置文件;倘若S405中获取的电子设备200的类型为Pad,则获取的对应电子设备200类型的通用模型配置文件为Pad模型配置文件。
S407:初始化服务(DM)解析通用模型配置文件,获取通用模型配置文件中的服务属性和服务属性对应的服务App的包名。
服务属性,即服务App的一种功能状态,例如超级终端功能状态switch即为一种服务属性。服务App的包名即为Android安装包(APK,Android Package)的名称。包名是区分Android安装包的唯一标识,为了避免与其他应用的包名重复产生冲突,不同Android安装包的名称均不相同。
初始化服务(DM)可以解析获取到的模型配置文件,获取配置文件中的服务属性和服务属性对应的服务App的包名。
S408:将服务属性和服务App的包名保存至内存和数据库中。
初始化服务(DM)获取配置文件中的服务属性和服务App的包名后,将模型配置文件中配置的服务属性和服务App的包名保存到内存和数据库中。
S409:服务APP按照初始化服务(DM)的定义规范进行manifest配置和接口实现。
S410:初始化服务(DM)通过服务App的包名遍历对应服务App的manifest配置文件,获取App的版本信息。
服务APP此前已按照初始化服务(DM)的定义规范进行了manifest配置和端口的实现,通过S407中初始化服务(DM)获取的服务包名遍历对应服务App的manifest配置文件。由于不同版本的服务App的包名不同,所以可以获取相应的服务App的版本信息并保存在数据中。包名是区分Android安装包的唯一标识,为了避免与其他应用的包名重复产生冲突,不同Android安装包的名称均不相同,因此可以通过服务App的包名获取服务App的版本信息。
S411:初始化服务(DM)通过服务包名遍历对应服务App的manifest配置文件,判断是否有初始化服务(DM)定义的配置项。
初始化服务(DM)通过服务包名遍历对应服务App的manifest配置文件,判断是否有初始化服务(DM)定义的配置项。
如果有初始化服务(DM)规范配置,则完成S412;如果没有初始化服务(DM)规范配置,则执行S415。
S412:完成拉起服务。
如果有初始化服务(DM)规范配置,则对服务App完成拉起服务。
S413:获取服务状态配置。
通过调用接口获取到服务App中内置的初始服务状态配置,即型号差异化配置。
S414:将获取到的服务状态配置保存到内存和数据库中。
S415:查询下一个应用是否有初始化服务(DM)定义的配置项,直至遍历所有服务App。
如果没有初始化服务(DM)规范配置,则在电子设备的程序列表中查询下一个应用是否有初始化服务(DM)定义的配置项,直至遍历电子设备的程序列表中的所有服务App。将当所有服务App遍历完成后,即完成服务状态初始化逻辑。具体的,该接口为程序代码的接口。
以下是关于如何对初始服务状态进行更新的介绍。参见图5,该图为本申请实施例提供的一种对初始服务状态进行更新的交互图。其中,S501-S505、S507-S509与S401-S405、S407-S409步骤相同,这里不做赘述。该方法包括:
S501:初始化服务(DM)会随系统启动时启动。
S502:初始化服务(DM)读取服务总开关。
S503:初始化服务(DM)读取用户授权开关。
S504:初始化服务(DM)判断服务总开关和用户授权开关是否开启。
S505:初始化服务(DM)获取电子设备类型。
S506:初始化服务(DM)加载对应类型的通用模型配置文件。
基于S505获取的电子设备200的类型加载指定通用模型配置文件。其中,与S406不同的是,在加载指定通用模型配置文件时,会刷新原有已经保存在数据库中的数据。
S507:初始化服务(DM)解析通用模型配置文件,获取通用模型配置文件中的服务属性和服务属性对应的服务App的包名。
S508:将服务属性和服务App的包名保存至内存和数据库中。
S509:服务APP按照初始化服务(DM)的定义规范进行manifest配置和接口实现。
S510:初始化服务(DM)通过服务App的包名遍历对应服务App的manifest配置文件,获取App的版本信息,并判断是否有初始化服务(DM)定义的配置项。
服务APP此前已按照初始化服务(DM)的定义规范进行了manifest配置和端口的实现,通过S407中初始化服务(DM)获取的服务包名遍历对应服务App的manifest配置文件。由于不同版本的服务App的包名不同,所以可以获取相应的服务App的版本信息并保存在数据中。包名是区分Android安装包的唯一标识,为了避免与其他应用的包名重复产生冲突,不同Android安装包的名称均不相同,因此可以通过服务App的包名获取服务App的版本信息。
初始化服务(DM)通过服务包名遍历对应服务App的manifest配置文件,判断是否有初始化服务(DM)定义的配置项。
如果有初始化服务(DM)定义的配置项且版本有更新,则执行S511至S513的所有操作;如果没有初始化服务(DM)规范配置而版本有更新,则执行S514;如果没有APP版本变化,则执行S86;如果二者均没有变化则S85、S86均需执行。
S511:完成拉起服务。
如果有初始化服务(DM)规范配置,且服务App的版本信息有更新,则对服务App完成拉起服务。
S512:获取服务状态配置。
S513:将获取到的服务状态配置保存到内存和数据库中。
S514:查询下一个应用是否有初始化服务(DM)定义的配置项,直至遍历所有服务App。
如果没有初始化服务(DM)规范配置,则在电子设备200的程序列表中查询下一个应用是否有初始化服务(DM)定义的配置项,直至遍历电子设备200的程序列表中的所有服务App。
S515:查询下一个服务App是否有版本变化,直至遍历所有服务App。
如果没有APP版本变化,则在电子设备200的程序列表中查询下一个服务App是否有版本变化,直至遍历电子设备200的程序列表中的所有服务App。
在一些实施方式中,该流程可能会存在新增服务APP的场景。若处在新增服务APP,也按照此流程进行。当所有服务App遍历完成后即完成服务状态初始化逻辑。
以下是关于初始服务状态完成初始化的介绍。参见图6,该图为本申请实施例提供的一种服务APP变化后对初始服务状态完成初始化的交互图。
S61:初始化服务(DM)在运行过程中监听用户授权开关变化。
S62:初始化服务(DM)在运行过程中监听服务App的安装、升级、卸载事件。
S63:初始化服务(DM)接收用户授权开关变化通知。
倘若用户对电子设备200的用户授权开关的开关状态进行了变化,则用户授权开关会发送开关变化通知给初始化服务(DM)。初始化服务(DM)在接收到用户的开关变化通知后,对服务APP进行相应操作。
在一些实施例中,当用户更新电子设备200的用户授权开关,使用户授权开关由开变为关时,初始化服务(DM)需要关闭服务APP的服务,例如超级终端服务。当用户授权开关由关变为开,且服务总开关为开时,则重新完成初始化流程;当用户授权开关由关变为开,且服务总开关为关时,则无动作。
S94:初始化服务(DM)接收服务APP的安装、卸载和升级事件通知。
当电子设备200收到服务App的卸载事件时,需要更新其服务状态为不支持,即将对应服务的状态关闭。
当电子设备200收到服务App的授权安装和升级事件时,则说明服务APP的版本发生了变化,需要遍历服务manifest读取服务APP的版本并查看是否配置了初始化服务(DM)定义指定的配置项。如果配置了初始化服务(DM)定义的配置项,则对服务App完成拉起服务后,通过调用接口获取到服务App中内置的初始服务状态,随后初始化服务(DM)将获取到的服务状态配置更新到内存和数据库中。
在一些实施例中,服务APP的版本可以没有发生变化。若APP版本无变化,则无动作。
本申请公开了一种服务状态初始化的统一方法,初始化服务可以监听服务App是否发生变化,若服务App发生变化,则判断是否存在配置项;若存在配置项,则对服务App完成拉起服务后获取服务状态配置,并将所述获取到的服务状态配置更新到内存或数据库中。由此,能够通过一个通用模型配置完成通用状态的初始化,从而降低配置文件的编写、维护和固件配置成本,并缩短电子设备迭代的周期。并且,若对服务APP进行了安装或升级,则说明该服务APP的版本出现了变化,则本申请可以快速安装或更新服务App完成服务使能;若对服务APP进行了卸载,也可以完成功能的关闭。
本申请实施例还提供一种电子设备200,包括处理器和存储器。存储器存储计算机执行指令,处理器执行存储器存储的计算机执行指令,使得处理器执行上述方法实施例中电子设备200执行的各个功能或者步骤。
本申请实施例还提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现上述方法实施例中电子设备200执行的各个功能或者步骤。
本申请实施例还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时,实现上述方法实施例中电子设备200执行的各个功能或者步骤。
需要说明的是,上述方法实施例涉及的各步骤的所有相关内容均可以援引到对应功能模块的功能描述,在此不再赘述。
在上述实施例中的功能或动作或操作或步骤等,可以全部或部分地通过软件、硬件、固件或者其任意组合来实现。当使用软件程序实现时,可以全部或部分地以计算机程序产品的形式来实现。该计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行计算机程序指令时,全部或部分地产生按照本申请实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络、或者其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,例如,所述计算机指令可以从一个网站站点、计算机、服务器或者数据中心通过有线(例如同轴电缆、光纤、数字用户线(digital subscriber line,DSL))或无线(例如红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质或者是包括一个或多个可以用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(例如,软盘、硬盘、磁带),光介质(例如,DVD)、或者半导体介质(例如固态硬盘(solid state disk,SSD))等。
尽管结合具体特征及其实施例对本申请进行了描述,显而易见的,在不脱离本申请的精神和范围的情况下,可对其进行各种修改和组合。相应地,本说明书和附图仅仅是所附权利要求所界定的本申请的示例性说明,且视为已覆盖本申请范围内的任意和所有修改、变化、组合或等同物。
以上所述,仅为本申请的具体实施方式,但本申请的保护范围并不局限于此,任何在本申请揭露的技术范围内的变化或替换,都应涵盖在本申请的保护范围之内。因此,本申请的保护范围应以所述权利要求的保护范围为准。

Claims (8)

1.一种服务状态初始化的统一方法,其特征在于,应用于包含服务App的电子设备,所述方法包括:
判断所述服务App的服务状态是否未初始化,所述服务App是能够为所述电子设备提供具体能力的App;
若所述服务App的服务状态未初始化,则获取初始服务状态;
若所述服务App的服务状态已初始化,则对所述初始服务状态进行更新;
监听所述服务App是否发生变化,所述变化包括应用安装、应用卸载或应用升级;
若所述服务App发生变化,则判断是否存在配置项;
若存在配置项,则对所述服务App完成拉起服务;
基于所述拉起服务,获取所述服务App的更新后的服务状态;
将所述更新后的服务状态更新到内存或数据库中;
所述获取初始服务状态,包括:
获取通用模型配置文件;
解析所述通用模型配置文件,获取所述通用模型配置文件中的服务属性和所述服务属性对应的服务App的包名;
基于所述服务App的包名,获取所述服务App的版本信息,同时判断是否有初始化服务定义的配置项;
若不存在所述初始化服务定义的配置项,则查询下一个所述服务App是否存在所述初始化服务定义的配置项;
若存在所述初始化服务定义的配置项,则对所述服务App完成拉起服务;
基于所述拉起服务,获取初始服务状态;
所述对所述初始服务状态进行更新,包括:
获取通用模型配置文件;
解析所述通用模型配置文件,获取所述通用模型配置文件中的服务属性和所述服务属性对应的所述服务App的包名;
基于所述服务App的包名,获取所述服务App的版本信息,同时判断是否有初始化服务定义的配置项、所述服务App的版本信息是否更新;
若不存在所述初始化服务定义的配置项,则查询下一个所述服务App是否存在所述初始化服务定义的配置项;
若所述服务App的版本信息未更新,则查询下一个所述服务App的版本信息是否更新;
若存在所述初始化服务定义的配置项且所述服务App的版本信息更新,则对所述服务App完成拉起服务;
基于所述拉起服务,对初始服务状态进行更新。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
监听用户授权开关的变化情况;
若接收到所述用户授权开关由开变为关时,则关闭所述服务App;
若接收到所述用户授权开关由关变为开,且服务总开关为开时,则继续执行所述监听所述服务App是否发生变化的操作。
3.根据权利要求1所述的方法,其特征在于,所述判断所述服务App的服务状态是否未初始化,包括:
若初始化服务对所述服务App完成拉起服务,则所述服务App的服务状态已初始化;
若初始化服务对所述服务App未完成拉起服务,则所述服务App的服务状态未初始化。
4.根据权利要求1所述的方法,其特征在于,所述获取通用模型配置文件,包括:
获取所述电子设备的设备类型;
基于所述电子设备的设备类型,获取对应类型的通用模型配置文件。
5.根据权利要求4所述的方法,其特征在于,所述获取所述电子设备的设备类型,包括:
判断服务总开关和用户授权开关是否开启;
若所述服务总开关和所述用户授权开关均开启,则获取所述电子设备的设备类型。
6.根据权利要求1所述的方法,其特征在于,所述方法还包括:
将所述服务属性、所述服务App的版本信息、所述初始服务状态保存至内存和数据库中。
7.一种电子设备,其特征在于,包括处理器和存储器;
所述存储器存储计算机执行指令;
所述处理器执行所述存储器存储的计算机执行指令,使得所述处理器执行如权利要求1-6中任一项所述的方法。
8.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序或指令,当所述计算机程序或指令被运行时,实现如权利要求1-6中任一项所述的方法。
CN202211321546.8A 2022-10-26 2022-10-26 一种服务状态初始化的统一方法及电子设备 Active CN116679990B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202211321546.8A CN116679990B (zh) 2022-10-26 2022-10-26 一种服务状态初始化的统一方法及电子设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202211321546.8A CN116679990B (zh) 2022-10-26 2022-10-26 一种服务状态初始化的统一方法及电子设备

Publications (2)

Publication Number Publication Date
CN116679990A CN116679990A (zh) 2023-09-01
CN116679990B true CN116679990B (zh) 2024-04-05

Family

ID=87781453

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202211321546.8A Active CN116679990B (zh) 2022-10-26 2022-10-26 一种服务状态初始化的统一方法及电子设备

Country Status (1)

Country Link
CN (1) CN116679990B (zh)

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106921746A (zh) * 2017-03-22 2017-07-04 重庆允升科技有限公司 一种数据同步系统及数据同步方法
CN108197139A (zh) * 2017-11-22 2018-06-22 链家网(北京)科技有限公司 一种同步更新配置项的处理方法及终端
CN114125130A (zh) * 2020-08-25 2022-03-01 荣耀终端有限公司 控制通信服务状态的方法、终端设备和可读存储介质
CN114840213A (zh) * 2022-04-24 2022-08-02 网易(杭州)网络有限公司 一种服务实例配置管理方法和装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106921746A (zh) * 2017-03-22 2017-07-04 重庆允升科技有限公司 一种数据同步系统及数据同步方法
CN108197139A (zh) * 2017-11-22 2018-06-22 链家网(北京)科技有限公司 一种同步更新配置项的处理方法及终端
CN114125130A (zh) * 2020-08-25 2022-03-01 荣耀终端有限公司 控制通信服务状态的方法、终端设备和可读存储介质
CN114840213A (zh) * 2022-04-24 2022-08-02 网易(杭州)网络有限公司 一种服务实例配置管理方法和装置

Also Published As

Publication number Publication date
CN116679990A (zh) 2023-09-01

Similar Documents

Publication Publication Date Title
CN114461239B (zh) 软件升级系统和软件升级方法
CN112860445B (zh) 一种快应用与原生应用间数据共享的方法及终端
WO2021073337A1 (zh) 安装插件的方法、装置和存储介质
CN116114239B (zh) 音量管理的方法及电子设备
CN116339821B (zh) 一种显示模组接口兼容方法及电子设备
CN115333941B (zh) 获取应用运行情况的方法及相关设备
CN115185652B (zh) 应用优化方法、装置以及电子设备
CN113608753A (zh) 应用卸载方法、应用恢复方法、电子设备以及存储介质
CN116679990B (zh) 一种服务状态初始化的统一方法及电子设备
CN115941836B (zh) 一种界面显示方法、电子设备及存储介质
WO2022228180A1 (zh) 一种应用的管理方法和电子设备
WO2022042765A1 (zh) 一种显示方法及电子设备
CN116954441A (zh) 设备控制方法及电子设备
CN114237776B (zh) 交互方法、装置和电子设备
CN113467821A (zh) 应用程序的修复方法、装置、设备及可读存储介质
CN117707562B (zh) 参数更新方法和终端设备
CN116048545B (zh) 一种弹窗广告的处理方法、电子设备及可读存储介质
CN116719376B (zh) 电压控制方法、装置、设备和存储介质
CN116048544B (zh) 一种弹窗广告的处理方法、电子设备及可读存储介质
WO2024131823A1 (zh) 免安装应用的升级方法及电子设备
CN116841575B (zh) 生成镜像文件的方法及相关装置
CN116541188B (zh) 通知显示方法、终端设备及存储介质
WO2024179203A1 (zh) 语音控制方法及电子设备
CN117950677A (zh) 一种软件分发方法、电子设备及系统
CN118672610A (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