[go: up one dir, main page]

CN111625250B - Application updating method and device, storage medium and electronic equipment - Google Patents

Application updating method and device, storage medium and electronic equipment Download PDF

Info

Publication number
CN111625250B
CN111625250B CN202010323166.2A CN202010323166A CN111625250B CN 111625250 B CN111625250 B CN 111625250B CN 202010323166 A CN202010323166 A CN 202010323166A CN 111625250 B CN111625250 B CN 111625250B
Authority
CN
China
Prior art keywords
entry
vocabulary
application
language
update
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
CN202010323166.2A
Other languages
Chinese (zh)
Other versions
CN111625250A (en
Inventor
韩静
安迪
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Oppo Chongqing Intelligent Technology Co Ltd
Original Assignee
Oppo Chongqing Intelligent Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Oppo Chongqing Intelligent Technology Co Ltd filed Critical Oppo Chongqing Intelligent Technology Co Ltd
Priority to CN202010323166.2A priority Critical patent/CN111625250B/en
Publication of CN111625250A publication Critical patent/CN111625250A/en
Application granted granted Critical
Publication of CN111625250B publication Critical patent/CN111625250B/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/60Software deployment
    • G06F8/65Updates
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management
    • 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)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the application discloses an application updating method, an application updating device, a storage medium and electronic equipment, wherein the method comprises the following steps: acquiring an entry set corresponding to a target application from an entry library, wherein the entry set comprises entries corresponding to at least one language, determining updated entries in the entry set, generating a language update package containing the updated entries, and pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the entries of the target application based on the language update package. By adopting the embodiment of the application, the application updating period can be shortened.

Description

Application updating method and device, storage medium and electronic equipment
Technical Field
The present application relates to the field of computer technologies, and in particular, to an application update method, an application update device, a storage medium, and an electronic device.
Background
With the development of communication technology, applications installed on terminals (mobile phones, computers, tablets, etc.) are increasing, and in order to meet the demands of users in different areas, application interfaces are usually required to support multiple languages, so that the interface display of the applications is changed according to the use languages in different areas. In the actual use process of the application, the service platform can update and maintain the application language class problems (such as entry translation problems, entry semantic problems and the like) of the application in a multi-language environment, such as pushing a language update package containing updated entries to update the application.
Currently, in the process of updating and maintaining applications (such as system applications of a terminal, third party applications customized when the terminal leaves a factory, etc.) on the terminal by a service platform, languages are generally used as updating dimensions, and based on a version updating period of an operating system of the terminal, the applications are pushed to the terminal in the next system version updating. However, this approach typically increases the period of application updates due to longer system version update periods (e.g., a system version update period may be 3-6 months).
Disclosure of Invention
The embodiment of the application provides an application updating method, an application updating device, a storage medium and electronic equipment, which can shorten the application updating period. The technical scheme of the embodiment of the application is as follows:
in a first aspect, an embodiment of the present application provides an application update method, applied to a service platform, where the method includes:
acquiring a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language;
determining updated vocabulary entries in the vocabulary entry set, and generating a language update package containing the updated vocabulary entries;
pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the entry of the target application based on the language update package.
In a second aspect, an embodiment of the present application provides an application update method, applied to a terminal, where the method includes:
receiving a language update package pushed by a service platform, wherein the language update package is generated for the service platform aiming at a target application of an entry to be updated;
and performing entry updating on the target application based on the language updating package.
In a third aspect, an embodiment of the present application provides an application update apparatus, including:
the vocabulary entry collection acquisition module is used for acquiring a vocabulary entry collection corresponding to the target application from a vocabulary entry library, wherein the vocabulary entry collection comprises vocabulary entries corresponding to at least one language;
the language update package generation module is used for determining the update vocabulary entries in the vocabulary entry set and generating a language update package containing the update vocabulary entries;
the language update package pushing module is used for pushing the language update package to a terminal, and the language update package is used for indicating the terminal to update the entry of the target application based on the language update package.
In a fourth aspect, an embodiment of the present application provides another application updating apparatus, including:
the language update package receiving module is used for receiving a language update package pushed by a service platform, wherein the language update package is generated for the service platform aiming at a target application of an entry to be updated;
And the entry updating module is used for updating the entry of the target application based on the language updating packet.
In a fifth aspect, embodiments of the present application provide a computer storage medium storing a plurality of instructions adapted to be loaded by a processor and to perform the above-described method steps.
In a sixth aspect, an embodiment of the present application provides an electronic device, which may include: a processor and a memory; wherein the memory stores a computer program adapted to be loaded by the processor and to perform the above-mentioned method steps.
The technical scheme provided by the embodiments of the application has the beneficial effects that at least:
in one or more embodiments of the present application, a service platform obtains a vocabulary entry set corresponding to a target application from a vocabulary entry library, where the vocabulary entry set includes vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, generates a language update package including the updated vocabulary entries, and pushes the language update package to a terminal, where the language update package is used to instruct the terminal to update the vocabulary entries of the target application based on the language update package. When the service platform updates the application, the application is used as an update dimension, the service platform can push the application only by acquiring a vocabulary entry set of the target application to be updated and generating a language update package based on the update vocabulary entry in the vocabulary entry set, so that the problem of long application update period caused when the application is updated along with a system version update period by using the language as the dimension is avoided, the application update period is shortened, and the application update efficiency can be improved.
Drawings
In order to more clearly illustrate the embodiments of the application or the technical solutions in the prior art, the drawings that are required in the embodiments or the description of the prior art will be briefly described, it being obvious that the drawings in the following description are only some embodiments of the application, and that other drawings may be obtained according to these drawings without inventive effort for a person skilled in the art.
FIG. 1 is a flowchart of an application update method according to an embodiment of the present application;
FIG. 2 is a flowchart illustrating another method for updating applications according to an embodiment of the present application;
FIG. 3 is a flowchart illustrating another method for updating applications according to an embodiment of the present application;
FIG. 4 is a schematic diagram of an update scenario of a language update package according to an embodiment of the present application;
FIG. 5 is a schematic flow chart of a language update package installation related to an application update method according to an embodiment of the present application;
FIG. 6 is a schematic diagram of an update scenario of another language update package according to an embodiment of the present application;
FIG. 7 is a flowchart illustrating another language update package installation related to an application update method according to an embodiment of the present application;
Fig. 8 is a schematic structural diagram of an application updating device according to an embodiment of the present application;
fig. 9 is a schematic structural diagram of an entry set obtaining module according to an embodiment of the present application;
fig. 10 is a schematic structural diagram of an entry duplication elimination module according to an embodiment of the application;
FIG. 11 is a schematic diagram of a language update package generating module according to an embodiment of the present application;
fig. 12 is a schematic structural diagram of an updated entry determining unit according to an embodiment of the present application;
FIG. 13 is a schematic diagram of another application updating device according to an embodiment of the present application;
FIG. 14 is a schematic diagram of another application updating device according to an embodiment of the present application;
FIG. 15 is a schematic diagram of a language update package receiving module according to an embodiment of the present application;
fig. 16 is a schematic diagram of a structure of a language update request sending unit according to an embodiment of the present application;
fig. 17 is a schematic structural diagram of an entry update module according to an embodiment of the present application;
fig. 18 is a schematic structural diagram of an electronic device according to an embodiment of the present application;
fig. 19 is a schematic structural diagram of another electronic device according to an embodiment of the present application;
FIG. 20 is a schematic diagram of an operating system and user space provided by an embodiment of the present application;
FIG. 21 is an architecture diagram of the android operating system of FIG. 19;
FIG. 22 is an architecture diagram of the IOS operating system of FIG. 19.
Detailed Description
The following description of the embodiments of the present application will be made clearly and completely with reference to the accompanying drawings, in which it is apparent that the embodiments described are only some embodiments of the present application, but not all embodiments. All other embodiments, which can be made by those skilled in the art based on the embodiments of the application without making any inventive effort, are intended to be within the scope of the application.
In the description of the present application, it should be understood that the terms "first," "second," and the like are used for descriptive purposes only and are not to be construed as indicating or implying relative importance. In the description of the present application, it should be noted that, unless expressly specified and limited otherwise, "comprise" and "have" and any variations thereof are intended to cover non-exclusive inclusion. For example, a process, method, system, article, or apparatus that comprises a list of steps or elements is not limited to only those listed steps or elements but may include other steps or elements not listed or inherent to such process, method, article, or apparatus. The specific meaning of the above terms in the present application will be understood in specific cases by those of ordinary skill in the art. Furthermore, in the description of the present application, unless otherwise indicated, "a plurality" means two or more. "and/or", describes an association relationship of an association object, and indicates that there may be three relationships, for example, a and/or B, and may indicate: a exists alone, A and B exist together, and B exists alone. The character "/" generally indicates that the context-dependent object is an "or" relationship.
The present application will be described in detail with reference to specific examples.
In one embodiment, as shown in fig. 1, a particular application update method is proposed, which may be implemented in dependence on a computer program, and may be run on an application update device based on von neumann systems. The computer program may be integrated in the application or may run as a stand-alone tool class application. The application updating method according to the embodiment of the present application will be explained in detail below using the application updating device as a service platform.
The service platform may be a separate server device, for example: the server device of rack-mounted, blade, tower-type or cabinet-type may also adopt a hardware device with stronger computing capability such as a workstation, a mainframe computer, etc., or may also adopt a server cluster formed by a plurality of servers, where each server in the service cluster may be formed in a symmetrical manner, where each service is functionally equivalent and functionally equivalent in a service link, and each server may separately provide services to the outside or the inside, such as an entry library for providing entry content services, a compiling server for compiling version of updated entries, etc., and the separately providing services may be understood as not requiring assistance of another server.
Specifically, the application updating method comprises the following steps:
step S101: and acquiring a vocabulary entry set corresponding to the target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language.
The term library may be a database containing custom terms and/or general terms, and the term library may contain terms such as common terms, special terms, professional terms, etc. of different applications. The term sources in the term library may be entity names of national knowledge infrastructure (The National Knowledge Infrastructure, NKI) multidisciplinary knowledge base in general fields, some name terms collected in various professional fields, such as place names, organization names and the like in traffic information fields, daily and commonly used terms involved in the actual use of the application by language translation institutions, and the like. The term database may be a term database maintained by a service platform, or may be a term database maintained by a third-party translation company, etc., which is not limited herein.
In practical application, the vocabulary entries corresponding to each application in the vocabulary entry library can be maintained by maintainers such as application developers, vocabulary entry translators, third-party translators and the like, the vocabulary entries of each application in the practical multi-language environment are maintained on demand irregularly, for example, the vocabulary entries of a certain application in the practical multi-language environment are added, the vocabulary entries of a certain application in the practical multi-language environment are translated and revised (the semantics of the vocabulary entries, the content of the vocabulary entries and the like are revised), the vocabulary entries of a certain application in the practical multi-language environment are deleted and the like, so that the vocabulary entries corresponding to each application in the vocabulary entry library are ensured to be the latest version, and the use requirements of users applying the vocabulary entries in the practical multi-language environment are met. Furthermore, in the vocabulary entry library, each application may correspond to vocabulary entries corresponding to at least one language (such as simplified chinese, traditional chinese, english, japanese, italian, spanish, etc.; the vocabulary entries in the vocabulary entry library can have unique mapping relation with each application, namely one vocabulary entry corresponds to one application, and the vocabulary entries in the vocabulary entry library can also have multi-mapping relation with a plurality of applications, namely one vocabulary entry can correspond to a plurality of applications.
Furthermore, if a certain application or a plurality of applications have a multilingual entry update requirement in an actual multilingual environment, if the entries in the entry files corresponding to the plurality of applications need to be updated, in a coherent technology, a language update package containing the entries corresponding to the updates of the plurality of applications is usually generated by taking one language as an update dimension, and is pushed to a terminal, in this way, the pushing period of the language update package needs to refer to a system version update period of an operating system on the terminal, the pushing period of the language update package and the operating system usually have a strong coupling relationship, the updating period of the language update package can be longer due to the influence of the system version update period, for example, one update period may be 3-6 months, so that the efficiency of pushing the language update package from a service platform to the terminal is affected, and in addition, the language update package containing the entries corresponding to the plurality of applications is generated by taking one language as an update dimension.
Specifically, in the immediate maintenance process of the construction of the vocabulary entry library of the service platform, application vocabulary entry indexes of each application and the vocabulary entries corresponding to the application are generally established, so that when all vocabulary entries and/or part of vocabulary entries of a certain application are obtained, all vocabulary entries and/or part of vocabulary entries corresponding to the certain application can be obtained rapidly through the application vocabulary entry indexes.
Further, in the process of building the application entry index, the application entry index may be built based on an application identifier (such as an application ID) of the application and each entry corresponding to the application, where the application identifier may be understood as indication information for uniquely characterizing the application, and typically, the application identifier may be a uniquely-characterized application ID, for example, numbers representing IDs, such as 1, 2, 3, etc.; key characters that may be uniquely characterized, such as a, b, c, etc.; may be a key string that uniquely characterizes the application, such as pth_a, pth_b, pth_c; etc. It can be understood that after the application vocabulary index is established, the service platform can quickly search all or part of vocabulary entries corresponding to the application logo based on the application logo of the target application, so as to obtain the vocabulary entries corresponding to the target application indexed in the vocabulary entry library, wherein the generally indexed vocabulary entries are in the form of a vocabulary entry set, and it can be understood that the vocabulary entry set contains a plurality of vocabulary entries corresponding to the target application, and the plurality of vocabulary entries are generally vocabulary entries corresponding to at least one language (such as simplified Chinese, traditional Chinese, english, japanese, italian, spanish and the like).
The target application may be understood as an application that needs to update the application entry, and the target application that generally needs to be updated may be understood as an application that is in a version use period of the target application: in the version service period of the target application, corresponding operations are performed on the vocabulary entry of the target application according to the multilingual translation problem in the vocabulary entry library, such as adding the vocabulary entry of the certain application in the actual multilingual environment, performing translation revision (revising the semantics of the vocabulary entry, the content of the vocabulary entry, etc.) on the vocabulary entry of the certain application in the actual multilingual environment, deleting the vocabulary entry of the certain application in the actual multilingual environment, etc., so as to ensure that the vocabulary entry corresponding to each application in the vocabulary entry library is the latest version, and meet the user service requirement of the application in the actual multilingual environment.
In a possible implementation manner, the term library may be an entry set corresponding to each of a plurality of applications, that is, the term library is formed by a plurality of entry sets corresponding to the applications, where each entry set includes entries of at least one language corresponding to the application, and it is understood that in the process of building or maintaining the term library, an application entry index is not required to be built; when the actual application is stored, the term maintenance of an application can directly operate the term set corresponding to the application, such as adding the term to be added of the application in the actual multi-language environment into the term set of the application in the term library, such as adding the term to be revised of the application in the actual multi-language environment into the term set of the application in the term library, such as deleting the term set of the term to be deleted of the application in the actual multi-language environment in the term library, and the like, so as to ensure that the term corresponding to each application in the term library is the latest version. When the vocabulary entry set needs to be obtained from the vocabulary entry library, for example, a staff of the service platform selects one or more of the applications covered by the vocabulary entry library as a target application, the service platform can directly determine that the target application contains the vocabulary entry set of all or part of the vocabulary entries in the vocabulary entry library, so as to obtain the vocabulary entry set corresponding to the target application, wherein the vocabulary entry set can comprise vocabulary entries corresponding to at least one language.
Further, the number of applications corresponding to the target application may be plural or one, and the number of applications of the target application is determined according to the actual application environment, which is not specifically limited herein.
Step S102: and determining updated vocabulary entries in the vocabulary entry set, and generating a language update package containing the updated vocabulary entries.
The updated vocabulary entry can be understood as a vocabulary entry which is changed or added compared with the pushed history vocabulary entry set corresponding to the target application, namely the updated vocabulary entry; it may be understood that, in an actual application, the target application is installed on a terminal (such as a mobile phone, a tablet, a computer, etc.), the history vocabulary entry set, that is, the history vocabulary entry set of the target application on the terminal, including all vocabulary entries of the current target application, or all vocabulary entries corresponding to the history release vocabulary entry version, is typically pushed by the service platform, when the target application is installed for the first time, the service platform will push the target application in the form of a full-size language package (the full-size language package includes all vocabulary entries of the target application at the first time), and in the later use process, the vocabulary entry update of the target application may be pushed in the form of a full-size language package (the full-size language package includes all vocabulary entries of the current target application), when the terminal receives the full-size language package, the current history language package needs to be covered based on the full-size language package, and may be pushed in the form of an incremental language package (that includes vocabulary entries that have a change or increase compared with the pushed history vocabulary entry set), and when the terminal receives the full-size language package, the current incremental language package needs to be updated based on the current incremental language package.
Specifically, after the service platform obtains the vocabulary entry set of the target application, the vocabulary entry set generally corresponds to all vocabulary entries corresponding to the target application in the vocabulary entry library, the vocabulary entries can be vocabulary entries corresponding to at least one language, and the service platform can determine changed or newly added vocabulary entries in the obtained vocabulary entry set by combining with the history vocabulary entry set of the target application, namely, update the vocabulary entries. In the method, a service platform firstly removes duplication of entries in the entry set, removes duplication of entries, retains entries of the latest version (the version is highest or the creation date is latest) so as to ensure that the entry set after duplication removal does not contain the entries of the duplicate and the version is new, then determines updated entries in the entry set based on a set determination mode, and then packages and compiles the updated entries, wherein a compiling source file (such as the updated entries) can refer to a packaging compiling mode in a coherent technology, for example, a python script is operated on a compiling source file (such as the updated entries), and a required language updating package is compiled. The specific detailed updating manner is not described here in detail.
The determining method may be to compare the content of the vocabulary entry (content such as word, meaning of word, translation of word, etc.) based on the history vocabulary entry set and the currently acquired vocabulary entry set, determine the vocabulary entry with the same content comparison result as a non-updated vocabulary entry, determine the vocabulary entry with the difference of the content comparison result as an updated vocabulary entry, and determine the increment vocabulary entry not included in the history vocabulary entry set as an updated vocabulary entry, which may be understood that the updated vocabulary entry in the vocabulary entry set may be determined based on the determining method.
A determining manner may be that an updated entry is determined based on an entry identifier of the entry and a creation date of the entry, the entry identifier may be an entry name of the entry, the service platform may obtain, from a history entry set and a currently obtained entry set, a creation date of the entry having the same entry identifier, and when the creation date corresponding to the entry in the history entry set is consistent with the creation date corresponding to the entry in the entry set, the entry belongs to a non-updated entry; when the creation date corresponding to the entry belonging to the history entry set is greater than the creation date corresponding to the entry belonging to the entry set, the entry belongs to the updated entry; and determining the increment vocabulary entries not contained in the history vocabulary entry set as updated vocabulary entries; it is to be appreciated that updated terms in the set of terms can be determined based on the determination method.
A determining manner may be to determine an updated entry based on an entry identifier of the entry and an entry version number of the entry, where the entry identifier may be an entry name of the entry, and the service platform may obtain, from a history entry set and a currently obtained entry set, a creation date entry version number of the entry having the same entry identifier, and when the entry version number corresponding to the entry belonging to the history entry set is consistent with the entry version number corresponding to the entry belonging to the entry set, the entry belongs to a non-updated entry; when the vocabulary entry version number corresponding to the vocabulary entry belonging to the history vocabulary entry set is higher than the vocabulary entry version number corresponding to the vocabulary entry belonging to the vocabulary entry set, the vocabulary entry belongs to the updated vocabulary entry; and determining the increment vocabulary entries not contained in the history vocabulary entry set as updated vocabulary entries; it is to be appreciated that updated terms in the set of terms can be determined based on the determination method.
Specifically, after determining the updated vocabulary entry from the vocabulary entry set based on the fitting of one or more of the above mentioned determination modes, the terminal edits the updated vocabulary entry to generate a language update package of the target application corresponding to the updated vocabulary entry.
In a possible implementation manner, the service platform may push the vocabulary entry update of the target application in a form of a full-dose language package (the full-dose language package includes all vocabulary entries of the target application at present), that is, the obtained vocabulary entry set is subjected to de-duplication processing to obtain a de-duplication processed vocabulary entry set, then the vocabulary entry set is compiled to generate a language update package corresponding to the vocabulary entry set, and the language update package is pushed to the terminal; when the terminal receives the full language package, the current historical language package needs to be covered based on the full language package, and then the entry updating of the target application can be completed.
Step S103: pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the entry of the target application based on the language update package.
Specifically, after determining an updated entry in the entry set and generating language update containing the updated entry, the service platform pushes the language update package to the terminal based on communication connection established between the service platform and the terminal; after receiving the language update package, the terminal can perform package analysis on the language update package to obtain an updated vocabulary entry after analysis, and perform vocabulary entry update on the target application based on the updated vocabulary entry, for example, replace the vocabulary entry in the target application with a revised vocabulary entry in the updated vocabulary entry, add the increment vocabulary entry in the updated vocabulary entry into a folder corresponding to the target application, and the like.
The established communication connection may be a long communication connection or a short communication connection.
Long connection means that a plurality of data packets can be continuously transmitted over one connection, and if no data packet is transmitted during connection maintenance, both sides are required to transmit a link detection packet.
The long connection comprises the following operation steps: establish connection-data transfer...(keep connection)..data transfer-close connection.
The short connection means that when two communication parties have data interaction, a connection is established, and after data transmission is completed, the connection is disconnected, namely, each connection only completes the transmission of one service.
The short connection comprises the following operation steps: establishing a connection-data transfer-closing a connection.
Long connections are often used for frequent, point-to-point communication and the number of connections cannot be too high. Each TCP connection requires a three-way handshake, which requires time, and if each operation is a short connection, the processing speed is reduced greatly if the operation is performed again, so that each operation is not disconnected after being completed, and the data packet is directly sent when the next operation is performed, so that the TCP connection is not required to be established. For example: the database can be connected by long connection, if the short connection is used for frequent communication, socket errors can be caused, and frequent socket creation is also wasteful of resources.
Whereas http services like WEB sites typically use short links, long links consume some resources for the server (e.g., the service platform), short links for connections like WEB sites, which are so frequent as to thousands or even hundreds of millions of clients, save some resources, if long links are used, and at the same time thousands of users, if each user occupies a connection, it is conceivable to know the bar. The concurrency is high, but each user needs to be connected well by short time without frequent operation.
It should be noted that, the communication connection established between the service platform and the terminal may be a long communication connection or a short communication connection, which is not limited herein.
In the embodiment of the application, a service platform acquires a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, generates a language update package containing the updated vocabulary entries, and pushes the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the vocabulary entries of the target application based on the language update package. When the service platform updates the application, the application is used as an update dimension, the service platform can push the application only by acquiring a vocabulary entry set of the target application to be updated and generating a language update package based on the update vocabulary entry in the vocabulary entry set, so that the problem of long application update period caused when the application is updated along with a system version update period by using the language as the dimension is avoided, the application update period is shortened, and the application update efficiency can be improved.
Referring to fig. 2, fig. 2 is a flowchart illustrating another embodiment of an application updating method according to the present application. Specific:
step S201: and receiving a language package updating request input for a target application, and acquiring a vocabulary entry set corresponding to the target application from a vocabulary entry library.
The language pack update request is an instruction and a requirement for requesting the service platform to perform a language pack update on the target application, and can be understood as a code for requesting the service platform to perform a "language pack update" operation or some control of the function implementation. In practical application, the service platform receives the language pack update request, executes the code of the control of the operation or the function realization of the language pack update, and firstly acquires the vocabulary entry set corresponding to the target application from the vocabulary entry library.
Specifically, a maintainer (such as a developer, a vocabulary translation and a tester of a target application) of the application vocabulary related to the service platform can send a language package update request to the service platform for the target application to request the service platform to update the language package of the target application, for example, the maintainer of the application vocabulary related to the service platform can initiate a language package update request to the service platform in an application dimension for one or more target applications in each application in a maintenance period of the application vocabulary by using electronic equipment (a computer, a mobile phone and the like); it can be understood that the maintenance period may be that maintenance personnel updates and maintains the vocabulary entry of each application in the actual multi-language environment as required with irregular application dimensions, for example, the vocabulary entry addition amount of a certain application in the actual multi-language environment reaches the application pushing requirement, the vocabulary entry translation revision amount (revising the semantics of the vocabulary entry, the vocabulary entry content, etc.) and the translation revision level reach the application pushing requirement, the vocabulary entry deletion amount and the vocabulary entry deletion level of a certain application in the actual multi-language environment reach the application pushing requirement, and the like, which may be specifically determined according to the actual application environment; after receiving a language package update request sent by a maintainer through electronic equipment, a service platform responds to the language package update request, and acquires a vocabulary entry set corresponding to the target application from a vocabulary entry library.
The step S101 may be specifically referred to for obtaining the vocabulary entry set corresponding to the target application from the vocabulary entry library, which is not described herein.
Step S202: at least one entry update quantity and entry update level applied in the entry library are obtained.
The term update number may be understood as the number of corresponding updated terms applied in a term library in a certain time period, for example, the number of terms updated by a term library maintainer in a time period corresponding to a time point of a release of a language update package in a certain application to a current time point, where the updated terms may be incremental terms applied in an actual multi-language environment, revised terms for performing translation revision (revising the semantics of terms, content of terms, etc.) on terms applied in the actual multi-language environment, deleted terms for deleting terms applied in the actual multi-language environment, and so on. In practical application, the service platform may acquire the updated amount of the vocabulary entry of at least one application in the vocabulary entry library at regular time or in real time.
The term update level may be understood as a quantization index for representing the update requirement size or the degree to be updated of term update applied in the term library, and it may be understood that the higher the term update level, the greater the application update requirement. In practical application, the term update level is determined by accumulating weight factors of corresponding terms in a term library in a certain time period, a term update level determination rule can be formulated in advance on a service platform, when the value accumulated by the weight factors reaches a value corresponding to a certain level and/or the value accumulated by the weight factors falls into a value range corresponding to a certain level, the term update level of the application in a certain time period can be determined, for example, the number of terms updated by a term library maintainer in a time period from the time point when a language update packet is issued to the current time point in a certain application is A, the weight factors respectively corresponding to the A updated terms can be the same or different, if the value B reaches a value corresponding to a first level and/or falls into a value range corresponding to the first level, the term update level of the application in a certain time period can be determined to be the first level. The weight factors are comprehensively determined by entry maintainers based on factors such as entry semantics, entry types, importance degrees and the like when the entries are created.
Further, the service platform can control or instruct the vocabulary entry library to monitor the vocabulary entry update quantity and the vocabulary entry update level of the updated vocabulary entry in real time or at fixed time when each application in the vocabulary entry library updates the vocabulary entry in a certain time period, and can determine the vocabulary entry update quantity and the vocabulary entry update level of at least one application in the vocabulary entry library, so that the service platform can conveniently acquire the vocabulary entry update quantity and the vocabulary entry update level of each application in the vocabulary entry library at any time.
Further, the service platform may also pull at least one entry set corresponding to the application from the entry library periodically, and compare the entry set with a history entry set of the application in a difference manner, so as to determine entry update information of the application, where the entry update information includes an entry update number and an entry update level, the history entry set is a history entry set of the target application on the terminal, where the target application includes all current entries, or all entries corresponding to a history release entry version, and typically, the history entry set of the target application is pushed by the service platform.
Step S203: and determining a target application to be updated in the at least one application based on the vocabulary entry updating quantity and the vocabulary entry updating level, and acquiring a vocabulary entry set corresponding to the target application from the vocabulary entry library.
The target application may be understood as an application that needs to update the application entry, and the target application that generally needs to be updated may be understood as an application that is in a version usage period of the target application: in the version service period of the target application, corresponding operations are performed on the vocabulary entry of the target application according to the multilingual translation problem in the vocabulary entry library, such as adding the vocabulary entry of the certain application in the actual multilingual environment, performing translation revision (revising the semantics of the vocabulary entry, the content of the vocabulary entry, etc.) on the vocabulary entry of the certain application in the actual multilingual environment, deleting the vocabulary entry of the certain application in the actual multilingual environment, etc., so as to ensure that the vocabulary entry corresponding to each application in the vocabulary entry library is the latest version, and meet the user service requirement of the application in the actual multilingual environment.
Specifically, when the service platform obtains the vocabulary entry update number and the vocabulary entry update level of at least one application in the vocabulary entry library, the service platform may determine the target application to be updated based on the vocabulary entry update number and the vocabulary entry update level according to a predetermined determination mode of the target application.
A determining mode may be that a number threshold corresponding to the number of the vocabulary entry updates is set, a level threshold of the vocabulary entry update level is set, and the service platform determines whether the number of the vocabulary entry updates of each application reaches the number threshold and/or whether the vocabulary entry update level reaches the level threshold; when the number of the vocabulary entry updates reaches the number threshold and/or the vocabulary entry update level reaches the level threshold, the application is regarded as the target application to be updated, wherein the number of the target applications can be a plurality.
The determining method may be that the number of the vocabulary entry updates and the vocabulary entry update level of each application are scored, the scoring method may be that the number of the vocabulary entry updates and the vocabulary entry update level are weighted, a first weight factor corresponding to the number of the vocabulary entry updates is set, a second weight factor corresponding to the vocabulary entry update level is set, a first product of the number of the vocabulary entry updates and the first weight factor is calculated, a second product of the vocabulary entry update level and the second weight factor is calculated, and the first product and the second product are summed to obtain the score of a certain application. When the score of the application is greater than the score threshold, the application may be treated as a target application to be updated.
The step of obtaining the term set corresponding to the target application from the term library may refer to step S101, which is not described herein.
Step S204: and acquiring a current entry identifier corresponding to each entry in the entry set and a current entry version number.
The current term identity may be understood as indicating information for a unique table term, and typically the application identity may be a term id or term name that uniquely characterizes the term identity, e.g. 1, 2, 3 etc. digits representing ids; may be key characters, such as a, b, c, etc., that uniquely characterize the term identification; may be a key string that uniquely characterizes the entry identifier, such as pth_a, pth_b, pth_c; etc.
The current vocabulary entry version number is an identification number of the current vocabulary entry, and is used for knowing whether the corresponding vocabulary entry is the latest vocabulary entry version or not. Wherein, the determination of the term version number is generally determined based on a version number naming convention, for example, a term version number naming convention may be: the version number is in the format of x.y.z (also known as major.minor.patch), and the rule of increment is:
x represents the major version number, and X is incremented when the entry or the compatibility of the entry corresponding to the application changes.
Y represents the minor version number, and Y is incremented when the term semantics are added (without affecting the term or the compatibility of the term's corresponding application).
Z represents the revision number, and Z is incremented when the entry Bug is repaired (without affecting the entry or the compatibility of the entry with the application to which it corresponds).
There are many naming rules of the version number of the term, and the above examples are only detailed definitions of the version number of the current term, and the naming rules of the version number of the term may refer to naming manners in the coherent technology, and are not limited herein.
Specifically, before the entry is added into the entry set in the entry library, the current entry identifier and the current entry version number corresponding to the entry are determined accordingly, and after the service platform obtains the entry set of the target application, the service platform can obtain the current entry identifier and the current entry version number corresponding to each entry in the entry set.
Step S205: and performing duplication removal processing on the vocabulary entry set based on the current vocabulary entry identifier and the current vocabulary entry version number.
Specifically, in practical application, after obtaining the term set of the target application, the term set generally corresponds to all terms corresponding to the target application in the term library, the terms may be terms corresponding to at least one language, the obtained term set may have a plurality of terms with the same term identifier (for example, there are repeated terms, terms with different versions corresponding to the same term identifier or terms with different creation times), the service platform firstly performs duplication removal on the terms in the term set, removes the repeated terms, and retains the terms with the latest version (the highest version or the latest creation date) so as to ensure that the term set after duplication removal does not contain the repeated terms and the current term version number of the terms is the highest.
Specifically, after the service platform obtains the vocabulary entry set of the target application, determining at least one reference vocabulary entry with the same current vocabulary entry identifier in each vocabulary entry in the vocabulary entry set, wherein the reference vocabulary entries are usually vocabulary entries with the same vocabulary entry identifier, the at least one reference vocabulary entry has repeated vocabulary entries, and vocabulary entries with different versions or different creation times corresponding to the same vocabulary entry identifier, the service platform needs to determine a final reference vocabulary entry after the duplication removal processing in the at least one reference vocabulary entry, and the rest reference vocabulary entries are discarded; the method comprises the steps of determining a reference entry version number of a target version in a current entry version number corresponding to each reference entry, (wherein the target version can be understood as a highest version, and the highest entry version, namely the reference entry version number, can be determined in each current entry version number according to an entry version number naming rule), after determining the reference entry version number, reserving the reference entry corresponding to the reference entry version number in each reference entry contained in the entry set by a service platform, and deleting the reference entry corresponding to a non-reference entry version number in each reference entry, so that de-duplication processing of the entry set is completed.
Step S206: and acquiring a history entry set of the target application, wherein the history entry set comprises at least one history entry.
In practical application, the target application is installed on a terminal (such as a mobile phone, a tablet, a computer and the like), the history vocabulary entry set can be understood as a history vocabulary entry set of all vocabulary entries currently contained in the target application on the terminal, or all vocabulary entries corresponding to a history release vocabulary entry version, and the history vocabulary entry set of the target application is usually pushed to the terminal by a service platform.
Step S207: and carrying out differential calculation on the vocabulary entry set based on each historical vocabulary entry, and determining an updated vocabulary entry.
In practical applications, a service platform as an application update (such as an entry update) provider of a target application will generally update and improve entries related to the target application in a multi-language environment regularly, so as to provide a better use experience for users, wherein incremental update is a commonly used way to generate a language update package of a new version of the target application. And carrying out differential calculation based on the historical vocabulary entry set and the vocabulary entry set to determine a difference file of the acquired vocabulary entry set compared with the historical vocabulary entry set, wherein the difference file is updated vocabulary entry.
Specifically, the service platform acquires a history entry identifier and a history entry version number corresponding to each history entry in the history entry set, wherein the history entry identifier can be understood as an entry identifier corresponding to a history release entry, and the history entry version number can be understood as an entry version number corresponding to the history release entry. Meanwhile, the service platform can acquire the current vocabulary entry identifier and the current vocabulary entry version number corresponding to each vocabulary entry in the vocabulary entry set.
Based on the history entry identifier and the history entry version number corresponding to each history entry and the current entry identifier and the current entry version number corresponding to each entry, the purpose of performing differential calculation on the term set by each history entry is to determine an increment term and a revised term in the term set, wherein the increment term and the revised term can be understood as updated terms to be updated.
The method comprises the following steps: the service platform determines increment entries in the entry set, wherein the current entry identifiers are inconsistent with the history entry identifiers, based on the history entry identifiers corresponding to each history entry, and it can be understood that the increment entries are relative to the history entries in the history set, namely, newly added entries are increment entries, so that only entries in the entry set, wherein the current entry identifiers are inconsistent with the history entry identifiers, are acquired, namely, increment entries, and the increment entries are taken as updated entries;
The method comprises the following steps: the service platform determines, in the vocabulary entry set, a revised vocabulary entry whose current vocabulary entry version number is inconsistent with the history vocabulary entry version number based on the history vocabulary entry version number corresponding to each history vocabulary entry, and it can be understood that the revised vocabulary entry is relative to the history vocabulary entry in the history set, that is, a new vocabulary entry, that is, a revised vocabulary entry, generated by revising the history vocabulary entry (revising the semantics of the vocabulary entry, the content of the vocabulary entry, and the like), and the newly generated revised vocabulary entry is generally the same as the vocabulary entry identifier of the history vocabulary entry, and the vocabulary entry version number is different. Therefore, only the vocabulary entry with the current vocabulary entry identification consistent with the history vocabulary entry identification and the vocabulary entry with the current vocabulary entry version number inconsistent with the history vocabulary entry version number is acquired from the vocabulary entry set, the vocabulary entry is the revised vocabulary entry, and the service platform takes the revised vocabulary entry as the updated vocabulary entry.
Step S208: generating a language update package containing the update vocabulary entry, and pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the vocabulary entry of the target application based on the language update package.
See step S102 to step S103, and are not described here.
In the embodiment of the application, a service platform acquires a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, generates a language update package containing the updated vocabulary entries, and pushes the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the vocabulary entries of the target application based on the language update package. When the service platform updates the application, the application is used as an update dimension, only a vocabulary entry set of a target application to be updated is required to be obtained, and a language update package can be pushed based on the update vocabulary entry in the vocabulary entry set, so that the problem of long application update period caused when the application is updated along with a system version update period by using the language as the dimension is avoided, the application update period is shortened, and the application update efficiency can be improved; and the service platform can determine the target application to be updated according to the vocabulary entry updating quantity and the vocabulary entry updating level of at least one application in the vocabulary entry library, so that the service platform can automatically determine the target application, and enriches the application updating modes.
Referring to fig. 3, fig. 3 is a flow chart illustrating another method for updating applications according to the present application. The method may be implemented in dependence on a computer program, and may be run on an application update device based on von neumann systems. The computer program may be integrated in the application or may run as a stand-alone tool class application. In order to better explain the application updating method, the application updating device is used as a terminal for detailed explanation.
The terminal may be an electronic device with network communication capabilities, including but not limited to: wearable devices, handheld devices, personal computers, tablet computers, in-vehicle devices, computing devices, or other processing devices connected to a wireless modem, etc. User terminals may be called different names in different networks, for example: a user equipment, an access terminal, a subscriber unit, a subscriber station, a mobile station, a remote terminal, a mobile device, a user terminal, a wireless communication device, a user agent or user equipment, a cellular telephone, a cordless telephone, a personal digital assistant (personal digital assistant, PDA), a terminal device in a 5G network or a future evolution network, and the like.
Specifically, the application updating method comprises the following steps:
step S301: and sending a language update request to the service platform, and receiving a language update package pushed by the service platform.
Specifically, after the application update detection function is triggered, if the user can select a "language and area" option in the setting page of the terminal, thereby triggering the application update detection function, and if the terminal can periodically start the application update detection function, it can be understood that the terminal can perform language detection on at least one installed application to determine whether application update is required for the application installed on the terminal.
In a specific embodiment, a terminal establishes a communication connection with a service platform based on a communication network in front of the service platform, and the terminal sends a language update request for at least one application to the service platform based on the communication connection;
the language update request is used for indicating a service platform to acquire update version information of a language update package corresponding to each application. It is understood that the request may be understood as code requesting the service platform to perform some control of the operation or the implementation of the function of "get updated version information of the language update package corresponding to each of the applications". In practical application, the service platform receives a language package update request, executes a code for acquiring update version information of a language update package corresponding to each application or realizing a certain control of functions, and sends the update version information to the terminal through communication connection with the terminal, wherein the update version information can be an update version number, an update package size and the like of the application;
The terminal can receive the updated version information sent by the service platform, then determine a target application to be updated in each application based on the updated version information of each application and the current version information of the application, for example, the terminal can determine whether the updated version number of the application is higher than the current version number by using the updated version number in the updated version information of each application and the current version number of the application on the terminal, and when the updated version number of the application is higher than the current version number, the terminal can use the application as the target application to be updated. And then sending a language update package acquisition request aiming at the target application to the service platform, so as to receive a language update package pushed when the service platform responds to the language update package acquisition request.
In a possible implementation manner, when a terminal sends a language update request, current version information of at least one application currently installed by the terminal can be jointly sent to a service platform along with the language update request, the service platform receives the language update request, can acquire the current version information jointly sent along with the language update request, then compares the current version number of the application in the current version information with an update version number of a language update package corresponding to the application on the service platform, judges whether the update version number of the application is higher than the current version number, and when the update version number of the application is higher than the current version number, the service platform can use the application as a target application to be updated. And sending the language update package of the target application to the terminal.
In a possible implementation manner, when an application is started, the terminal may query the server for an update version number corresponding to a language update package of the application, and if the update version number of the application is higher than a current version number of a language update package of an installed application in the terminal, the application is a target application of the language update package to be updated, then the terminal sends a language update package acquisition request for the target application to the server; the service platform receives a language update package acquisition request of the terminal, responds to the language update package acquisition request and pushes a language update package of the target application to the terminal; the terminal can receive the language update package sent by the service platform at the moment.
Step S302: and receiving a language update package pushed by a service platform, wherein the language update package is generated for the service platform aiming at a target application of the entry to be updated.
According to some embodiments, a service platform obtains a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, and after generating a language update package containing the updated vocabulary entries, the language update package can be directly pushed to a terminal based on communication connection before the terminal; the terminal can receive the language update package of the service platform at the moment.
In some embodiments, the application and the target application may be an application self-contained in the terminal operating system, and may be a third party application, where the third party application is developed by a third party, and is not an application self-contained in the terminal operating system, and includes some applications, applets, plug-ins, and the like developed by the third party. In this embodiment, the third party application may be understood as an application other than an application of the operating system preset system of the terminal, such as an application program of email, instant messaging, e-commerce, and the like. In practical applications, when the application updating device executes the application updating method, the application and/or the target application involved is mostly a system application preset by an operating system of the terminal, and/or a third party application customized by the terminal when leaving the factory, such as a phone book application, a weather application, a software store, a theme store, a game center, a music application, a video application, and the like.
Step S303: and performing entry updating on the target application based on the language updating package.
In a specific implementation scenario, after the terminal receives the language update package, the entry update process of the target application may be completed in a form of installing the language update package. As shown in fig. 4, fig. 4 is a schematic diagram of an update scenario of a language update package, where a term update process of a terminal may involve at least one management service on an operating system of the terminal, as shown in fig. 4: the package management service (PackageManagerService, PMS), the Overlay management service (OverlayManagerService, OMS) and the activity (process) management service (ActivityManagerService, AMS) specifically include 1, the terminal installs and analyzes the language update package through the PMS to obtain package information including updated entries in the language update package, as shown in fig. 5, fig. 5 is a schematic flow chart of installation of the language update package, specifically, the terminal installs the language update package (Overlay apk) by calling the PMS, analyzes package information of the language update package after installation, caches package information including updated entries, and broadcasts the installation completion information after the caching is completed.
2. The terminal builds a mapping path relation between the replacement data (targetapk entry file to be covered) and the update data (Overlay data containing the update entry), specifically, when the PMS broadcasts the installation completion information, the terminal can monitor the installation completion information of the PMS broadcast through the OMS, then acquire the packet information containing the update entry cached on the PMS, read the replacement data (targetapk entry file to be covered) and the update data (Overlay data containing the update entry), then call an idmap method to build an idmap mapping path relation to build a mapping relation between the replacement data (targetapk entry file to be covered) and the update data (Overlay data containing the update entry), and then caching packet information containing updated entries according to the idmap mapping path relation, adding the packet information into an entry file corresponding to the application, sorting all update data (i.e. updated entries) corresponding to the same targetapk entry file (replacement data) to be covered according to priority, calling a PMS by the terminal through the OMS, and writing paths of all Overlay packages into the target package, as shown in fig. 5, namely 'informing the target package of the paths added with the Overlay package', thereby completing the replacement process of the replacement data (targetapk entry file to be covered) based on the updated entries.
3. The terminal then invokes an OMS notification Activity Management Service (AMS) to update the entry resources, specifically to send a "schedule application CHANGED" message to the AMS informing the AMS of the updated resources (updating the data of the updated entry), to send an OVERLAY CHANGED broadcast, and to restart the affected application Activity (i.e., activity) during the entry update process.
It should be noted that, when the entry update is performed in the form of installing the language update package in the above manner, it is generally required to display the corresponding installation progress information on the display interface of the terminal and to authorize the user based on the prompt information before installation, and generally the entire entry update process is completed in a non-silent manner,
in a specific implementation scenario, after the terminal receives the language update package, the terminal may implement the replacement (RROruntime resource overlay, RRO) of the entry resource of the terminal application in a manner of installing (or uninstalling) the language update package, thereby completing the entire entry update process for the target application. In this way, the corresponding installation progress information does not need to be displayed on the display interface of the terminal, and the whole entry updating process is generally finished in a silent mode, specifically:
By constructing a term update service (i.e., a Controller service) when a target application is developed, the Controller service is used for managing a language update package pushed by a service platform by a terminal, as shown in fig. 6, fig. 6 is a schematic view of an update scenario of another language update package, and the term update process of the terminal may involve at least one management service on an operating system of the terminal, as shown in fig. 6: unlike the above implementation, in which the packet management service is started by the operating system SystemServer, OMS rely on PMS, and the general start-up sequence follows PMS, the control service, the packet management service, the overlay management service, and the activity (process) management service are specifically 1, by constructing a vocabulary update service (i.e., the control service) at the time of target application development, a vocabulary analysis interface of the overlay management service can be obtained through the vocabulary update service, and the vocabulary analysis interface is associated with the packet management service, and the packet management service can be started through the vocabulary update service (i.e., the control service). By implementing the RRO in a non-installation manner, the further terminal can receive the language update package pushed by the service platform by the Controller service, break the relation that the original OMS depends on the PMS, and can start the OMS service, as shown in fig. 7, fig. 7 is a schematic flow chart of another installation of the language update package, after the start, the terminal controls the Controller service to call the entry analysis interface of the OMS service to send the acquired language update package to the OMS service, namely, the "incoming language package information to the PMS service" in fig. 7.
2. Because the term analysis interface is associated with the package management service, the terminal can further control the Controller service to call the term analysis interface to call a package analysis method on the PMS so as to analyze the language update package, the terminal can obtain package information containing the updated term in the language update package through the PMS, and then control the PMS to return the analysis result to the OMS service: the language update package includes package information of the updated entry.
3. The OMS service of the terminal receives the analysis result of the PMS: after the package information containing the updated entry in the language update package, the terminal control entry update service (i.e. the Controller service) may call the Idmap method for constructing the IdmapManager class, and construct the mapping path relationship between the replacement data (targetapk to be covered) and the update data (Overlay data containing the updated entry), which may be understood that the terminal may construct the mapping path relationship of the updated entry in the entry file of the target application, and then execute the next step of adding the updated entry to the entry file according to the mapping path relationship, specifically as follows:
the terminal reads the replacement data (targetapk entry file to be covered) and the update data (Overlay data containing the update entry), then invokes an Idmap method of IdmapManager class to construct an Idmap mapping path relation, so as to establish a mapping relation between the replacement data (targetapk entry file to be covered) and the update data (Overlay data containing the update entry), then caches packet information containing the update entry according to the Idmap mapping path relation, adds the packet information into the entry file corresponding to the application, ranks all update data (i.e. update entries) corresponding to the same targetapk entry file to be covered according to priority, invokes PMS through OMS, and writes paths of all Overlay packages into the targetpackage as shown in fig. 7, namely, "notify the targetpackage that the path of the Overlay package is added with the Overlay package", so as to complete a replacement process of the replacement data (targetpk) based on the update entry.
4. The terminal then invokes an OMS notification Activity Management Service (AMS) to update the entry resources, specifically to send a "schedule application CHANGED" message to the AMS informing the AMS of the updated resources (updating the data of the updated entry), to send an OVERLAY CHANGED broadcast, and to restart the affected application Activity (i.e., activity) during the entry update process.
In the embodiment of the application, the terminal receives the language update package containing the updated vocabulary entry generated by the service platform, and the terminal can update the vocabulary entry of the target application based on the language update package. The terminal can quickly receive the language update package pushed by the service platform by taking the application as the update dimension, so that the problem of long application update period caused when the language is used as the dimension to update along with the system version update period is avoided, the period of the terminal for carrying out application update is shortened, and the efficiency of application update on the terminal can be improved; and the terminal can call the package management service to conduct package analysis on the language update package based on the term analysis interface on the term update service, so that the installation-free process of the term update of the target application based on the language update package is realized, the term update of the target application can be completed without installing the language update package, and the application update flow is simplified.
The following are examples of the apparatus of the present application that may be used to perform the method embodiments of the present application. For details not disclosed in the embodiments of the apparatus of the present application, please refer to the embodiments of the method of the present application.
Referring to fig. 8, a schematic structural diagram of an application updating device according to an exemplary embodiment of the present application is shown. The application updating means may be implemented as all or part of the apparatus by software, hardware or a combination of both. The device 1 comprises a vocabulary entry set acquisition module 11, a language update package generation module 12 and a language update package pushing module 13.
The term collection obtaining module 11 is configured to obtain a term collection corresponding to a target application from a term library, where the term collection includes terms corresponding to at least one language;
a language update package generating module 12, configured to determine an update term in the term set, and generate a language update package containing the update term;
and the language update package pushing module 13 is configured to push the language update package to a terminal, where the language update package is used to instruct the terminal to perform entry update on the target application based on the language update package.
Optionally, as shown in fig. 9, the term set obtaining module 11 is specifically configured to:
An update request receiving unit 111 for receiving a language pack update request input for a target application;
the term set obtaining unit 112 is configured to obtain a term set corresponding to the target application from a term library.
Optionally, as shown in fig. 9, the term set obtaining module 11 includes:
a quantity and level obtaining unit 113, configured to obtain at least one of a quantity of vocabulary entry updates and a level of vocabulary entry updates applied in the vocabulary entry library;
the term set obtaining unit 112 is further configured to determine a target application to be updated in the at least one application based on the term update number and the term update level, and obtain a term set corresponding to the target application from the term library.
Alternatively, as shown in fig. 13, the apparatus 1 includes:
the term duplication eliminating module 14 is configured to obtain a current term identifier and a current term version number corresponding to each term in the term set;
the term deduplication module 14 is further configured to perform deduplication processing on the term set based on the current term identifier and the current term version number.
Optionally, as shown in fig. 10, the term duplication removing module 14 includes:
A reference term determining unit 141, configured to determine at least one reference term having the same current term identifier in each term, and determine a reference term version number of a target version in a current term version number corresponding to each reference term;
a reference term retaining unit 142, configured to retain, in each of the reference terms included in the term set, the reference term corresponding to the reference term version number.
Optionally, as shown in fig. 11, the language update package generating module 12 includes:
a history vocabulary entry set obtaining unit 121, configured to obtain a history vocabulary entry set of the target application, where the history vocabulary entry set includes at least one history vocabulary entry;
an updated vocabulary entry determining unit 122, configured to determine updated vocabulary entries based on each of the historical vocabulary entries performing differential computation on the vocabulary entry set.
Alternatively, as shown in fig. 12, the updated entry determining unit 122 includes:
the identifier and version number determining subunit 1221 is configured to obtain a history entry identifier and a history entry version number corresponding to each history entry, and obtain a current entry identifier and a current entry version number corresponding to each entry in the entry set;
An updated vocabulary entry determining subunit 1222 configured to determine, in a vocabulary entry set, an incremental vocabulary entry whose current vocabulary entry identifier is inconsistent with the history vocabulary entry identifier, based on the history vocabulary entry identifier corresponding to each history vocabulary entry, and use the incremental vocabulary entry as the updated vocabulary entry;
a revised vocabulary entry updating subunit 1223, configured to determine, in the vocabulary entry set, a revised vocabulary entry, where the current vocabulary entry identifier is consistent with the history vocabulary entry identifier, and the current vocabulary entry version number is inconsistent with the history vocabulary entry version number, based on the history vocabulary entry version number and the history vocabulary entry identifier corresponding to each history vocabulary entry, and use the revised vocabulary entry as the updated vocabulary entry.
It should be noted that, when the application updating device provided in the foregoing embodiment executes the application updating method, only the division of the foregoing functional modules is used as an example, and in practical application, the foregoing functional allocation may be performed by different functional modules according to needs, that is, the internal structure of the device is divided into different functional modules, so as to complete all or part of the functions described above. In addition, the application updating device and the application updating method provided in the foregoing embodiments belong to the same concept, which embody the detailed implementation process in the method embodiment, and are not described herein again.
The foregoing embodiment numbers of the present application are merely for the purpose of description, and do not represent the advantages or disadvantages of the embodiments.
In the embodiment of the application, a service platform acquires a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, generates a language update package containing the updated vocabulary entries, and pushes the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the vocabulary entries of the target application based on the language update package. When the service platform updates the application, the application is used as an update dimension, only a vocabulary entry set of a target application to be updated is required to be obtained, and a language update package can be pushed based on the update vocabulary entry in the vocabulary entry set, so that the problem of long application update period caused when the application is updated along with a system version update period by using the language as the dimension is avoided, the application update period is shortened, and the application update efficiency can be improved; and the service platform can determine the target application to be updated according to the vocabulary entry updating quantity and the vocabulary entry updating level of at least one application in the vocabulary entry library, so that the service platform can automatically determine the target application, and enriches the application updating modes.
Referring to fig. 14, a schematic structural diagram of an application updating device according to an exemplary embodiment of the present application is shown. The application updating means may be implemented as all or part of the apparatus by software, hardware or a combination of both. The apparatus 2 comprises a language update package receiving module 21 and a vocabulary entry updating module 22.
The language update package receiving module 21 is configured to receive a language update package pushed by a service platform, where the language update package is generated for a target application of an entry to be updated by the service platform;
and the entry updating module 22 is configured to perform entry updating on the target application based on the language updating packet.
Optionally, as shown in fig. 15, the language update package receiving module 21 includes:
a language update request sending unit 211, configured to send a language update request to the service platform, and receive a language update packet pushed by the service platform;
the language update package receiving unit 212 is configured to receive a language update package pushed by the service platform.
Alternatively, as shown in fig. 16, the language update request transmitting unit 211 includes:
an update request sending subunit 2111, configured to send a language update request for at least one application to the service platform, where the language update request is used to instruct the service platform to obtain update version information of a language update package corresponding to each application;
A target application determining subunit 2112, configured to receive the updated version information sent by the service platform, and determine, in each application, a target application to be updated based on the updated version information and the current version information of each application;
an acquisition request transmitting subunit 2113 is configured to transmit a language update package acquisition request for the target application to the service platform.
Optionally, as shown in fig. 17, the entry updating module 22 includes:
a term analysis interface obtaining unit 221, configured to obtain a term analysis interface of the overlay management service through a term update service, where the term analysis interface is associated with the package management service;
an updated vocabulary entry obtaining unit 222, configured to invoke the package management service via the vocabulary entry analysis interface to perform package analysis on the language update package, so as to obtain an updated vocabulary entry after package analysis;
an entry file adding unit 223, configured to construct a mapping path relationship of the updated entry in the entry file of the target application, and add the updated entry to the entry file according to the mapping path relationship.
In the embodiment of the application, the terminal receives the language update package containing the updated vocabulary entry generated by the service platform, and the terminal can update the vocabulary entry of the target application based on the language update package. The terminal can quickly receive the language update package pushed by the service platform by taking the application as the update dimension, so that the problem of long application update period caused when the language is used as the dimension to update along with the system version update period is avoided, the period of the terminal for carrying out application update is shortened, and the efficiency of application update on the terminal can be improved; and the terminal can call the package management service to conduct package analysis on the language update package based on the term analysis interface on the term update service, so that the installation-free process of the term update of the target application based on the language update package is realized, the term update of the target application can be completed without installing the language update package, and the application update flow is simplified.
The embodiment of the present application further provides a computer storage medium, where the computer storage medium may store a plurality of instructions, where the instructions are adapted to be loaded by a processor and execute the application updating method according to the embodiment shown in fig. 1 to 8, and the specific execution process may refer to the specific description of the embodiment shown in fig. 1 to 8, which is not repeated herein.
The present application further provides a computer program product, where at least one instruction is stored, where the at least one instruction is loaded by the processor and executed by the processor to perform the application updating method according to the embodiment shown in fig. 1 to 8, and the specific execution process may refer to the specific description of the embodiment shown in fig. 1 to 8, which is not repeated herein.
Referring to fig. 18, a schematic structural diagram of an electronic device is provided in an embodiment of the present application. As shown in fig. 18, the electronic device 1000 may include: at least one processor 1001, at least one network interface 1004, a user interface 1003, a memory 1005, at least one communication bus 1002.
Wherein the communication bus 1002 is used to enable connected communication between these components.
The user interface 1003 may include a Display screen (Display) and a Camera (Camera), and the optional user interface 1003 may further include a standard wired interface and a wireless interface.
The network interface 1004 may optionally include a standard wired interface, a wireless interface (e.g., WI-FI interface), among others.
Wherein the processor 1001 may include one or more processing cores. The processor 1001 connects various parts within the entire server 1000 using various interfaces and lines, and performs various functions of the server 1000 and processes data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 1005, and calling data stored in the memory 1005. Alternatively, the processor 1001 may be implemented in at least one hardware form of digital signal processing (Digital Signal Processing, DSP), field programmable gate array (Field-Programmable Gate Array, FPGA), programmable logic array (Programmable Logic Array, PLA). The processor 1001 may integrate one or a combination of several of a central processing unit (Central Processing Unit, CPU), an image processor (Graphics Processing Unit, GPU), and a modem, etc. The CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for rendering and drawing the content required to be displayed by the display screen; the modem is used to handle wireless communications. It will be appreciated that the modem may not be integrated into the processor 1001 and may be implemented by a single chip.
The Memory 1005 may include a random access Memory (Random Access Memory, RAM) or a Read-Only Memory (Read-Only Memory). Optionally, the memory 1005 includes a non-transitory computer readable medium (non-transitory computer-readable storage medium). The memory 1005 may be used to store instructions, programs, code, sets of codes, or sets of instructions. The memory 1005 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, instructions for at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing the above-described respective method embodiments, etc.; the storage data area may store data or the like referred to in the above respective method embodiments. The memory 1005 may also optionally be at least one storage device located remotely from the processor 1001. As shown in fig. 18, an operating system, a network communication module, a user interface module, and an application update application program may be included in a memory 1005, which is one type of computer storage medium.
In the electronic device 1000 shown in fig. 18, a user interface 1003 is mainly used for providing an input interface for a user, and acquiring data input by the user; and the processor 1001 may be configured to invoke an application update application program stored in the memory 1005, and specifically perform the following operations:
Acquiring a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language;
determining updated vocabulary entries in the vocabulary entry set, and generating a language update package containing the updated vocabulary entries;
pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the entry of the target application based on the language update package.
In one embodiment, when executing the obtaining the vocabulary entry set corresponding to the target application in the vocabulary entry library, the processor 1001 specifically performs the following operations:
and receiving a language package updating request input for a target application, and acquiring a vocabulary entry set corresponding to the target application from a vocabulary entry library.
In one embodiment, when executing the obtaining the vocabulary entry set corresponding to the target application in the vocabulary entry library, the processor 1001 specifically performs the following operations:
acquiring at least one entry update quantity applied to an entry library and an entry update level;
and determining a target application to be updated in the at least one application based on the vocabulary entry updating quantity and the vocabulary entry updating level, and acquiring a vocabulary entry set corresponding to the target application from the vocabulary entry library.
In one embodiment, before performing the determining the updated vocabulary entry in the vocabulary entry set, the processor 1001 further performs the following operations:
acquiring a current entry identifier corresponding to each entry in the entry set and a current entry version number;
and performing duplication removal processing on the vocabulary entry set based on the current vocabulary entry identifier and the current vocabulary entry version number.
In one embodiment, when performing the deduplication processing on the vocabulary entry set based on the current vocabulary entry identifier and the current vocabulary entry version number, the processor 1001 further performs the following operations:
determining at least one reference entry with the same current entry identifier in each entry, and determining a reference entry version number of a target version in the current entry version number corresponding to each reference entry;
and reserving the reference vocabulary entry corresponding to the reference vocabulary entry version number in each reference vocabulary entry contained in the vocabulary entry set.
In one embodiment, the processor 1001, when executing the determining the updated entry in the entry set, specifically performs the following operations:
acquiring a history vocabulary entry set of the target application, wherein the history vocabulary entry set comprises at least one history vocabulary entry;
And carrying out differential calculation on the vocabulary entry set based on each historical vocabulary entry, and determining an updated vocabulary entry.
In one embodiment, the processor 1001, when performing the term difference calculation on the term set based on each of the historical terms, determines to update terms, specifically performs the following operations:
acquiring a history entry identifier and a history entry version number corresponding to each history entry, and acquiring a current entry identifier and a current entry version number corresponding to each entry in the entry set;
based on the history entry identification corresponding to each history entry, determining an increment entry of which the current entry identification is inconsistent with the history entry identification in an entry set, and taking the increment entry as the updated entry;
and based on the historical entry version number and the historical entry identification corresponding to each historical entry, determining that the current entry identification is consistent with the historical entry identification in the entry set, and taking the revised entry as the updated entry, wherein the revision entry is inconsistent with the historical entry version number.
In the embodiment of the application, a service platform acquires a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set comprises vocabulary entries corresponding to at least one language, then determines updated vocabulary entries in the vocabulary entry set, generates a language update package containing the updated vocabulary entries, and pushes the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the vocabulary entries of the target application based on the language update package. When the service platform updates the application, the application is used as an update dimension, only a vocabulary entry set of a target application to be updated is required to be obtained, and a language update package can be pushed based on the update vocabulary entry in the vocabulary entry set, so that the problem of long application update period caused when the application is updated along with a system version update period by using the language as the dimension is avoided, the application update period is shortened, and the application update efficiency can be improved; and the service platform can determine the target application to be updated according to the vocabulary entry updating quantity and the vocabulary entry updating level of at least one application in the vocabulary entry library, so that the service platform can automatically determine the target application, and enriches the application updating modes.
Referring to fig. 19, a block diagram of an electronic device according to an exemplary embodiment of the present application is shown. The electronic device of the present application may include one or more of the following components: processor 110, memory 120, input device 130, output device 140, and bus 150. The processor 110, the memory 120, the input device 130, and the output device 140 may be connected by a bus 150.
Processor 110 may include one or more processing cores. The processor 110 utilizes various interfaces and lines to connect various portions of the overall electronic device, perform various functions of the electronic device 100, and process data by executing or executing instructions, programs, code sets, or instruction sets stored in the memory 120, and invoking data stored in the memory 120. Alternatively, the processor 110 may be implemented in at least one hardware form of digital signal processing (digital signal processing, DSP), field-programmable gate array (field-programmable gate array, FPGA), programmable logic array (programmable logic Array, PLA). The processor 110 may integrate one or a combination of several of a central processing unit (central processing unit, CPU), an image processor (graphics processing unit, GPU), and a modem, etc. The CPU mainly processes an operating system, a user interface, an application program and the like; the GPU is used for being responsible for rendering and drawing of display content; the modem is used to handle wireless communications. It will be appreciated that the modem may not be integrated into the processor 110 and may be implemented solely by a single communication chip.
The memory 120 may include a random access memory (random Access Memory, RAM) or a read-only memory (ROM). Optionally, the memory 120 includes a non-transitory computer readable medium (non-transitory computer-readable storage medium). Memory 120 may be used to store instructions, programs, code, sets of codes, or sets of instructions. The memory 120 may include a stored program area and a stored data area, wherein the stored program area may store instructions for implementing an operating system, which may be an Android (Android) system, including an Android system-based deep development system, an IOS system developed by apple corporation, including an IOS system-based deep development system, or other systems, instructions for implementing at least one function (such as a touch function, a sound playing function, an image playing function, etc.), instructions for implementing various method embodiments described below, and the like. The storage data area may also store data created by the electronic device in use, such as phonebooks, audiovisual data, chat log data, and the like.
Referring to FIG. 20, the memory 120 may be divided into an operating system space in which the operating system is running and a user space in which native and third party applications are running. In order to ensure that different third party application programs can achieve better operation effects, the operating system allocates corresponding system resources for the different third party application programs. However, the requirements of different application scenarios in the same third party application program on system resources are different, for example, under the local resource loading scenario, the third party application program has higher requirement on the disk reading speed; in the animation rendering scene, the third party application program has higher requirements on the GPU performance. The operating system and the third party application program are mutually independent, and the operating system often cannot timely sense the current application scene of the third party application program, so that the operating system cannot perform targeted system resource adaptation according to the specific application scene of the third party application program.
In order to enable the operating system to distinguish specific application scenes of the third-party application program, data communication between the third-party application program and the operating system needs to be communicated, so that the operating system can acquire current scene information of the third-party application program at any time, and targeted system resource adaptation is performed based on the current scene.
Taking an operating system as an Android system as an example, as shown in fig. 21, a program and data stored in the memory 120 may be stored in the memory 120 with a Linux kernel layer 320, a system runtime library layer 340, an application framework layer 360 and an application layer 380, where the Linux kernel layer 320, the system runtime library layer 340 and the application framework layer 360 belong to an operating system space, and the application layer 380 belongs to a user space. The Linux kernel layer 320 provides the underlying drivers for various hardware of the electronic device, such as display drivers, audio drivers, camera drivers, bluetooth drivers, wi-Fi drivers, power management, and the like. The system runtime layer 340 provides the main feature support for the Android system through some C/c++ libraries. For example, the SQLite library provides support for databases, the OpenGL/ES library provides support for 3D graphics, the Webkit library provides support for browser kernels, and the like. Also provided in the system runtime library layer 340 is a An Zhuoyun runtime library (Android run) which provides mainly some core libraries that can allow developers to write Android applications using the Java language. The application framework layer 360 provides various APIs that may be used in building applications, which developers can also build their own applications by using, for example, campaign management, window management, view management, notification management, content provider, package management, call management, resource management, location management. At least one application program is running in the application layer 380, and these application programs may be native application programs of the operating system, such as a contact program, a short message program, a clock program, a camera application, etc.; and may also be a third party application developed by a third party developer, such as a game-like application, instant messaging program, photo beautification program, application update program, etc.
Taking an operating system as an IOS system as an example, the programs and data stored in the memory 120 are shown in fig. 22, the IOS system includes: core operating system layer 420 (Core OS layer), core service layer 440 (Core Services layer), media layer 460 (Media layer), and touchable layer 480 (Cocoa Touch Layer). The core operating system layer 420 includes an operating system kernel, drivers, and underlying program frameworks that provide more hardware-like functionality for use by the program frameworks at the core services layer 440. The core services layer 440 provides system services and/or program frameworks required by the application, such as a Foundation (Foundation) framework, an account framework, an advertisement framework, a data storage framework, a network connection framework, a geographic location framework, a sports framework, and the like. The media layer 460 provides an interface for applications related to audiovisual aspects, such as a graphics-image related interface, an audio technology related interface, a video technology related interface, an audio video transmission technology wireless play (AirPlay) interface, and so forth. The touchable layer 480 provides various commonly used interface-related frameworks for application development, with the touchable layer 480 being responsible for user touch interactions on the electronic device. Such as a local notification service, a remote push service, an advertisement framework, a game tool framework, a message User Interface (UI) framework, a User Interface UIKit framework, a map framework, and so forth.
Among the frameworks shown in fig. 22, frameworks related to most applications include, but are not limited to: the infrastructure in core services layer 440 and the UIKit framework in touchable layer 480. The infrastructure provides many basic object classes and data types, providing the most basic system services for all applications, independent of the UI. While the class provided by the UIKit framework is a basic UI class library for creating touch-based user interfaces, iOS applications can provide UIs based on the UIKit framework, so it provides the infrastructure for applications to build user interfaces, draw, process and user interaction events, respond to gestures, and so on.
The manner and principle of implementing data communication between the third party application program and the operating system in the IOS system can refer to the Android system, and the application is not described herein.
The input device 130 is configured to receive input instructions or data, and the input device 130 includes, but is not limited to, a keyboard, a mouse, a camera, a microphone, or a touch device. The output device 140 is used to output instructions or data, and the output device 140 includes, but is not limited to, a display device, a speaker, and the like. In one example, the input device 130 and the output device 140 may be combined, and the input device 130 and the output device 140 are a touch display screen for receiving a touch operation thereon or thereabout by a user using a finger, a touch pen, or any other suitable object, and displaying a user interface of each application program. Touch display screens are typically provided on the front panel of an electronic device. The touch display screen may be designed as a full screen, a curved screen, or a contoured screen. The touch display screen may also be designed as a combination of a full screen and a curved screen, and the combination of a special-shaped screen and a curved screen, which is not limited in the embodiment of the present application.
In addition, those skilled in the art will appreciate that the configuration of the electronic device shown in the above-described figures does not constitute a limitation of the electronic device, and the electronic device may include more or less components than illustrated, or may combine certain components, or may have a different arrangement of components. For example, the electronic device further includes components such as a radio frequency circuit, an input unit, a sensor, an audio circuit, a wireless fidelity (wireless fidelity, wiFi) module, a power supply, and a bluetooth module, which are not described herein.
In the embodiment of the present application, the execution subject of each step may be the electronic device described above. Optionally, the execution subject of each step is an operating system of the electronic device. The operating system may be an android system, an IOS system, or other operating systems, which is not limited by the embodiments of the present application.
The electronic device of the embodiment of the application can be further provided with a display device, and the display device can be various devices capable of realizing display functions, such as: cathode ray tube displays (cathode ray tubedisplay, CR), light-emitting diode displays (light-emitting diode display, LED), electronic ink screens, liquid crystal displays (liquid crystal display, LCD), plasma display panels (plasma display panel, PDP), and the like. A user may utilize a display device on electronic device 101 to view displayed text, images, video, etc. The electronic device may be a smart phone, a tablet computer, a gaming device, an AR (Augmented Reality ) device, an automobile, a data storage device, an audio playing device, a video playing device, a notebook, a desktop computing device, a wearable device such as an electronic watch, electronic glasses, an electronic helmet, an electronic bracelet, an electronic necklace, an electronic article of clothing, etc.
In the electronic device shown in fig. 19, where the electronic device may be a terminal, the processor 110 may be configured to invoke the application update application program stored in the memory 120 and specifically perform the following operations:
receiving a language update package pushed by a service platform, wherein the language update package is generated for the service platform aiming at a target application of an entry to be updated;
and performing entry updating on the target application based on the language updating package.
In one embodiment, the processor 110, when executing the language update package pushed by the receiving service platform, specifically performs the following operations:
a language update request is sent to a service platform, and a language update package pushed by the service platform is received; or alternatively, the first and second heat exchangers may be,
and receiving a language update package pushed by the service platform.
In one embodiment, when executing the language update request sent to the service platform and receiving the language update package sent by the service platform, the processor 110 specifically performs the following operations:
a language update request for at least one application is sent to the service platform, and the language update request is used for indicating the service platform to acquire update version information of a language update package corresponding to each application;
Receiving the updated version information sent by the service platform, and determining a target application to be updated in each application based on the updated version information and the current version information of each application;
and sending a language update package acquisition request aiming at the target application to the service platform.
In one embodiment, the processor 110, when executing the term update for the target application based on the language update package, specifically performs the following operations:
acquiring an entry analysis interface of the superposition management service through an entry updating service, wherein the entry analysis interface is associated with the package management service;
calling the package management service through the entry analysis interface to conduct package analysis on the language update package to obtain an updated entry after package analysis;
and constructing a mapping path relation of the updated vocabulary entry in the vocabulary entry file of the target application, and adding the updated vocabulary entry into the vocabulary entry file according to the mapping path relation.
In the embodiment of the application, the terminal receives the language update package containing the updated vocabulary entry generated by the service platform, and the terminal can update the vocabulary entry of the target application based on the language update package. The terminal can quickly receive the language update package pushed by the service platform by taking the application as the update dimension, so that the problem of long application update period caused when the language is used as the dimension to update along with the system version update period is avoided, the period of the terminal for carrying out application update is shortened, and the efficiency of application update on the terminal can be improved; and the terminal can call the package management service to conduct package analysis on the language update package based on the term analysis interface on the term update service, so that the installation-free process of the term update of the target application based on the language update package is realized, the term update of the target application can be completed without installing the language update package, and the application update flow is simplified.
It will be clear to a person skilled in the art that the solution according to the application can be implemented by means of software and/or hardware. "Unit" and "module" in this specification refer to software and/or hardware capable of performing a specific function, either alone or in combination with other components, such as Field programmable gate arrays (Field-ProgrammaBLE Gate Array, FPGAs), integrated circuits (Integrated Circuit, ICs), etc.
It should be noted that, for simplicity of description, the foregoing method embodiments are all described as a series of acts, but it should be understood by those skilled in the art that the present application is not limited by the order of acts described, as some steps may be performed in other orders or concurrently in accordance with the present application. Further, those skilled in the art will also appreciate that the embodiments described in the specification are all preferred embodiments, and that the acts and modules referred to are not necessarily required for the present application.
In the foregoing embodiments, the descriptions of the embodiments are emphasized, and for parts of one embodiment that are not described in detail, reference may be made to related descriptions of other embodiments.
In the several embodiments provided by the present application, it should be understood that the disclosed apparatus may be implemented in other manners. For example, the apparatus embodiments described above are merely illustrative, such as the division of the units, merely a logical function division, and there may be additional manners of dividing the actual implementation, such as multiple units or components may be combined or integrated into another system, or some features may be omitted, or not performed. Alternatively, the coupling or direct coupling or communication connection shown or discussed with each other may be through some service interface, device or unit indirect coupling or communication connection, electrical or otherwise.
The units described as separate units may or may not be physically separate, and units shown as units may or may not be physical units, may be located in one place, or may be distributed on a plurality of network units. Some or all of the units may be selected according to actual needs to achieve the purpose of the solution of this embodiment.
In addition, each functional unit in the embodiments of the present application may be integrated in one processing unit, or each unit may exist alone physically, or two or more units may be integrated in one unit. The integrated units may be implemented in hardware or in software functional units.
The integrated units, if implemented in the form of software functional units and sold or used as stand-alone products, may be stored in a computer readable memory. Based on such understanding, the technical solution of the present application may be embodied essentially or partly in the form of a software product or all or part of the technical solution, which is stored in a memory, and includes several instructions for causing a computer device (which may be a personal computer, a service platform, or a network device, etc.) to perform all or part of the steps of the method according to the embodiments of the present application. And the aforementioned memory includes: a U-disk, a Read-Only Memory (ROM), a random access Memory (Random Access Memory, RAM), a removable hard disk, a magnetic disk, or an optical disk, or other various media capable of storing program codes.
Those of ordinary skill in the art will appreciate that all or a portion of the steps in the various methods of the above embodiments may be performed by hardware associated with a program that is stored in a computer readable memory, which may include: flash disk, read-Only Memory (ROM), random-access Memory (Random Access Memory, RAM), magnetic or optical disk, and the like.
The foregoing is merely exemplary embodiments of the present disclosure and is not intended to limit the scope of the present disclosure. That is, equivalent changes and modifications are contemplated by the teachings of this disclosure, which fall within the scope of the present disclosure. Other embodiments of the disclosure will be apparent to those skilled in the art from consideration of the specification and practice of the disclosure herein. This application is intended to cover any variations, uses, or adaptations of the disclosure following, in general, the principles of the disclosure and including such departures from the present disclosure as come within known or customary practice within the art to which the disclosure pertains. It is intended that the specification and examples be considered as exemplary only, with a scope and spirit of the disclosure being indicated by the claims.

Claims (13)

1. An application updating method, applied to a service platform, the method comprising:
Establishing application vocabulary entry indexes of a plurality of applications and vocabulary entries corresponding to the applications aiming at the vocabulary entry library, wherein the application vocabulary entry indexes are established based on application identifiers of the applications and vocabulary entries corresponding to the applications, the vocabulary entries in the vocabulary entry library are vocabulary entries corresponding to one or more languages in a multilingual environment, and the vocabulary entries in the vocabulary entry library have unique mapping relations with the applications and/or the vocabulary entries in the vocabulary entry library have multiple mapping relations with the applications;
acquiring a vocabulary entry set corresponding to a target application from a vocabulary entry library, wherein the vocabulary entry set corresponding to the target application comprises a plurality of vocabulary entries corresponding to the target application, and the vocabulary entries are vocabulary entries corresponding to one or more languages in a multilingual environment; the obtaining the vocabulary entry set corresponding to the target application in the vocabulary entry library comprises the following steps: based on an application identifier of a target application, searching all or part of vocabulary entries corresponding to the application identifier according to the application vocabulary entry index, wherein all or part of vocabulary entries corresponding to the searched application identifier form a vocabulary entry set corresponding to the target application;
determining updated vocabulary entries in the vocabulary entry set, and generating a language update package containing the updated vocabulary entries;
pushing the language update package to a terminal, wherein the language update package is used for indicating the terminal to update the entry of the target application based on the language update package.
2. The method of claim 1, wherein the obtaining the vocabulary entry set corresponding to the target application in the vocabulary entry library comprises:
and receiving a language package updating request input for a target application, and acquiring a vocabulary entry set corresponding to the target application from a vocabulary entry library.
3. The method of claim 1, wherein the obtaining the vocabulary entry set corresponding to the target application in the vocabulary entry library comprises:
acquiring at least one entry update quantity applied to an entry library and an entry update level;
and determining a target application to be updated in the at least one application based on the vocabulary entry updating quantity and the vocabulary entry updating level, and acquiring a vocabulary entry set corresponding to the target application from the vocabulary entry library.
4. The method of claim 1, wherein prior to determining the updated term in the set of terms, further comprising:
acquiring a current entry identifier corresponding to each entry in the entry set and a current entry version number;
and performing duplication removal processing on the vocabulary entry set based on the current vocabulary entry identifier and the current vocabulary entry version number.
5. The method of claim 4, wherein the de-duplication processing of the vocabulary entry set based on the current vocabulary entry identification and the current vocabulary entry version number comprises:
Determining at least one reference entry with the same current entry identifier in each entry, and determining a reference entry version number of a target version in the current entry version number corresponding to each reference entry;
and reserving the reference vocabulary entry corresponding to the reference vocabulary entry version number in each reference vocabulary entry contained in the vocabulary entry set.
6. The method of claim 1, wherein the determining updated terms in the set of terms comprises:
acquiring a history vocabulary entry set of the target application, wherein the history vocabulary entry set comprises at least one history vocabulary entry;
and carrying out differential calculation on the vocabulary entry set based on each historical vocabulary entry, and determining an updated vocabulary entry.
7. The method of claim 6, wherein said performing a term difference calculation on said collection of terms based on each of said historical terms, determining updated terms comprises:
acquiring a history entry identifier and a history entry version number corresponding to each history entry, and acquiring a current entry identifier and a current entry version number corresponding to each entry in the entry set;
based on the history entry identification corresponding to each history entry, determining an increment entry of which the current entry identification is inconsistent with the history entry identification in an entry set, and taking the increment entry as the updated entry;
And based on the historical entry version number and the historical entry identification corresponding to each historical entry, determining that the current entry identification is consistent with the historical entry identification in the entry set, and taking the revised entry as the updated entry, wherein the revision entry is inconsistent with the historical entry version number.
8. An application updating method, applied to a terminal, the method comprising:
receiving a language update package pushed by a service platform, wherein the language update package is a language update package which is used by the service platform for acquiring an entry set corresponding to a target application from an entry library, updating an entry determined from the entry set, and aiming at the target application and containing the updated entry;
the service platform obtains the vocabulary entry set corresponding to the target application from the vocabulary entry library, which comprises the following steps: the service platform searches all or part of vocabulary entries corresponding to the application identifier according to the application vocabulary entry index based on the application identifier of the target application, and all or part of vocabulary entries corresponding to the searched application identifier form a vocabulary entry set corresponding to the target application; the application vocabulary entry index is an application vocabulary entry index of a plurality of applications and vocabulary entries corresponding to the applications, which are established by the service platform aiming at the vocabulary entry library, the application vocabulary entry index is established based on the application identification of the applications and the vocabulary entries corresponding to the applications, the vocabulary entries in the vocabulary entry library are vocabulary entries corresponding to one or more languages in a multi-language environment, and the vocabulary entries in the vocabulary entry library have unique mapping relation with the applications and/or the vocabulary entries in the vocabulary entry library have multi-mapping relation with the plurality of applications;
And performing entry updating on the target application based on the language updating package.
9. The method of claim 8, wherein receiving the language update package pushed by the service platform comprises:
a language update request is sent to a service platform, and a language update package pushed by the service platform is received; or alternatively, the first and second heat exchangers may be,
and receiving a language update package pushed by the service platform.
10. The method of claim 9, wherein the sending a language update request to the service platform, receiving a language update package sent by the service platform, comprises:
a language update request for at least one application is sent to the service platform, and the language update request is used for indicating the service platform to acquire update version information of a language update package corresponding to each application;
receiving the updated version information sent by the service platform, and determining a target application to be updated in each application based on the updated version information and the current version information of each application;
and sending a language update package acquisition request aiming at the target application to the service platform.
11. The method of claim 8, wherein the performing an entry update on the target application based on the language update package comprises:
Acquiring an entry analysis interface of the superposition management service through an entry updating service, wherein the entry analysis interface is associated with the package management service;
calling the package management service through the entry analysis interface to conduct package analysis on the language update package to obtain an updated entry after package analysis;
and constructing a mapping path relation of the updated vocabulary entry in the vocabulary entry file of the target application, and adding the updated vocabulary entry into the vocabulary entry file according to the mapping path relation.
12. A computer storage medium storing a plurality of instructions adapted to be loaded by a processor and to perform the method steps of any one of claims 1 to 7, 8 to 11.
13. An electronic device, comprising: a processor and a memory; wherein the memory stores a computer program adapted to be loaded by the processor and to perform the method steps of any of claims 1-7, 8-11.
CN202010323166.2A 2020-04-22 2020-04-22 Application updating method and device, storage medium and electronic equipment Active CN111625250B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010323166.2A CN111625250B (en) 2020-04-22 2020-04-22 Application updating method and device, storage medium and electronic equipment

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010323166.2A CN111625250B (en) 2020-04-22 2020-04-22 Application updating method and device, storage medium and electronic equipment

Publications (2)

Publication Number Publication Date
CN111625250A CN111625250A (en) 2020-09-04
CN111625250B true CN111625250B (en) 2023-11-10

Family

ID=72260969

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010323166.2A Active CN111625250B (en) 2020-04-22 2020-04-22 Application updating method and device, storage medium and electronic equipment

Country Status (1)

Country Link
CN (1) CN111625250B (en)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112069778A (en) * 2020-11-16 2020-12-11 深圳优美创新科技有限公司 Entry system management method, system and storage medium compatible with multiple operating systems
CN113609870B (en) * 2021-07-23 2024-06-07 深圳市元征科技股份有限公司 Translation method, translation device, server and readable storage medium
CN115757996A (en) * 2021-09-03 2023-03-07 腾讯科技(深圳)有限公司 Browser page update method and device
CN114429145A (en) * 2022-01-27 2022-05-03 深圳Tcl新技术有限公司 Entry translation method and device, electronic equipment and computer readable storage medium
CN116881388A (en) * 2023-06-02 2023-10-13 中国银行股份有限公司 Entry database determination method, apparatus, device, storage medium, and program product

Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081535A (en) * 2010-12-17 2011-06-01 东莞宇龙通信科技有限公司 Android-based application program upgrading method and system and application development platform
CN103440145A (en) * 2013-08-16 2013-12-11 广东欧珀移动通信有限公司 Application program update method, device and mobile terminal
CN105718251A (en) * 2014-12-03 2016-06-29 苏宁云商集团股份有限公司 Multilanguage SDK (software development kit) automatic implementation method and system
CN106020916A (en) * 2016-07-04 2016-10-12 乐视控股(北京)有限公司 Method for updating application, terminal equipment and server
CN107203395A (en) * 2017-05-19 2017-09-26 北京京东尚科信息技术有限公司 Resource graded method, device and computer-readable recording medium and electronic equipment
CN108399064A (en) * 2017-02-07 2018-08-14 南京南瑞继保电气有限公司 Multilingual entry generation method based on Qt exploitations
CN108804175A (en) * 2018-05-21 2018-11-13 Oppo(重庆)智能科技有限公司 Multilingual adaptation method, mobile terminal and computer readable storage medium
CN109032717A (en) * 2018-06-15 2018-12-18 福建天晴数码有限公司 A kind of method and system updating interface display language
CN109445827A (en) * 2018-11-16 2019-03-08 网易(杭州)网络有限公司 A kind of method and device of game renewal, electronic equipment, storage medium
CN110532016A (en) * 2019-08-16 2019-12-03 北京齐尔布莱特科技有限公司 Method for edition management, method for updating edition and edition management system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10127469B2 (en) * 2015-08-31 2018-11-13 Microsoft Technology Licensing, Llc Leveraging digital images of user information in a social network

Patent Citations (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102081535A (en) * 2010-12-17 2011-06-01 东莞宇龙通信科技有限公司 Android-based application program upgrading method and system and application development platform
CN103440145A (en) * 2013-08-16 2013-12-11 广东欧珀移动通信有限公司 Application program update method, device and mobile terminal
CN105718251A (en) * 2014-12-03 2016-06-29 苏宁云商集团股份有限公司 Multilanguage SDK (software development kit) automatic implementation method and system
CN106020916A (en) * 2016-07-04 2016-10-12 乐视控股(北京)有限公司 Method for updating application, terminal equipment and server
CN108399064A (en) * 2017-02-07 2018-08-14 南京南瑞继保电气有限公司 Multilingual entry generation method based on Qt exploitations
CN107203395A (en) * 2017-05-19 2017-09-26 北京京东尚科信息技术有限公司 Resource graded method, device and computer-readable recording medium and electronic equipment
CN108804175A (en) * 2018-05-21 2018-11-13 Oppo(重庆)智能科技有限公司 Multilingual adaptation method, mobile terminal and computer readable storage medium
CN109032717A (en) * 2018-06-15 2018-12-18 福建天晴数码有限公司 A kind of method and system updating interface display language
CN109445827A (en) * 2018-11-16 2019-03-08 网易(杭州)网络有限公司 A kind of method and device of game renewal, electronic equipment, storage medium
CN110532016A (en) * 2019-08-16 2019-12-03 北京齐尔布莱特科技有限公司 Method for edition management, method for updating edition and edition management system

Also Published As

Publication number Publication date
CN111625250A (en) 2020-09-04

Similar Documents

Publication Publication Date Title
CN111625250B (en) Application updating method and device, storage medium and electronic equipment
CN110597595B (en) Method for providing multi-language information, method for configuring multi-language information, device, equipment and medium
US10713034B2 (en) Updating web resources
CN110990105B (en) Interface display method and device, electronic equipment and storage medium
WO2020186904A1 (en) Text adaptive display method and apparatus, electronic device, server, and storage medium
CN113312257B (en) Version identification method and device, storage medium and computer equipment
JP2021197153A (en) Method and apparatus for recognizing word slot, electronic apparatus, storage medium and computer program
CN114153856A (en) Host data double write method and device
CN113204425A (en) Method and device for process management internal thread, electronic equipment and storage medium
US10814229B2 (en) Fragment-based mobile device application streaming utilizing crowd-sourcing
CN113378895B (en) Classification model generation method and device, storage medium and electronic equipment
CN113742716B (en) Code running method, device, electronic equipment, storage medium and program product
CN111694629A (en) Information display method and device and electronic equipment
CN113268221B (en) File matching method, device, storage medium and computer equipment
CN116069366A (en) Client application program updating method and device, storage medium and electronic equipment
CN111787043A (en) Data request method and device
CN103309677A (en) Built-in resource management method, device and terminal
CN115934076B (en) Cross-platform client micro-service providing device and method and electronic equipment
CN111488286A (en) Method and device for independently developing Android module
CN110297898A (en) Asynchronous Compilation Method and device
CN113268414B (en) Experimental version distribution method, device, storage medium and computer equipment
CN115509634A (en) Input method configuration method, character input method, device and medium
CN113778386B (en) Component generation method, device, storage medium and electronic device
CN111209225B (en) Method, device, medium and electronic equipment for acquiring real address
CN118820318A (en) Data processing method, device, storage medium and electronic device

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