WO2023151440A1 - 程序更新处理 - Google Patents

程序更新处理 Download PDF

Info

Publication number
WO2023151440A1
WO2023151440A1 PCT/CN2023/071298 CN2023071298W WO2023151440A1 WO 2023151440 A1 WO2023151440 A1 WO 2023151440A1 CN 2023071298 W CN2023071298 W CN 2023071298W WO 2023151440 A1 WO2023151440 A1 WO 2023151440A1
Authority
WO
WIPO (PCT)
Prior art keywords
update
target
information
subroutine
subprogram
Prior art date
Application number
PCT/CN2023/071298
Other languages
English (en)
French (fr)
Inventor
边炀凯
党家豪
王少龙
Original Assignee
支付宝(杭州)信息技术有限公司
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 支付宝(杭州)信息技术有限公司 filed Critical 支付宝(杭州)信息技术有限公司
Publication of WO2023151440A1 publication Critical patent/WO2023151440A1/zh

Links

Images

Classifications

    • 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
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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
    • G06F9/4451User profiles; Roaming

Definitions

  • This document relates to the technical field of data processing, in particular to a program update processing method and device.
  • the program update processing method includes: querying the update configuration status of the target subprogram according to the version update information of the target subprogram. If the update configuration state is the update enabled state, read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information. The update configuration information and the version update information are combined to obtain an update package of the target subprogram. If it is detected that the device client of the terminal device invokes the service interface to access the target subprogram, then deliver the update program package to the service interface.
  • One or more embodiments of the present specification provide a program update processing device, including: a status query module configured to query the update configuration status of the target subprogram according to the version update information of the target subprogram. If the update configuration state is the update enabled state, then run the information construction module, the information construction module is configured to read the device information of the terminal device registered on the subroutine service platform, and based on the device information and The preset configuration information is used to construct the updated configuration information.
  • the information combining module is configured to combine the update configuration information and the version update information to obtain the update package of the target subprogram. If it is detected that the device client of the terminal device invokes the service interface to access the target subroutine, then the program package delivery module is run, and the program package delivery module is configured to deliver the program package delivery module to the device client. Update the package.
  • One or more embodiments of the present specification provide a program update processing device, including a processor and a memory configured to store computer-executable instructions.
  • the processor when the computer-executable instructions are executed, the processor: according to the version update information of the target subprogram, queries the update configuration status of the target subprogram. If the update configuration state is the update enabled state, read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information. The update configuration information and the version update information are combined to obtain an update package of the target subprogram. If it is detected that the device client of the terminal device invokes the service interface to access the target subprogram, then deliver the update program package to the service interface.
  • One or more embodiments of this specification provide a storage medium for storing computer-executable instructions.
  • the computer-executable instructions When the computer-executable instructions are executed by a processor, the following process is implemented: according to the version update information of the target subroutine, query the Describes the updated configuration status of the target subroutine. If the update configuration state is the update enabled state, read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information. The update configuration information and the version update information are combined to obtain an update package of the target subprogram. If it is detected that the device client of the terminal device invokes the service interface to access the target subprogram, then deliver the update program package to the service interface.
  • FIG. 1 is a processing flow chart of a program update processing method provided by one or more embodiments of this specification;
  • Fig. 2 is a processing flowchart of a program update processing method applied to a subprogram version update scenario provided by one or more embodiments of this specification;
  • FIG. 3 is a schematic diagram of a program update processing device provided by one or more embodiments of this specification.
  • Fig. 4 is a schematic structural diagram of a program update processing device provided by one or more embodiments of this specification.
  • FIG. 1 shows a processing flow chart of a program update processing method provided by this embodiment; referring to FIG. 2, it shows a program update processing method applied to a subprogram version update scenario provided by this embodiment Process flowchart.
  • the program update processing method provided in this embodiment specifically includes steps S102 to S108.
  • Step S102 according to the version update information of the target subprogram, query the update configuration status of the target subprogram.
  • the program update processing method provided in this embodiment is applied to the subprogram release platform.
  • the update configuration information is constructed according to the update status of the target subprogram, and the update configuration information is constructed.
  • the update configuration information and the version update information of the target subprogram are combined to obtain the update package of the target subprogram for the terminal device.
  • the Update the program package to load the latest version of the target subroutine on the device client, so as to determine whether to generate the update package of the target subroutine on the terminal device according to the update configuration status of the target subroutine.
  • an update program package of the target subroutine is generated, so as to improve the awareness of the version of the target subroutine by the user of the terminal device.
  • the target subroutine described in this embodiment refers to a program package or application component that is carried on the application platform (or application program) or is loaded and installed by the application platform. From a service point of view, the target subroutine has the ability to independently provide self-closed-loop services Capabilities, such as running subroutines that provide vehicle-related services or self-closed-loop capabilities for ordering services within the application.
  • the update configuration status is the status of whether to update the version of the target subprogram in real time configured by the subprogram provider of the target subprogram.
  • the update configuration state is configured in the following way: According to the subprogram provided by the target subprogram The party’s instruction to open the update configuration state of the target subroutine, record the update configuration state of the target subroutine as the update open state; or, according to the subprogram provider’s update configuration state of the target subroutine A close instruction, recording the update configuration state of the target subroutine as the update closed state.
  • the subprogram provider configures the update configuration status of the target subprogram during the delivery process of the target subprogram through the subprogram delivery platform, that is, configures whether to enable the target subprogram of the terminal device corresponding to the subprogram service platform.
  • the version is updated in real time. If the opening instruction of the update configuration state of the target subroutine configured by the subroutine provider, then record the update open state of the target subroutine; if the closing command of the update configuration state of the target subroutine configured by the subroutine provider, record the target subroutine Update closed status. Every time the subroutine provider sets and updates the configuration state, it makes a record.
  • the update configuration status of the target subroutine is found to be update enabled, read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information , if the update configuration status of the target subroutine is found to be update closed, it will not be processed.
  • this embodiment sets the sub-program service platform, and in The service interface corresponding to the subroutine service platform is configured on the terminal device to call the service interface during the process of accessing the subroutine associated with the device client through the device client of the terminal device, so as to save the cost of the device client on the terminal device.
  • the memory occupied by the terminal.
  • the service interface is a lightweight interface for a subroutine service of a third-party application, and if it is detected that the version update of the target subroutine in the subroutine corresponding to the third-party application is detected, the version update information is read , and execute the step of querying the update configuration status of the target subprogram according to the version update information of the target subprogram.
  • the update configuration state of the target subroutine configuration by the subroutine provider is the update enabled state
  • an update to the target subroutine is performed when the update is enabled for the first time, and the target subroutine is subsequently detected.
  • the update configuration status of the target subprogram is queried, and when the update configuration status is the update enabled state, the delivery process of the update package of the target subprogram is executed.
  • Step S104 if the update configuration state is the update enabled state, read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information.
  • the terminal devices described in this embodiment include but are not limited to at least one of the following: car-machine terminals installed in vehicles, terminal devices connected to vehicles, smart speakers, unmanned vending machines, autonomous radios, interactive advertising screens, POS devices, and smart Smart home appliances such as TVs and smart refrigerators.
  • the subroutine provider when executing the delivery process, first obtain the updated version information of the sub-application corresponding to the target sub-application in the third-party application, that is, the version update information, and then construct the specific update of the target sub-application by the sub-program service platform Configuration information; in order to improve the adaptability of the target subroutine, the subroutine provider will configure preset configuration information for the target subroutine; the preset configuration information includes the device screen information of the terminal device adapted to the target subroutine, and screen configuration parameters; in addition, the subroutine service platform will configure the menu information in the process of accessing the target subroutine on the terminal device based on the terminal device for device registration. Based on this, in the process of launching, first read the device information (device model, device screen parameters, etc.) The preset configuration information configured by the provider is used to construct the updated configuration information.
  • the update configuration information is constructed in the following manner: read the preset configuration information configured by the subprogram provider of the target subprogram; merge the preset configuration information With the device information, obtain the updated configuration information.
  • the preset configuration information configured by the subprogram provider is read, and the preset configuration information and device information are directly combined to obtain updated configuration information.
  • update coordination information is obtained, update configuration information and version update information are merged, and update package of the target subprogram is obtained.
  • the service interface After the service interface reads the update package in the process of accessing the target subprogram, it first bases on The device information in the update program package determines the target configuration parameters in the preset configuration information, and then loads the target subroutine through the device client based on the target configuration parameters.
  • the update configuration information is constructed in the following way: read the target subroutine The preset configuration information configured by the subroutine provider of the program; according to the device information, extract the target configuration parameters for the terminal device in the preset configuration information and use the target configuration parameters as the update configuration information.
  • Step S106 combining the update configuration information and the version update information to obtain an update package of the target subroutine.
  • the version update information of the target subprogram in the third-party application obtains the version update information of the target subprogram in the third-party application, and after constructing the update configuration information, merge the update configuration information and the version update information, and then repackage the merged result to obtain the update package of the target subprogram ;
  • the update package is signed, and in order to improve the convenience of the version management of the target subroutine,
  • a version identifier is set for each version; in an optional implementation mode provided by this embodiment, after obtaining the update package of the target subprogram, the following steps are performed: performing signature processing on the update package, and After the signature processing, the version identifier corresponding to the update program package is determined; wherein, the version identifier is delivered when the device client invokes the service interface to read the update program package.
  • Step S108 if it is detected that the device client of the terminal device invokes the service interface to access the target subroutine, deliver the update program package to the service interface.
  • the device client when the device client is running, it displays the access component of the target subroutine associated with the device client; when the device client detects that the access component is triggered, it calls the service interface and pass in the subroutine ID of the target subroutine and the program ID of the device client, so as to access the target subroutine through the service interface.
  • the association relationship is established in the following manner.
  • the update package is signed, so that the update package can be read in the service interface
  • the service interface After updating the program package, perform a handshake with the update program package, and after the handshake passes, the service interface opens the update resource package; among them, in the process of signing the update program package, a regular check is performed on the elements in the update program package Signature processing.
  • the service interface After the service interface reads the update package after signature processing, it will verify the signature based on the preset rules. If the signature verification is passed, it indicates that the update package is trusted and the update package is opened; if the signature verification fails, Then the update program package is not trusted, and in order to avoid affecting the security of the terminal device, the update program package is not opened.
  • the device client includes the host program configured by the device provider of the terminal device before leaving the factory; the device provider includes the producer, seller and/or service operator of the terminal device.
  • the device provider establishes the association between the device client and the target subroutine. After the association is established, the device client displays the access component of the target subroutine at runtime, and the device client detects that the access component is triggered. In the case of , the service interface configured by the device client is called to access the target subroutine, and the service interface reads and loads the update package to access the target subroutine through the device client.
  • the service interface reads the updated program package and version identifier, it performs the following operations: read the device The local program package of the target subroutine stored by the client; verify whether the version identifier is consistent with the version identifier of the local program package; if not, load the updated program package and display it through the device client; If they are consistent, load the local program package and display it through the device client.
  • the service interface After the service interface reads the updated program package and the version identifier, it first checks whether the version identifier is consistent with the version identifier of the local program package stored in the storage space of the terminal device. If they are consistent, it indicates that the version of the target subroutine is not To update, just load the local program package; if they are inconsistent, it means that the version of the target subroutine has been updated. In order to improve the user's awareness of the version of the target subroutine, the updated program package is loaded.
  • the program update processing method specifically includes step S202 to step S216.
  • Step S202 detecting the update of the version of the target subprogram in the sub-application of the third-party application.
  • Step S204 if it is detected that the version update of the target subprogram in the sub-application of the third-party application is detected, the version update information of the sub-application of the third-party application is read.
  • Step S206 inquire about the updated configuration status of the target subprogram configured by the subprogram provider of the target subprogram.
  • Step S208 if the update configuration state is the update enabled state, then read the device information of the terminal device registered by the subroutine service platform.
  • Step S210 combining the device information and the preset configuration information configured by the subprogram provider to obtain updated configuration information.
  • Step S212 merging the update configuration information and the version update information to obtain an update package of the target subroutine.
  • Step S214 perform signature processing on the update program package, and determine the corresponding version identifier of the update program package after the signature process.
  • Step S216 if it is detected that the device client of the terminal device invokes the service interface to access the target subroutine, then deliver the update program package and version identification to the service interface.
  • the subprogram provider configures and updates the configuration state to improve the subprogram provider’s awareness of the management of the target subprogram; in the second aspect, the subprogram provider
  • the update configuration status of the party configuration is valid for the version update status of the target subprogram of the terminal device registered by the subprogram service platform, and is invalid for the subprogram corresponding to the target subprogram in the third-party application.
  • the target subroutine and the subroutine corresponding to the target subroutine in the third-party application are independent; in the third aspect, because the configuration of the target subroutine under the subroutine service platform is different from the configuration of the target subroutine in the third-party application, Therefore, in the process of updating the version of the target sub-application of the terminal device of the subroutine service platform, the update configuration information is constructed, and the update configuration information and the target subroutine are packaged in the version update information of the third-party application and released.
  • the update package of the target subroutine in the terminal device and the third-party application is different, and this difference determines the different display methods of the target subroutine on the terminal device and the third-party application; the fourth aspect, for the third-party application
  • the target subroutine of the terminal device and the target subroutine of the terminal device are managed separately, and the other party can continue to use it when one is offline.
  • An embodiment of a program update processing device provided in this specification is as follows: In the above-mentioned embodiment, a program update processing method is provided, and correspondingly, a program update processing device is also provided. Be explained.
  • FIG. 3 it shows a schematic diagram of a program update processing device provided in this embodiment.
  • the description is relatively simple. For relevant parts, please refer to the corresponding description of the method embodiment provided above.
  • the device embodiments described below are illustrative only.
  • This embodiment provides a program update processing device, including: a state query module 302 configured to query the update configuration status of the target subprogram according to the version update information of the target subprogram; if the update configuration status is update enabled state, the information construction module 304 is run, and the information construction module 304 is configured to read the device information of the terminal device registered on the subroutine service platform, and update the configuration based on the device information and preset configuration information Information construction; the information merging module 306 is configured to merge the update configuration information and the version update information to obtain the update package of the target subroutine; if it is detected that the device client of the terminal device calls the service interface After accessing the target subroutine, the program package delivery module 308 is executed, and the program package delivery module 308 is configured to deliver the update program package to the device client.
  • FIG. 4 is a schematic structural diagram of a program update processing device provided by one or more embodiments of this specification.
  • a program update processing device includes: as shown in FIG. 4 , the program update processing device may have relatively large differences due to different configurations or performances, and may include one or more than one processor 401 and memory 402 , one or more stored application programs or data may be stored in the memory 402 .
  • the storage 402 may be a short-term storage or a persistent storage.
  • the application program stored in the memory 402 may include one or more modules (not shown), and each module may include a series of computer-executable instructions in the program update processing device.
  • the processor 401 may be configured to communicate with the memory 402, and execute a series of computer-executable instructions in the memory 402 on the program update processing device.
  • the program update processing device may also include one or more power sources 403, one or more wired or wireless network interfaces 404, one or more input/output interfaces 405, one or more keyboards 406, and the like.
  • the program update processing device includes a memory, and one or more programs, wherein the one or more programs are stored in the memory, and the one or more programs may include one or more modules, and Each module may include a series of computer-executable instructions for updating a program in a processing device, and configured to be executed by one or more processors.
  • the one or more programs include computer-executable instructions for performing the following: For the version update information of the program, query the update configuration state of the target subroutine; if the update configuration state is the update open state, then read the device information of the terminal device for device registration on the subroutine service platform, and based on the The device information and preset configuration information are used to construct the update configuration information; the update configuration information and the version update information are merged to obtain the update package of the target subroutine; if it is detected that the device client of the terminal device calls When the service interface accesses the target subprogram, the update program package is delivered to the service interface.
  • An embodiment of a storage medium provided in this specification is as follows: Corresponding to a program update processing method described above, based on the same technical concept, one or more embodiments of this specification also provide a storage medium.
  • the storage medium provided in this embodiment is used to store computer-executable instructions, and when the computer-executable instructions are executed by a processor, the following process is implemented: according to the version update information of the target subprogram, query the update configuration of the target subprogram state; if the update configuration state is an update open state, then read the device information of the terminal device registered on the subroutine service platform, and construct the update configuration information based on the device information and preset configuration information; merge The update configuration information and the version update information are used to obtain the update package of the target subroutine; if it is detected that the device client of the terminal device invokes the service interface to access the target subroutine, then the Deliver the update package.
  • the improvement of a technology can be clearly distinguished as an improvement in hardware (for example, improvements in circuit structures such as diodes, transistors, switches, etc.) or improvements in software (improvement in method flow).
  • improvements in many current method flows can be regarded as the direct improvement of the hardware circuit structure.
  • Designers almost always get the corresponding hardware circuit structure by programming the improved method flow into the hardware circuit. Therefore, it cannot be said that the improvement of a method flow cannot be realized by hardware physical modules.
  • a Programmable Logic Device such as a Field Programmable Gate Array (FPGA)
  • FPGA Field Programmable Gate Array
  • HDL Hardware Description Language
  • the controller may be implemented in any suitable way, for example the controller may take the form of a microprocessor or processor and a computer readable medium storing computer readable program code (such as software or firmware) executable by the (micro)processor , logic gates, switches, Application Specific Integrated Circuit (ASIC), programmable logic controllers, and embedded microcontrollers, examples of controllers include but are not limited to the following microcontrollers: ARC 625D, Atmel AT91SAM, Microchip PIC18F26K20 and Silicone Labs C8051F320, the memory controller can also be implemented as part of the control logic of the memory.
  • ASIC Application Specific Integrated Circuit
  • controller in addition to realizing the controller in a purely computer-readable program code mode, it is entirely possible to make the controller use logic gates, switches, application-specific integrated circuits, programmable logic controllers, and embedded The same function can be realized in the form of a microcontroller or the like. Therefore, such a controller can be regarded as a hardware component, and the devices included in it for realizing various functions can also be regarded as structures within the hardware component. Or even, means for realizing various functions can be regarded as a structure within both a software module realizing a method and a hardware component.
  • a typical implementing device is a computer.
  • the computer may be, for example, a personal computer, a laptop computer, a cellular phone, a camera phone, a smart phone, a personal digital assistant, a media player, a navigation device, an email device, a game console, a tablet computer, a wearable device, or Combinations of any of these devices.
  • one or more embodiments of this specification may be provided as a method, system or computer program product. Accordingly, one or more embodiments of the present description may take the form of an entirely hardware embodiment, an entirely software embodiment, or an embodiment combining software and hardware aspects. Furthermore, the present description may take the form of a computer program product embodied on one or more computer-usable storage media (including but not limited to disk storage, CD-ROM, optical storage, etc.) having computer-usable program code embodied therein.
  • computer-usable storage media including but not limited to disk storage, CD-ROM, optical storage, etc.
  • These computer program instructions may also be stored in a computer-readable memory capable of directing a computer or other programmable data processing apparatus to operate in a specific manner, such that the instructions stored in the computer-readable memory produce an article of manufacture comprising instruction means, the instructions
  • the device realizes the function specified in one or more procedures of the flowchart and/or one or more blocks of the block diagram.
  • a computing device includes one or more processors (CPUs), input/output interfaces, network interfaces, and memory.
  • processors CPUs
  • input/output interfaces network interfaces
  • memory volatile and non-volatile memory
  • Memory may include non-permanent storage in computer readable media, in the form of random access memory (RAM) and/or nonvolatile memory such as read-only memory (ROM) or flash RAM. Memory is an example of computer readable media.
  • RAM random access memory
  • ROM read-only memory
  • flash RAM flash random access memory
  • Computer-readable media including both permanent and non-permanent, removable and non-removable media, can be implemented by any method or technology for storage of information.
  • Information may be computer readable instructions, data structures, modules of a program, or other data.
  • Examples of computer storage media include, but are not limited to, phase change memory (PRAM), static random access memory (SRAM), dynamic random access memory (DRAM), other types of random access memory (RAM), read only memory (ROM), Electrically Erasable Programmable Read-Only Memory (EEPROM), Flash memory or other memory technology, Compact Disc Read-Only Memory (CD-ROM), Digital Versatile Disc (DVD) or other optical storage, Magnetic tape cartridge, tape disk storage or other magnetic storage device or any other non-transmission medium that can be used to store information that can be accessed by a computing device.
  • computer-readable media excludes transitory computer-readable media, such as modulated data signals and carrier waves.
  • program modules include routines, programs, objects, components, data structures, etc. that perform particular tasks or implement particular abstract data types.
  • program modules may also be practiced in distributed computing environments where tasks are performed by remote processing devices that are linked through a communications network.
  • program modules may be located in both local and remote computer storage media including storage devices.

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

本说明书实施例提供了程序更新处理方法及装置。其中,一种程序更新处理方法包括:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。

Description

程序更新处理 技术领域
本文件涉及数据处理技术领域,尤其涉及一种程序更新处理方法及装置。
背景技术
随着互联网技术发展和移动终端的普及,越来越多的服务开始向线上场景延伸,出现诸如能够搭载多个应用子程序的应用平台软件,避免了用户在移动终端上安装不同类型的应用程序,而是借助应用平台软件内搭载的应用子程序来实现服务的办理,同时,应用子程序也可以充分利用应用平台软件充足的用户流量,以此为应用子程序的服务提升提供助力。
发明内容
本说明书一个或多个实施例提供了一种程序更新处理方法。所述程序更新处理方法,包括:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态。若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建。合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包。若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
本说明书一个或多个实施例提供了一种程序更新处理装置,包括:状态查询模块,被配置为根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态。若所述更新配置状态为更新开启状态,则运行信息构建模块,所述信息构建模块,被配置为读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建。信息合并模块,被配置为合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包。若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则运行程序包下发模块,所述程序包下发模块,被配置为向所述设备客户端下发所述更新程序包。
本说明书一个或多个实施例提供了一种程序更新处理设备,包括处理器以及被配置为存储计算机可执行指令的存储器。其中,所述计算机可执行指令在被执行时使所述处 理器:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态。若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建。合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包。若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
本说明书一个或多个实施例提供了一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态。若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建。合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包。若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
附图说明
为了更清楚地说明本说明书一个或多个实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本说明书中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图;
图1为本说明书一个或多个实施例提供的一种程序更新处理方法处理流程图;
图2为本说明书一个或多个实施例提供的一种应用于子程序版本更新场景的程序更新处理方法处理流程图;
图3为本说明书一个或多个实施例提供的一种程序更新处理装置示意图;
图4为本说明书一个或多个实施例提供的一种程序更新处理设备的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本说明书一个或多个实施例中的技术方案,下面将结合本说明书一个或多个实施例中的附图,对本说明书一个或多个实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本说明书的一部分实施例, 而不是全部的实施例。基于本说明书一个或多个实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本文件的保护范围。
本说明书提供的一种程序更新处理方法实施例。参照图1,其示出了本实施例提供的一种程序更新处理方法处理流程图;参照图2,其示出了本实施例提供的一种应用于子程序版本更新场景的程序更新处理方法处理流程图。
参照图1,本实施例提供的程序更新处理方法,具体包括步骤S102至步骤S108。
步骤S102,根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态。
本实施例提供的程序更新处理方法,应用于子程序投放平台,在检测到目标子程序的版本更新的情况下,根据目标子程序的更新开启状态,构建更新配置信息,在构建更新配置信息的情况下,将更新配置信息和目标子程序的版本更新信息合并,获得目标子程序针对终端设备的更新程序包,若检测到终端设备的设备客户端访问目标子程序,则向设备客户端下发更新程序包,以在设备客户端加载最新版本的目标子程序,以此根据目标子程序的更新配置状态决定是否生成目标子程序在终端设备的更新程序包,在检测到目标子程序的版本更新信息后,生成目标子程序的更新程序包,以此,提升终端设备所属的用户对目标子程序的版本的感知程度。
本实施例所述目标子程序,是指搭载于应用平台(或者应用程序)或者由应用平台加载安装的程序包或者应用组件,就服务角度而言,所述目标子程序具有独立提供自闭环服务的能力,比如运行在应用程序内提供车辆相关服务或者点单服务的自闭环能力的子程序。所述更新配置状态,为所述目标子程序的子程序提供方配置的是否实时对目标子程序的版本进行更新的状态。
为了提升子程序提供方对目标子程序的版本更新的感知程度和权限,本实施例提供的一种可选实施方式中,采用如下方式配置更新配置状态:根据所述目标子程序的子程序提供方对所述目标子程序的更新配置状态的开启指令,记录所述目标子程序的更新配置状态为更新开启状态;或者,根据所述子程序提供方对所述目标子程序的更新配置状态的关闭指令,记录所述目标子程序的更新配置状态为更新关闭状态。
具体的,子程序提供方在通过子程序投放平台进行目标子程序的投放过程中,配置对目标子程序的更新配置状态,即配置是否开启对子程序服务平台对应的终端设备的目标子程序的版本进行实时更新。若子程序提供方配置的目标子程序的更新配置状态的开启指令,则记录目标子程序的更新开启状态;若子程序提供方配置的目标子程序的更新 配置状态的关闭指令,则记录目标子程序的更新关闭状态。子程序提供方每设置一次更新配置状态,则做一次记录。
若查询到目标子程序的更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建,若查询到目标子程序的更新配置状态为更新关闭状态,则不作处理。
实际应用中,将第三方应用关联的子应用的程序包都存储在终端设备会占用终端设备大量的内存,拖慢终端设备运行速度;基于此,本实施例通过设置子程序服务平台,并在终端设备上配置子程序服务平台对应的服务接口,以在通过终端设备的设备客户端访问与设备客户端建立关联关系的子程序的过程中调用服务接口进行访问,以此节省终端设备上设备客户端所占的内存。可选的,所述服务接口为第三方应用的子程序服务的轻量化接口,若检测到所述目标子程序在所述第三方应用对应的子程序的版本更新,读取所述版本更新信息,并执行所述根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态步骤。
具体实施时,若子程序提供方对目标子程序配置的更新配置状态为更新开启状态,则在第一次设置该更新开启状态的时候执行一次对目标子程序的更新,后续在检测到目标子程序在第三方应用中对应的子程序的版本发布的情况下,查询目标子程序的更新配置状态,在更新配置状态为更新开启状态的情况下,执行对目标子程序的更新程序包的投放过程。
步骤S104,若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建。
本实施例所述终端设备,包括不限于下述至少一项:车辆安装的车机终端,车辆外接的终端设备,智能音箱,无人售卖机,自主收音机,互动广告屏,POS设备,以及智能电视、智能冰箱等智能家电产品。
具体实施时,在执行投放过程时,首先获取到第三方应用中目标子应用对应的子应用的更新之后的版本信息,即版本更新信息,然后构建子程序服务平台对目标子应用的特定的更新配置信息;为了提升目标子程序的适配性,子程序提供方会配置针对目标子程序的预设配置信息;所述预设配置信息包括,目标子程序适配的终端设备的设备屏幕信息,以及屏幕配置参数;此外,子程序服务平台会基于进行设备注册的终端设备,配 置在终端设备进行目标子程序访问过程中的菜单信息。基于此,在进行投放的过程中,首先在子程序服务平台读取进行设备注册的终端设备的设备信息(设备型号,设备屏幕参数等),在读取到设备信息之后,基于设备信息和子程序提供方配置的预设配置信息进行更新配置信息的构建。
本实施例提供的第一种可选实施方式中,采用如下方式构建更新配置信息:读取所述目标子程序的子程序提供方配置的所述预设配置信息;合并所述预设配置信息与所述设备信息,获得所述更新配置信息。
具体的,读取子程序提供方配置的预设配置信息,直接合并预设配置信息和设备信息获得更新配置信息。
需要说明的是,基于这种方式获得更新配合信息,合并更新配置信息和版本更新信息,获得目标子程序的更新程序包,服务接口访问目标子程序的过程中读取到更新程序包之后首先基于更新程序包中的设备信息确定预设配置信息中的目标配置参数,再基于目标配置参数通过设备客户端进行目标子程序的加载。
为了提升服务接口加载更新程序包的效率,进一步提升对目标子程序的访问效率,不本实施例提供的第二种可选实施方式中,采用如下方式构建更新配置信息:读取所述目标子程序的子程序提供方配置的所述预设配置信息;按照所述设备信息,提取所述预设配置信息中针对所述终端设备的目标配置参数并将所述目标配置参数作为所述更新配置信息。
即在构建更新配置信息的过程中,在读取到子程序提供方配置的预设配置信息后,按照读取到的终端设备的设备信息,提取预设配置信息中针对终端设备的目标配置参数,将目标配置参数作为更新配置信息。
需要说明的是,上述基于设备信息和预设配置信息构建更新配置信息的过程仅仅是示意性的,具体场景中可根据实际需求确定构建更新配置信息的数据,本实施例再此不作限定。
步骤S106,合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包。
具体实施时,获取目标子程序在第三方应用中的版本更新信息,并构建更新配置信息后,合并更新配置信息和版本更新信息,然后对合并结果进行重新打包,获得目标子程序的更新程序包;为了防止对更新程序包中信息被篡改,进而导致在对更新程序包进 行加载后影响终端设备的安全,对更新程序包进行签名处理,且为了提升对于目标子程序的版本管理的便捷性,为每一个版本设定一个版本标识;本实施例提提供的一种可选实施方式中,在获得目标子程序的更新程序包后,执行如下步骤:对所述更新程序包进行签名处理,并在签名处理后确定所述更新程序包对应的版本标识;其中,所述版本标识在所述设备客户端调用所述服务接口读取所述更新程序包时下发。
在获得更新程序包后,创建子程序服务平台下目标子程序的特有版本,并执行该特有版本的发布。
步骤S108,若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
可选的,所述设备客户端在运行时,展示与所述设备客户端具有关联关系的目标子程序的访问组件;所述设备客户端在检测到所述访问组件被触发,调用所述服务接口并传入所述目标子程序的子程序标识和所述设备客户端的程序标识,以通过所述服务接口进行所述目标子程序的访问。
本实施例提供的一种可选实施方式中,所述关联关系,采用如下方式建立,根据设备提供方针对所述终端设备的设备客户端进行子程序配置的配置请求,查询所述配置请求对应的所述目标子程序的权限策略类型;所述目标子程序为所述子程序服务平台的子程序池中的子程序;若所述目标子程序的子程序提供方针对所述目标子程序配置的权限策略类型为第一策略类型,则建立所述设备客户端与所述目标子程序的关联关系;若所述子程序提供方针对所述目标子程序配置的权限策略类型为第二策略类型,则在所述设备客户端处于所述第二权限策略对应的权限范围内的情况下,建立所述设备客户端与所述目标子程序的关联关系。
具体的,在获得目标子程序的更新程序包后,为了便于对目标子程序的更新版本的管理,以及保证更新程序包的安全性,对更新程序包进行签名处理,以在服务接口读取到更新程序包后,与更新程序包之间进行一次握手,握手通过后服务接口打开更新资源包;其中,对更新程序包进行签名处理的过程中,对更新程序包里的元素进行一个规则性的签名处理,服务接口在读取到签名处理之后的更新程序包后,基于预设规则进行验签,若验签通过,则表明信任该更新程序包,打开该更新程序包;若验签失败,则不信任该更新程序包,为了避免影响终端设备的安全,则不打开更新程序包。
所述设备客户端,包括终端设备的设备提供方在终端设备出厂前配置的宿主程序; 所述设备提供方,包括终端设备的生产方、销售方和/或终端设备的服务运维方。
需要说明的是,设备提供方建立设备客户端和目标子程序的关联关系,在建立关联关系之后,设备客户端在运行时展示目标子程序的访问组件,在设备客户端检测到访问组件被触发的情况下,调用设备客户端配置的服务接口进行目标子程序的访问,服务接口读取更新程序包并加载,以通过设备客户端进行目标子程序的访问。
为了进一步提升服务接口进行目标子程序的加载效率,本实施例提供的一种可选实施费按时中,服务接口在读取到更新程序包和版本标识后,执行如下操作:读取所述设备客户端存储的所述目标子程序的本地程序包;核验所述版本标识与所述本地程序包的版本标识是否一致;若不一致,加载所述更新程序包并通过所述设备客户端进行展示;若一致,加载所述本地程序包并通过所述设备客户端进行展示。
具体的,服务接口在读取到更新程序包和版本标识后,首先核验版本标识和终端设备的存储空间中存储的本地程序包的版本标识是否一致,若一致,则表明目标子程序的版本未更新,加载本地程序包即可;若不一致,则表明目标子程序的版本已更新,为了提升终端设备的所属用户对目标子程序的版本的感知程度,加载更新程序包。
下述以本实施例提供的一种程序更新处理方法在子程序版本更新场景的应用为例,对本实施例提供的程序更新处理方法进行进一步说明,参见图2,应用于子程序版本更新场景的程序更新处理方法,具体包括步骤S202至步骤S216。
步骤S202,检测目标子程序在第三方应用的子应用的版本更新情况。
步骤S204,若检测到目标子程序在第三方应用的子应用的版本更新情况,则读取第三方应用的子应用的版本更新信息。
步骤S206,查询目标子程序的子程序提供方配置的目标子程序的更新配置状态。
步骤S208,若更新配置状态为更新开启状态,则读取子程序服务平台进行设备注册的终端设备的设备信息。
步骤S210,合并设备信息和子程序提供方配置的预设配置信息,获得更新配置信息。
步骤S212,合并更新配置信息和版本更新信息,获得目标子程序的更新程序包。
步骤S214,对更新程序包进行签名处理,并在签名处理后确定更新程序包对应的版本标识。
步骤S216,若检测到终端设备的设备客户端调用服务接口访问目标子程序,则向服 务接口下发更新程序包和版本标识。
综上所述,本实施例提供的程序更新处理方法,第一方面,由子程序提供方配置更新配置状态,提升子程序提供方对目标子程序的管理的感知程度;第二方面,子程序提供方配置的更新配置状态对子程序服务平台进行设备注册的终端设备的目标子程序的版本更新状态有效,对第三方应用中目标子程序对应的子程序无效,以此,保持子程序服务平台下的目标子程序和第三方应用下目标子程序对应的子程序独立;第三方面,由于子程序服务平台下对目标子程序的配置和第三方应用中对于目标子程序的配置具有一定的差异,因此,在对子程序服务平台的终端设备的目标子应用进行版本更新的过程中,构建更新配置信息,将更新配置信息和目标子程序在第三方应用的版本更新信息做一个打包后进行投放,可以保证在终端设备和第三方应用中目标子程序的更新程序包具有差异性,这个差异性决定了目标子程序在终端设备和第三方应用上不同的展示方式;第四方面,对第三方应用的目标子程序和终端设备的目标子程序分端管理,在一方下线的过程中另外一方仍然可以继续使用。
本说明书提供的一种程序更新处理装置实施例如下:在上述的实施例中,提供了一种程序更新处理方法,与之相对应的,还提供了一种程序更新处理装置,下面结合附图进行说明。
参照图3,其示出了本实施例提供的一种程序更新处理装置示意图。
由于装置实施例对应于方法实施例,所以描述得比较简单,相关的部分请参见上述提供的方法实施例的对应说明即可。下述描述的装置实施例仅仅是示意性的。
本实施例提供一种程序更新处理装置,包括:状态查询模块302,被配置为根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;若所述更新配置状态为更新开启状态,则运行信息构建模块304,所述信息构建模块304,被配置为读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;信息合并模块306,被配置为合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则运行程序包下发模块308,所述程序包下发模块308,被配置为向所述设备客户端下发所述更新程序包。
本说明书提供的一种程序更新处理设备实施例如下:对应上述描述的一种程序更新处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种程序更新处理 设备,该程序更新处理设备用于执行上述提供的程序更新处理方法,图4为本说明书一个或多个实施例提供的一种程序更新处理设备的结构示意图。
本实施例提供的一种程序更新处理设备,包括:如图4所示,程序更新处理设备可因配置或性能不同而产生比较大的差异,可以包括一个或一个以上的处理器401和存储器402,存储器402中可以存储有一个或一个以上存储应用程序或数据。其中,存储器402可以是短暂存储或持久存储。存储在存储器402的应用程序可以包括一个或一个以上模块(图示未示出),每个模块可以包括程序更新处理设备中的一系列计算机可执行指令。更进一步地,处理器401可以设置为与存储器402通信,在程序更新处理设备上执行存储器402中的一系列计算机可执行指令。程序更新处理设备还可以包括一个或一个以上电源403,一个或一个以上有线或无线网络接口404,一个或一个以上输入/输出接口405,一个或一个以上键盘406等。
在一个具体的实施例中,程序更新处理设备包括有存储器,以及一个或一个以上的程序,其中一个或者一个以上程序存储于存储器中,且一个或者一个以上程序可以包括一个或一个以上模块,且每个模块可以包括对程序更新处理设备中的一系列计算机可执行指令,且经配置以由一个或者一个以上处理器执行该一个或者一个以上程序包含用于进行以下计算机可执行指令:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
本说明书提供的一种存储介质实施例如下:对应上述描述的一种程序更新处理方法,基于相同的技术构思,本说明书一个或多个实施例还提供一种存储介质。
本实施例提供的存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
需要说明的是,本说明书中关于存储介质的实施例与本说明书中关于程序更新处理方法的实施例基于同一发明构思,因此该实施例的具体实施可以参见前述对应方法的实施,重复之处不再赘述。
上述对本说明书特定实施例进行了描述。其它实施例在所附权利要求书的范围内。在一些情况下,在权利要求书中记载的动作或步骤可以按照不同于实施例中的顺序来执行并且仍然可以实现期望的结果。另外,在附图中描绘的过程不一定要求示出的特定顺序或者连续顺序才能实现期望的结果。在某些实施方式中,多任务处理和并行处理也是可以的或者可能是有利的。
在20世纪30年代,对于一个技术的改进可以很明显地区分是硬件上的改进(例如,对二极管、晶体管、开关等电路结构的改进)还是软件上的改进(对于方法流程的改进)。然而,随着技术的发展,当今的很多方法流程的改进已经可以视为硬件电路结构的直接改进。设计人员几乎都通过将改进的方法流程编程到硬件电路中来得到相应的硬件电路结构。因此,不能说一个方法流程的改进就不能用硬件实体模块来实现。例如,可编程逻辑器件(Programmable Logic Device,PLD)(例如现场可编程门阵列(Field Programmable Gate Array,FPGA))就是这样一种集成电路,其逻辑功能由用户对器件编程来确定。由设计人员自行编程来把一个数字系统“集成”在一片PLD上,而不需要请芯片制造厂商来设计和制作专用的集成电路芯片。而且,如今,取代手工地制作集成电路芯片,这种编程也多半改用“逻辑编译器(logic compiler)”软件来实现,它与程序开发撰写时所用的软件编译器相类似,而要编译之前的原始代码也得用特定的编程语言来撰写,此称之为硬件描述语言(Hardware Description Language,HDL),而HDL也并非仅有一种,而是有许多种,如ABEL(Advanced Boolean Expression Language)、AHDL(Altera Hardware Description Language)、Confluence、CUPL(Cornell University Programming Language)、HDCal、JHDL(Java Hardware Description Language)、Lava、Lola、MyHDL、PALASM、RHDL(Ruby Hardware Description Language)等,目前最普遍使用的是VHDL(Very-High-Speed Integrated Circuit Hardware Description Language)与Verilog。本领域技术人员也应该清楚,只需要将方法流程用上述几种硬件描述语言稍作逻辑编程并编程到集成电路中,就可以很容易得到实现该逻辑方法流程的硬件电路。
控制器可以按任何适当的方式实现,例如,控制器可以采取例如微处理器或处理器以及存储可由该(微)处理器执行的计算机可读程序代码(例如软件或固件)的计算机可读介质、逻辑门、开关、专用集成电路(Application Specific Integrated Circuit,ASIC)、 可编程逻辑控制器和嵌入微控制器的形式,控制器的例子包括但不限于以下微控制器:ARC 625D、Atmel AT91SAM、Microchip PIC18F26K20以及Silicone Labs C8051F320,存储器控制器还可以被实现为存储器的控制逻辑的一部分。本领域技术人员也知道,除了以纯计算机可读程序代码方式实现控制器以外,完全可以通过将方法步骤进行逻辑编程来使得控制器以逻辑门、开关、专用集成电路、可编程逻辑控制器和嵌入微控制器等的形式来实现相同功能。因此这种控制器可以被认为是一种硬件部件,而对其内包括的用于实现各种功能的装置也可以视为硬件部件内的结构。或者甚至,可以将用于实现各种功能的装置视为既可以是实现方法的软件模块又可以是硬件部件内的结构。
上述实施例阐明的系统、装置、模块或单元,具体可以由计算机芯片或实体实现,或者由具有某种功能的产品来实现。一种典型的实现设备为计算机。具体的,计算机例如可以为个人计算机、膝上型计算机、蜂窝电话、相机电话、智能电话、个人数字助理、媒体播放器、导航设备、电子邮件设备、游戏控制台、平板计算机、可穿戴设备或者这些设备中的任何设备的组合。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本说明书实施例时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
本领域内的技术人员应明白,本说明书一个或多个实施例可提供为方法、系统或计算机程序产品。因此,本说明书一个或多个实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本说明书可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本说明书是参照根据本说明书实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或 多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
在一个典型的配置中,计算设备包括一个或多个处理器(CPU)、输入/输出接口、网络接口和内存。
内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(RAM)和/或非易失性内存等形式,如只读存储器(ROM)或闪存(flash RAM)。内存是计算机可读介质的示例。
计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(PRAM)、静态随机存取存储器(SRAM)、动态随机存取存储器(DRAM)、其他类型的随机存取存储器(RAM)、只读存储器(ROM)、电可擦除可编程只读存储器(EEPROM)、快闪记忆体或其他内存技术、只读光盘只读存储器(CD-ROM)、数字多功能光盘(DVD)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。按照本文中的界定,计算机可读介质不包括暂存电脑可读媒体(transitory media),如调制的数据信号和载波。
还需要说明的是,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、商品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、商品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、商品或者设备中还存在另外的相同要素。
本说明书一个或多个实施例可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本说明书的一个或多个实施例,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和 远程计算机存储介质中。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
以上所述仅为本文件的实施例而已,并不用于限制本文件。对于本领域技术人员来说,本文件可以有各种更改和变化。凡在本文件的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本文件的权利要求范围之内。

Claims (12)

  1. 一种程序更新处理方法,包括:
    根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;
    若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;
    合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;
    若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
  2. 根据权利要求1所述的程序更新处理方法,所述合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包步骤执行之后,且所述若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包步骤执行之前,还包括:
    对所述更新程序包进行签名处理,并在签名处理后确定所述更新程序包对应的版本标识;
    其中,所述版本标识在所述设备客户端调用所述服务接口读取所述更新程序包时下发。
  3. 根据权利要求2所述的程序更新处理方法,所述服务接口读取所述更新程序包后,执行如下操作:
    读取所述设备客户端存储的所述目标子程序的本地程序包;
    核验所述版本标识与所述本地程序包的版本标识是否一致;
    若不一致,加载所述更新程序包并通过所述设备客户端进行展示;
    若一致,加载所述本地程序包并通过所述设备客户端进行展示。
  4. 根据权利要求1所述的程序更新处理方法,所述基于所述设备信息和预设配置信息进行更新配置信息的构建,包括:
    读取所述目标子程序的子程序提供方配置的所述预设配置信息;
    合并所述预设配置信息与所述设备信息,获得所述更新配置信息。
  5. 根据权利要求1所述的程序更新处理方法,所述基于所述设备信息和预设配置信息进行更新配置信息的构建,包括:
    读取所述目标子程序的子程序提供方配置的所述预设配置信息;
    按照所述设备信息,提取所述预设配置信息中针对所述终端设备的目标配置参数并将所述目标配置参数作为所述更新配置信息。
  6. 根据权利要求1所述的程序更新处理方法,所述设备客户端在运行时,展示与所述设备客户端具有关联关系的目标子程序的访问组件;
    所述设备客户端在检测到所述访问组件被触发,调用所述服务接口并传入所述目标子程序的子程序标识和所述设备客户端的程序标识,以通过所述服务接口进行所述目标子程序的访问。
  7. 根据权利要求6所述的程序更新处理方法,所述关联关系,采用如下方式建立:
    根据设备提供方针对所述终端设备的设备客户端进行子程序配置的配置请求,查询所述配置请求对应的所述目标子程序的权限策略类型;所述目标子程序为所述子程序服务平台的子程序池中的子程序;
    若所述目标子程序的子程序提供方针对所述目标子程序配置的权限策略类型为第一策略类型,则建立所述设备客户端与所述目标子程序的关联关系;
    若所述子程序提供方针对所述目标子程序配置的权限策略类型为第二策略类型,则在所述设备客户端处于所述第二权限策略对应的权限范围内的情况下,建立所述设备客户端与所述目标子程序的关联关系。
  8. 根据权利要求1所述的程序更新处理方法,所述更新配置状态,采用如下方式配置:
    根据所述目标子程序的子程序提供方对所述目标子程序的更新配置状态的开启指令,记录所述目标子程序的更新配置状态为更新开启状态;
    和/或,
    根据所述子程序提供方对所述目标子程序的更新配置状态的关闭指令,记录所述目标子程序的更新配置状态为更新关闭状态。
  9. 根据权利要求1所述的程序更新处理方法,所述服务接口为第三方应用的子程序服务的轻量化接口,若检测到所述目标子程序在所述第三方应用对应的子程序的版本更新,读取所述版本更新信息,并执行所述根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态步骤。
  10. 一种程序更新处理装置,包括:
    状态查询模块,被配置为根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;
    若所述更新配置状态为更新开启状态,则运行信息构建模块,所述信息构建模块,被配置为读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;
    信息合并模块,被配置为合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;
    若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则运行程序包下发模块,所述程序包下发模块,被配置为向所述设备客户端下发所述更新程序包。
  11. 一种程序更新处理设备,包括:
    处理器;以及,
    被配置为存储计算机可执行指令的存储器,所述计算机可执行指令在被执行时使所述处理器:
    根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;
    若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;
    合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;
    若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
  12. 一种存储介质,用于存储计算机可执行指令,所述计算机可执行指令在被处理器执行时实现以下流程:
    根据目标子程序的版本更新信息,查询所述目标子程序的更新配置状态;
    若所述更新配置状态为更新开启状态,则读取在子程序服务平台进行设备注册的终端设备的设备信息,并基于所述设备信息和预设配置信息进行更新配置信息的构建;
    合并所述更新配置信息和所述版本更新信息,获得所述目标子程序的更新程序包;
    若检测到所述终端设备的设备客户端调用服务接口访问所述目标子程序,则向所述服务接口下发所述更新程序包。
PCT/CN2023/071298 2022-02-14 2023-01-09 程序更新处理 WO2023151440A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202210135296.2A CN114518894A (zh) 2022-02-14 2022-02-14 程序更新处理方法及装置
CN202210135296.2 2022-02-14

Publications (1)

Publication Number Publication Date
WO2023151440A1 true WO2023151440A1 (zh) 2023-08-17

Family

ID=81596503

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2023/071298 WO2023151440A1 (zh) 2022-02-14 2023-01-09 程序更新处理

Country Status (2)

Country Link
CN (1) CN114518894A (zh)
WO (1) WO2023151440A1 (zh)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114518894A (zh) * 2022-02-14 2022-05-20 支付宝(杭州)信息技术有限公司 程序更新处理方法及装置

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005107567A (ja) * 2003-09-26 2005-04-21 Sony Corp プログラム実装方法及びプログラム更新方法
CN110618826A (zh) * 2019-08-16 2019-12-27 深圳市元征科技股份有限公司 一种应用程序更新的方法、装置及终端设备
CN111142900A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 程序更新方法、装置及终端设备
CN114518894A (zh) * 2022-02-14 2022-05-20 支付宝(杭州)信息技术有限公司 程序更新处理方法及装置

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005107567A (ja) * 2003-09-26 2005-04-21 Sony Corp プログラム実装方法及びプログラム更新方法
CN110618826A (zh) * 2019-08-16 2019-12-27 深圳市元征科技股份有限公司 一种应用程序更新的方法、装置及终端设备
CN111142900A (zh) * 2019-12-17 2020-05-12 深圳市优必选科技股份有限公司 程序更新方法、装置及终端设备
CN114518894A (zh) * 2022-02-14 2022-05-20 支付宝(杭州)信息技术有限公司 程序更新处理方法及装置

Also Published As

Publication number Publication date
CN114518894A (zh) 2022-05-20

Similar Documents

Publication Publication Date Title
JP6912583B2 (ja) サービス処理方法および装置
CN107426169B (zh) 一种基于权限的业务处理方法及装置
US8739147B2 (en) Class isolation to minimize memory usage in a device
KR20190117485A (ko) 서비스 데이터 처리 방법 및 디바이스, 및 서비스 처리 방법 및 디바이스
US20200326953A1 (en) Method and system for starting application
WO2021238954A1 (zh) 小程序应用的安装管理
WO2023151439A1 (zh) 账户登录处理
US9600662B2 (en) User configurable profiles for security permissions
WO2023151440A1 (zh) 程序更新处理
CN115378735B (zh) 一种数据处理方法、装置、存储介质及电子设备
WO2023151436A1 (zh) Sql语句风险检测
CN109560933B (zh) 基于数字证书的认证方法及系统、存储介质、电子设备
WO2024060853A1 (zh) 一种动态配置安全内存的方法、设备、装置及存储介质
CN110427237B (zh) 一种跨应用访问目标页面的方法、装置及电子设备
WO2023216872A1 (zh) 应用于IoT设备的事件处理方法及装置
CN117319235A (zh) 一种服务调用方法及装置
CN111459573B (zh) 一种智能合约执行环境的启动方法以及装置
WO2023246390A1 (zh) 数据处理的方法及装置
CN110022351B (zh) 一种业务请求的处理方法和装置
CN111338655A (zh) 一种安装包分发方法和系统
US20220326939A1 (en) Mobile service upgrade method and apparatus, and terminal
CN114546524B (zh) 应用权限处理方法及装置
CN114500300B (zh) 服务注册处理方法及装置
CN114443173B (zh) 子程序加载处理方法及装置
CN113312055B (zh) 一种小程序投放方法、装置以及设备

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 23752220

Country of ref document: EP

Kind code of ref document: A1