[go: up one dir, main page]

CN110244976A - Application program version switching method and device - Google Patents

Application program version switching method and device Download PDF

Info

Publication number
CN110244976A
CN110244976A CN201910421991.3A CN201910421991A CN110244976A CN 110244976 A CN110244976 A CN 110244976A CN 201910421991 A CN201910421991 A CN 201910421991A CN 110244976 A CN110244976 A CN 110244976A
Authority
CN
China
Prior art keywords
application program
data
version
version number
configuration information
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201910421991.3A
Other languages
Chinese (zh)
Inventor
许剑勇
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
OneConnect Smart Technology Co Ltd
Original Assignee
OneConnect Smart 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 OneConnect Smart Technology Co Ltd filed Critical OneConnect Smart Technology Co Ltd
Priority to CN201910421991.3A priority Critical patent/CN110244976A/en
Publication of CN110244976A publication Critical patent/CN110244976A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Storage Device Security (AREA)
  • Stored Programmes (AREA)

Abstract

本发明实施例公开了一种应用程序版本切换方法及装置,该方法适用于发布过程优化。该方法包括:获取第一应用程序中的第一数据,基于第一加密软件对应的第一解密软件对第一加密数据进行解密以得到第一解密数据,并基于第一应用程序的第一版本配置信息和第一解密数据生成第二应用程序;基于第二加密软件对第二应用程序中的第二数据进行加密,以得到第二加密数据;获取第一更新信息和第二应用程序的第二版本配置信息,基于第二加密数据、第一更新信息以及第二版本配置信息,生成第三应用程序。采用本发明实施例,可实现应用程序中的数据在应用程序进行版本切换过程中的平稳转移,避免了应用程序进行版本切换后数据不能读取的情况,适用性高。

The embodiment of the invention discloses an application program version switching method and device, and the method is suitable for publishing process optimization. The method includes: obtaining first data in the first application program, decrypting the first encrypted data based on the first decryption software corresponding to the first encryption software to obtain the first decrypted data, and obtaining the first decrypted data based on the first version of the first application program The configuration information and the first decrypted data generate a second application program; encrypt the second data in the second application program based on the second encryption software to obtain the second encrypted data; obtain the first update information and the first update information of the second application program The second version configuration information generates the third application program based on the second encrypted data, the first update information and the second version configuration information. By adopting the embodiment of the present invention, the data in the application program can be smoothly transferred during the version switching process of the application program, avoiding the situation that the data cannot be read after the version switching of the application program, and has high applicability.

Description

应用程序版本切换方法及装置Application program version switching method and device

技术领域technical field

本发明涉及移动通信技术领域,尤其涉及一种应用程序版本切换方法及装置。The present invention relates to the technical field of mobile communication, in particular to an application program version switching method and device.

背景技术Background technique

随着移动通信技术的不断发展,各种针对终端设备的应用程序层出不穷,极大地丰富了终端设备的功能,为用户提供了多种丰富的功能。针对同一应用程序,应用程序厂家经常推出新版本的应用程序,以增加新的功能或者修正原有程序的错误。With the continuous development of mobile communication technology, various application programs for terminal equipment emerge in an endless stream, which greatly enriches the functions of the terminal equipment and provides users with a variety of rich functions. For the same application program, the application program manufacturer often releases a new version of the application program to add new functions or correct errors of the original program.

同时,各种应用程序为了保证用户数据安全,一般都会采用第三方的加密软件对应用程序内的数据进行加密,以保护用户信息不被泄露。然而在应用程序切换不同的版本过程中,一旦新版本更换加密软件,则旧版本应用程序中的用户数据可能存在在新版本应用程序中不能读取、不兼容的情况,甚至导致新版本应用程序不可用现象,为用户带来极差的用户体验。At the same time, in order to ensure the security of user data, various applications generally use third-party encryption software to encrypt the data in the application to protect user information from being leaked. However, in the process of switching between different versions of the application, once the new version replaces the encryption software, the user data in the old version of the application may not be readable or incompatible in the new version of the application, and even cause the new version of the application to The phenomenon of unavailability brings extremely poor user experience to users.

发明内容Contents of the invention

本发明实施例提供一种应用程序版本切换方法及相关装置,可实现应用程序中的数据在应用程序进行版本切换过程中的平稳转移,避免了应用程序进行版本切换后数据不能读取的情况,适用性高。The embodiment of the present invention provides an application program version switching method and a related device, which can realize the smooth transfer of data in the application program during the version switching process of the application program, and avoid the situation that the data cannot be read after the version switching of the application program. High applicability.

第一方面,本发明实施例提供一种应用程序版本切换方法,该方法包括:In a first aspect, an embodiment of the present invention provides an application program version switching method, the method comprising:

获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据;Acquiring first data in the first application program, where the first data includes first encrypted data encrypted based on the first encryption software;

基于上述第一加密软件对应的第一解密软件对上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序;Decrypt the first encrypted data based on the first decryption software corresponding to the first encryption software to obtain first decrypted data, and generate a second application based on the first version configuration information of the first application program and the first decrypted data program;

基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据;Encrypting the second data in the second application program based on the second encryption software to obtain the second encrypted data;

获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。Acquire the first update information and the second version configuration information of the second application program, and generate a third application program based on the second encrypted data, the first update information, and the second version configuration information.

在本发明实施例中,通过第一加密软件对应的第一解密软件对第一加密数据进行解密,保证了解密得到的第一解密数据的完整性,避免了由于随意采用解密软件对第一加密数据进行加密导致的第一解密数据的数据混乱。同时基于更新信息生成第三应用程序时,既完成了应用程序的版本切换,也完成了数据的平稳过渡,稳定性好,适用性高。In the embodiment of the present invention, the first encrypted data is decrypted by the first decryption software corresponding to the first encryption software, which ensures the integrity of the first decrypted data obtained by decryption, and avoids the possibility of decrypting the first encrypted data due to random use of the decryption software. Encrypting the data results in data scrambling of the first decrypted data. At the same time, when the third application program is generated based on the update information, not only the version switching of the application program is completed, but also the smooth transition of data is completed, with good stability and high applicability.

结合第一方面,在一种可能的实施方式中,上述基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序包括:With reference to the first aspect, in a possible implementation manner, the generating the second application program based on the first version configuration information of the first application program and the first decrypted data includes:

当接收到上述第一应用程序的版本更新请求时,获取上述版本更新请求中携带的第二更新配置信息,并基于上述第二更新配置信息、上述第一版本配置信息以及上述第一解密数据生成第二应用程序。When receiving the version update request of the above-mentioned first application program, obtain the second update configuration information carried in the above-mentioned version update request, and generate Second application.

在本发明实施例中,通过基于接收到的第一应用程序的版本更新请求可使生成第二应用程序的过程中实现了第二应用程序的版本切换,使得第二应用程序的版本号更具多样性,能够满足不同应用程序在版本切换过程中的不同需求,适用范围更广。In the embodiment of the present invention, the version switching of the second application program can be realized in the process of generating the second application program based on the received version update request of the first application program, so that the version number of the second application program is more accurate. Diversity, which can meet the different needs of different applications during the version switching process, and has a wider scope of application.

结合第一方面,在一种可能的实施方式中,上述基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序包括:With reference to the first aspect, in a possible implementation manner, the generating the third application program based on the above-mentioned second encrypted data, the above-mentioned first update information, and the above-mentioned second version configuration information includes:

获取上述第二版本配置信息中携带的上述第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号;Obtain the current version number of the second application program carried in the configuration information of the second version, and determine whether the current version number is the target version number;

若上述当前版本号不是上述目标版本号,则基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息生成第三应用程序;If the above-mentioned current version number is not the above-mentioned target version number, then generate a third application program based on the above-mentioned second encrypted data, the above-mentioned first update information, and the above-mentioned second version configuration information;

其中,上述第三应用程序的版本号高于上述第二应用程序的当前版本号。Wherein, the version number of the third application program is higher than the current version number of the second application program.

在本发明实施例中,通过对第二应用程序的当前版本号与目标版本号的比较,可进一步确定在生成第三应用程序的过程中是否需要进行版本切换步骤,使得第三应用程序更符合应用程序厂商和用户的实际需求。同时通过对目标版本号的版本号进行限制,也避免了版本切换过程中可能出现的版本混乱问题,使得版本切换过程更加准确有效。In the embodiment of the present invention, by comparing the current version number of the second application program with the target version number, it can be further determined whether a version switching step is required in the process of generating the third application program, so that the third application program is more in line with The actual needs of application vendors and users. At the same time, by limiting the version number of the target version number, the version confusion problem that may occur during the version switching process is also avoided, making the version switching process more accurate and effective.

结合第一方面,在一种可能的实施方式中,上述第一更新信息中包括更新配置信息;With reference to the first aspect, in a possible implementation manner, the above-mentioned first update information includes update configuration information;

上述基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息生成第三应用程序包括:The aforementioned generating of the third application program based on the aforementioned second encrypted data, the aforementioned first update information, and the aforementioned second version configuration information includes:

基于上述第二应用程序的当前版本号,从上述第一更新信息中获取上述目标版本号对应的更新配置信息,上述目标版本号为高于上述当前版本号的任一版本号;Obtain update configuration information corresponding to the target version number from the first update information based on the current version number of the second application program, where the target version number is any version number higher than the current version number;

基于上述更新配置信息、上述第二加密数据以及上述第二配置信息生成第三应用程序,其中,上述第三应用程序的版本号为上述目标版本号。A third application program is generated based on the update configuration information, the second encrypted data, and the second configuration information, wherein the version number of the third application program is the target version number.

在本发明实施例中,通过与目标版本号对应的更新配置信息时在生成第三应用程序的过程中完成版本切换,可时生成的第三应用程序的版本号与目标版本号一致,增强了应用程序版本切换的稳定性和准确性,适用性更高。In the embodiment of the present invention, by updating the configuration information corresponding to the target version number, the version switching is completed during the process of generating the third application program, and the version number of the generated third application program may be consistent with the target version number, which enhances the The stability and accuracy of application version switching, and higher applicability.

结合第一方面,在一种可能的实施方式中,上述第一更新信息为空;With reference to the first aspect, in a possible implementation manner, the above-mentioned first update information is empty;

上述方法还包括:The above method also includes:

若上述当前版本号是上述目标版本号,则基于上述第二加密数据和上述第二版本配置信息生成第三应用程序,其中,上述第三应用程序的版本号与上述第二应用程序的当前版本号一致。If the above-mentioned current version number is the above-mentioned target version number, a third application program is generated based on the above-mentioned second encrypted data and the above-mentioned second version configuration information, wherein the version number of the above-mentioned third application program is the same as the current version number of the above-mentioned second application program No. match.

在本发明实施例中,在第二应用程序的版本号与目标版本号一致的情况下,空的第一更新信息可使生成第三应用时不进行版本切换,避免了由更新信息中多余的更新配置信息导致的应用程序版本切换失败和不必要的性能消耗,稳定性更高。In the embodiment of the present invention, when the version number of the second application program is consistent with the target version number, the empty first update information can prevent version switching when generating the third application program, avoiding redundant updates in the update information. The application version switching failure and unnecessary performance consumption caused by updating configuration information are more stable.

结合第一方面,在一种可能的实施方式中,,上述基于上述第一加密软件对应的第一解密软件对上述第一加密数据进行解密以得到第一解密数据之后,上述方法还包括:With reference to the first aspect, in a possible implementation manner, after the above-mentioned first decryption software corresponding to the above-mentioned first encryption software decrypts the above-mentioned first encrypted data to obtain the first decrypted data, the above-mentioned method further includes:

将上述第一解密数据存储至数据库中以得到备用数据;storing the above-mentioned first decrypted data in a database to obtain spare data;

当接收到获取上述第三应用程序中的第三数据的请求时,从上述数据库中的备用数据中获取上述第一解密数据,并将上述第一解密数据确定为上述第三数据。When the request for obtaining the third data in the third application program is received, the first decrypted data is obtained from the spare data in the database, and the first decrypted data is determined as the third data.

在本发明实施例中,通过将第一解密数据存储至数据库中得到备用数据,可在需要获取相关数据时直接从备用数据中获取,避免了不必要的操作步骤所带来的时间损耗和性能损耗,同时备用数据也可在一定程度上在应用程序中的数据出现问题时提供备份数据,灵活性更好。In the embodiment of the present invention, by storing the first decrypted data in the database to obtain the spare data, relevant data can be obtained directly from the spare data when it is necessary to obtain relevant data, avoiding time loss and performance caused by unnecessary operation steps At the same time, the backup data can also provide backup data to a certain extent when there is a problem with the data in the application, and the flexibility is better.

第二方面,本发明实施例提供了一种应用程序版本切换装置,该装置包括:In a second aspect, an embodiment of the present invention provides an application program version switching device, the device comprising:

获取单元,用于获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据;An acquisition unit, configured to acquire first data in the first application program, where the first data includes first encrypted data encrypted based on the first encryption software;

解密单元,用于基于上述第一加密软件对应的第一解密软件对上述获取单元获取的上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序;A decryption unit, configured to decrypt the first encrypted data acquired by the acquisition unit based on first decryption software corresponding to the first encryption software to obtain first decrypted data, and based on the configuration information of the first version of the first application program generating a second application program with the above-mentioned first decrypted data;

加密单元,用于基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据;An encryption unit, configured to encrypt the second data in the second application program based on the second encryption software to obtain the second encrypted data;

生成单元,用于获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述加密单元得到的上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。A generating unit, configured to acquire first update information and second version configuration information of the second application program, and generate a second version based on the second encrypted data obtained by the encryption unit, the first update information, and the second version configuration information. Three applications.

结合第二方面,在一种可能的实施方式中,上述生成单元,用于当接收到上述第一应用程序的版本更新请求时,获取上述版本更新请求中携带的第二更新配置信息,并基于上述第二更新配置信息、上述第一版本配置信息以及上述第一解密数据生成第二应用程序。With reference to the second aspect, in a possible implementation manner, the generating unit is configured to, when receiving the version update request of the first application program, obtain the second update configuration information carried in the version update request, and based on The second updated configuration information, the first version configuration information, and the first decrypted data generate a second application program.

结合第二方面,在一种可能的实施方式中,上述版本切换装置还包括:With reference to the second aspect, in a possible implementation manner, the above version switching device further includes:

判断单元,用于获取上述第二版本配置信息中携带的上述第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号;A judging unit, configured to acquire the current version number of the second application program carried in the configuration information of the second version, and judge whether the current version number is the target version number;

上述生成单元,用于在上述当前版本号不是上述目标版本号时,基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息生成第三应用程序;The generating unit is configured to generate a third application program based on the second encrypted data, the first update information, and the second version configuration information when the current version number is not the target version number;

其中,上述第三应用程序的版本号高于上述第二应用程序的当前版本号。Wherein, the version number of the third application program is higher than the current version number of the second application program.

结合第二方面,在一种可能的实施方式中,上述第一更新信息中包括更新配置信息;With reference to the second aspect, in a possible implementation manner, the above-mentioned first update information includes update configuration information;

上述获取单元,用于基于上述第二应用程序的当前版本号,从上述第一更新信息中获取上述目标版本号对应的更新配置信息,上述目标版本号为高于上述当前版本号的任一版本号;The acquiring unit is configured to acquire update configuration information corresponding to the target version number from the first update information based on the current version number of the second application program, where the target version number is any version higher than the current version number No;

上述生成单元,用于基于上述更新配置信息、上述第二加密数据以及上述第二配置信息生成第三应用程序,其中,上述第三应用程序的版本号为上述目标版本号。The generating unit is configured to generate a third application program based on the updated configuration information, the second encrypted data, and the second configuration information, wherein the version number of the third application program is the target version number.

结合第二方面,在一种可能的实施方式中,上述第一更新信息为空;With reference to the second aspect, in a possible implementation manner, the above-mentioned first update information is empty;

上述生成单元,还用于在上述当前版本号是上述目标版本号时,基于上述第二加密数据和上述第二版本配置信息生成第三应用程序,其中,上述第三应用程序的版本号与上述第二应用程序的当前版本号一致。The generating unit is further configured to generate a third application program based on the second encrypted data and the second version configuration information when the current version number is the target version number, wherein the version number of the third application program is the same as the above-mentioned The current version number of the second application program is the same.

结合第二方面,在一种可能的实施方式中,上述版本切换装置还包括:With reference to the second aspect, in a possible implementation manner, the above version switching device further includes:

存储单元,用于将上述第一解密数据存储至数据库中以得到备用数据;a storage unit, configured to store the above-mentioned first decrypted data in a database to obtain spare data;

上述获取单元,还用于当接收到获取上述第三应用程序中的第三数据的请求时,从上述存储单元存储的备用数据中获取上述第一解密数据,并将上述第一解密数据确定为上述第三数据。The acquiring unit is further configured to acquire the first decrypted data from the spare data stored in the storage unit when receiving the request for acquiring the third data in the third application program, and determine the first decrypted data as The above third data.

在本发明实施例中,通过第一加密软件对应的第一解密软件对第一加密数据进行解密,保证了解密得到的第一解密数据的完整性,避免了由于随意采用解密软件对第一加密数据进行加密导致的第一解密数据的数据混乱。同时基于更新信息生成第三应用程序时,即完成了应用程序的版本切换,也完成了数据的平稳过渡,稳定性好,适用性高。In the embodiment of the present invention, the first encrypted data is decrypted by the first decryption software corresponding to the first encryption software, which ensures the integrity of the first decrypted data obtained by decryption, and avoids the possibility of decrypting the first encrypted data due to random use of the decryption software. Encrypting the data results in data scrambling of the first decrypted data. At the same time, when the third application program is generated based on the update information, the version switching of the application program is completed, and the smooth transition of data is also completed, with good stability and high applicability.

第三方面,本发明实施例提供了一种终端设备,该终端设备包括处理器和存储器,该处理器和存储器相互连接。该存储器用于存储支持该终端设备执行上述第一方面和/或第一方面任一种可能的实现方式提供的方法的计算机程序,该计算机程序包括程序指令,该处理器被配置用于调用上述程序指令,执行上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。In a third aspect, an embodiment of the present invention provides a terminal device, where the terminal device includes a processor and a memory, and the processor and the memory are connected to each other. The memory is used to store a computer program that supports the terminal device to execute the method provided by the above-mentioned first aspect and/or any possible implementation of the first aspect, where the computer program includes program instructions, and the processor is configured to call the above-mentioned The program instructions execute the method provided by the above first aspect and/or any possible implementation manner of the first aspect.

第四方面,本发明实施例提供了一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序被处理器执行以实现上述第一方面和/或第一方面任一种可能的实施方式所提供的方法。In a fourth aspect, an embodiment of the present invention provides a computer-readable storage medium, the computer-readable storage medium stores a computer program, and the computer program is executed by a processor to implement any one of the above-mentioned first aspect and/or the first aspect. A method provided by a possible implementation.

在本发明实施例中,通过第一加密软件对应的第一解密软件对第一加密数据进行解密,保证了解密得到的第一解密数据的完整性,避免了由于随意采用解密软件对第一加密数据进行加密导致的第一解密数据的数据混乱。同时基于更新信息生成第三应用程序时,既完成了应用程序的版本切换,也完成了数据的平稳过渡,稳定性好,适用性高。在本发明实施例中,备份数据可避免不必要的操作步骤所带来的时间损耗和性能损耗,同时也可在一定程度上在应用程序中的数据出现问题时提供备份数据,灵活性更好。In the embodiment of the present invention, the first encrypted data is decrypted by the first decryption software corresponding to the first encryption software, which ensures the integrity of the first decrypted data obtained by decryption, and avoids the possibility of decrypting the first encrypted data due to random use of the decryption software. Encrypting the data results in data scrambling of the first decrypted data. At the same time, when the third application program is generated based on the update information, not only the version switching of the application program is completed, but also the smooth transition of data is completed, with good stability and high applicability. In the embodiment of the present invention, the backup data can avoid time loss and performance loss caused by unnecessary operation steps, and at the same time, it can also provide backup data to a certain extent when there is a problem with the data in the application program, and the flexibility is better .

附图说明Description of drawings

为了更清楚地说明本发明实施例中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。In order to more clearly illustrate the technical solutions in the embodiments of the present invention, the following will briefly introduce the accompanying drawings that need to be used in the embodiments. Obviously, the accompanying drawings in the following description are only some embodiments of the present invention. For Those of ordinary skill in the art can also obtain other drawings based on these drawings without making creative efforts.

图1是本发明实施例提供的应用程序版本切换方法的流程示意图;FIG. 1 is a schematic flowchart of an application program version switching method provided by an embodiment of the present invention;

图2是本发明实施例提供的生成第三应用程序的流程示意图;FIG. 2 is a schematic flow diagram of generating a third application program provided by an embodiment of the present invention;

图3是本发明实施例提供的应用程序版本切换装置的结构示意图;FIG. 3 is a schematic structural diagram of an application program version switching device provided by an embodiment of the present invention;

图4是本发明实施例提供的终端设备的结构示意图。Fig. 4 is a schematic structural diagram of a terminal device provided by an embodiment of the present invention.

具体实施方式Detailed ways

下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。The following will clearly and completely describe the technical solutions in the embodiments of the present invention with reference to the accompanying drawings in the embodiments of the present invention. Obviously, the described embodiments are only some, not all, embodiments of the present invention. Based on the embodiments of the present invention, all other embodiments obtained by persons of ordinary skill in the art without making creative efforts belong to the protection scope of the present invention.

本发明实施例提供的应用程序版本切换方法(为方便描述,可简称本发明实施例提供的方法)可适用于各种终端设备中的应用程序,在此不做限制。本发明实施例提供的方法可在将应用程序进行版本切换时,将当前版本的应用程序中的数据平稳过渡到另一版本的应用程序当中,避免了在版本切换过程中产生的数据错误和版本切换完成后数据不兼容、不可用的问题,灵活性高,适用范围广。为方便描述,下面可以以某一终端设备内的某一应用程序为例,对本发明实施例提供的方法进行说明。The application program version switching method provided by the embodiment of the present invention (for convenience of description, may be referred to as the method provided by the embodiment of the present invention for short) is applicable to applications in various terminal devices, and is not limited here. The method provided by the embodiment of the present invention can smoothly transition the data in the current version of the application program to another version of the application program when the application program is switched, avoiding data errors and version errors during the version switching process. Data incompatibility and unavailability after switching is complete, with high flexibility and wide application range. For the convenience of description, the method provided by the embodiment of the present invention may be described below by taking an application program in a certain terminal device as an example.

下面将结合图1至图4分别对本发明实施例提供的应用程序版本切换方法及相关装置进行说明。The application program version switching method and related devices provided in the embodiments of the present invention will be described respectively below with reference to FIGS. 1 to 4 .

参见图1,图1是本发明实施例提供的应用程序版本切换方法的流程示意图。本发明实施例提供的方法可包括如下步骤S11-S14。Referring to FIG. 1 , FIG. 1 is a schematic flowchart of an application program version switching method provided by an embodiment of the present invention. The method provided by the embodiment of the present invention may include the following steps S11-S14.

S11、获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据。S11. Acquire first data in the first application program, where the first data includes first encrypted data encrypted based on the first encryption software.

在一些可行的实施方式中,在获取上述第一应用程序中的第一数据时,可从上述第一应用程序在其所在的终端设备对应的本地存储区域中获取上述第一应用程序的本地数据。其中上述第一应用程序的本地数据可以由用户主动提供,也可以基于第三方数据提取工具直接获取,具体获取方式在此不做限制。此外,在获取上述第一应用程序的本地数据的同时,还可以获取上述第一应用程序的网络数据。可选地,可通过包括但不限于各种爬虫软件、Fiddler、BurpSuite、HttpWatch以及Wireshark等抓包工具获取上述第一应用程序的网络数据,具体获取所述第一应用程序的网络数据的实现方式在此不做限制。可选的,上述第一应用程序的本地数据可以为用户存储至本地存储区域中图片、视频、历史记录、个人信息以及应用程序的设置数据等,在此不做限制。可选的,上述第一应用程序的网络数据可以为用户在云端存储的由搜索、下载、使用、管理以及备份等行为产生的网络数据,在此不做限制。通过多种方式获取第一应用程序的本地数据和网络数据,使得获取的本地数据和网络数据更加全面,在一定程度上也提高了获取本地数据和网络数据的灵活性。In some feasible implementation manners, when obtaining the first data in the above-mentioned first application program, the local data of the above-mentioned first application program may be obtained from the local storage area corresponding to the terminal device where the above-mentioned first application program is located . The local data of the above-mentioned first application program may be actively provided by the user, or may be directly acquired based on a third-party data extraction tool, and the specific acquisition method is not limited here. In addition, while obtaining the local data of the above-mentioned first application program, the network data of the above-mentioned first application program may also be obtained. Optionally, the network data of the above-mentioned first application program can be obtained through packet capture tools including but not limited to various crawler software, Fiddler, BurpSuite, HttpWatch and Wireshark, and the implementation method of specifically obtaining the network data of the first application program There is no limitation here. Optionally, the above-mentioned local data of the first application program may be stored in the local storage area by the user, such as pictures, videos, historical records, personal information, and setting data of the application program, etc., and there is no limitation here. Optionally, the network data of the above-mentioned first application program may be network data stored by the user in the cloud generated by behaviors such as searching, downloading, using, managing, and backing up, and there is no limitation here. The local data and the network data of the first application program are obtained in multiple ways, so that the obtained local data and the network data are more comprehensive, and the flexibility of obtaining the local data and the network data is also improved to a certain extent.

在一些可行的实施方式中,由于应用程序的设计要求和现在网络数据的安全需求,大多数应用程序厂商在发布某一版本的应用程序时,都会采用本厂商或者第三方的加密软件对发布的应用程序中的部分数据进行加密。故在获取上述第一应用程序的本地数据和网络数据之后,需要从获取到的本地数据和网络数据中筛选出的被加密数据,即被第一加密软件加密的第一加密数据。其中,在筛选过程中所采用的实现方式在此不做限制。In some feasible implementations, due to the design requirements of the application program and the security requirements of the current network data, when most application program vendors release a certain version of the application program, they will use their own or third-party encryption software to encrypt the released version. Some data in the application is encrypted. Therefore, after obtaining the local data and network data of the above-mentioned first application program, it is necessary to filter out the encrypted data from the obtained local data and network data, that is, the first encrypted data encrypted by the first encryption software. Wherein, the implementation manner adopted in the screening process is not limited here.

需要特别说明的是,由于应用程序进行版本切换过程中对数据的安全性和准确性有着较高的要求,故在获取到上述第一应用程序的本地数据和网络数据之后,可对上述第一应用程序的本地数据和网络数据进行数据筛选。通过数据筛选,将上述本地数据和上述网络数据中的用户选择删除的数据和用户在网上由搜索、浏览以及下载等行为产生的垃圾数据删除,避免了因为本地数据和/或网络数据的数据量过大带来的不必要的时间损耗和性能损耗。此外,在对上述第一应用程序的本地数据和网络数据进行数据筛选后,对上述两种数据进行数据安全性检测,以避免在后续的版本切换过程中由于不安全数据所造成的用户数据安全问题。It should be noted that since the application program has high requirements on data security and accuracy during the version switching process, after obtaining the local data and network data of the above-mentioned first application program, the above-mentioned first application program can be The application's local data and network data are used for data filtering. Through data screening, delete the data that the user chooses to delete in the above local data and the above network data, and delete the junk data generated by the user's online search, browsing, and downloading behaviors, avoiding the data volume caused by local data and/or network data Unnecessary time loss and performance loss caused by too large. In addition, after data screening is performed on the local data and network data of the above-mentioned first application program, data security detection is performed on the above-mentioned two kinds of data, so as to avoid user data security caused by insecure data in the subsequent version switching process. question.

S12、基于上述第一加密软件对应的第一解密软件对上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序。S12. Decrypt the above-mentioned first encrypted data based on the first decryption software corresponding to the above-mentioned first encryption software to obtain first decrypted data, and generate the first decrypted data based on the first version configuration information of the above-mentioned first application program and the above-mentioned first decrypted data. Two applications.

在一些可行的实施方式中,当上述第一应用程序在进行版本切换时,需要摒弃原有的加密方式或需要采用新的加密软件对数据进行加密时,需要获取上述第一加密数据所采用的第一加密软件对应的第一解密软件。在获取到上述第一加密软件对应的第一解密软件之后,才能通过上述第一解密软件对上述第一加密数据进行解密,得到第一解密数据。In some feasible implementation manners, when the above-mentioned first application program needs to abandon the original encryption method or need to use new encryption software to encrypt data when the above-mentioned first application program is switching versions, it is necessary to obtain the above-mentioned first encrypted data. The first decryption software corresponding to the first encryption software. After obtaining the first decryption software corresponding to the first encryption software, the first encrypted data can be decrypted by the first decryption software to obtain the first decrypted data.

例如,当上述第一应用程序为某一社交APP,将该社交APP中的数据采用A加密软件加密后,得到a加密数据。当需要对a加密数据进行解密时,需要采用A加密软件对应的B解密软件对a加密数据进行解密,得到b解密数据。此时,如果采用C解密软件对a加密数据进行解密,由于C解密软件的解密方式和B解密软件的解密方式不同或不完全相同,则会出现采用C解密软件无法对a加密数据进行解密,或者采用C解密软件只能对a加密数据进行部分解密,从而无法完全获取a加密数据解密后的全部数据。For example, when the above-mentioned first application program is a certain social APP, the data in the social APP is encrypted by A encryption software to obtain a encrypted data. When it is necessary to decrypt the encrypted data of a, it is necessary to use the decryption software of B corresponding to the encryption software of A to decrypt the encrypted data of a to obtain the decrypted data of b. At this time, if C decryption software is used to decrypt the encrypted data of a, because the decryption method of C decryption software is different or not completely the same as that of B decryption software, it will appear that the decryption software of C cannot decrypt the encrypted data of a, Or the C decryption software can only partially decrypt the encrypted data of a, so that all the decrypted data of the encrypted data of a cannot be completely obtained.

在一些可行的实施方式中,在获取到上述第一解密数据之后,可获取上述第一应用程序的第一版本配置信息,并根据上述第一版本配置信息生成一个配置信息与上述第一应用程序一致的第一初始应用程序。具体地,该第一初始应用程序除不包括数据外,其余各项配置与上述第一应用程序无任何区别。在得到上述第一初始应用程序之后,可按照数据存储规则将上述第一解密数据对应存储至上述第一应用程序的不同存储位置中,也可按照数据存储规则将上述第一解密数据和从上述第一应用程序中获取的未加密数据一同存储至上述第一初始应用程序中,具体的存储方式由实际应用程序确定,在此不做限制。待上述第一解密数据和/或未加密数据存储完毕之后,即将上述第一初始应用程序确定为第二应用程序。可选的,可根据上述第一版本配置信息和上述第一解密数据在不生成上述第一初始应用程序的情况下,并行生成上述第二应用程序,具体实现方式在此不做限制。In some feasible implementation manners, after obtaining the above-mentioned first decrypted data, the first version configuration information of the above-mentioned first application program can be obtained, and according to the above-mentioned first version configuration information, a piece of configuration information and the above-mentioned first application program Consistent first initial application. Specifically, except that the first initial application program does not include data, other configurations are the same as those of the above-mentioned first application program. After the above-mentioned first initial application program is obtained, the above-mentioned first decrypted data can be correspondingly stored in different storage locations of the above-mentioned first application program according to the data storage rules, and the above-mentioned first decrypted data can also be stored according to the data storage rules. The unencrypted data obtained in the first application program is stored together in the above-mentioned first initial application program, and the specific storage method is determined by the actual application program, which is not limited here. After the storage of the first decrypted data and/or unencrypted data is completed, the first initial application program is determined as the second application program. Optionally, the second application program may be generated in parallel according to the first version configuration information and the first decrypted data without generating the first initial application program, and the specific implementation manner is not limited here.

在一些可行的实时方式中,当得到上述第一解密数据之后,若此时接收到上述第一应用程序的版本更新请求时,可先获取上述版本更新请求中携带的第二更新配置信息。待得到上述第一解密数据和/或未加密数据存储完毕后的第一初始应用程序后,根据上述第二更新配置信息将上述第一初始应用程序升级为上述第二应用程序。可选的,在获取上述版本更新请求中携带的第二更新配置信息后,可根据上述第二更新配置信息,在根据上述第一版本配置信息和上述第一解密数据在不生成上述第一初始应用程序且并行生成上述第二应用程序时,直接得到版本升级后的第二应用程序。此时上述第二应用程序的版本号高于上述第一应用程序,即上述第一应用程序的版本号为低版本号,上述第二应用程序的版本号为高版本号。可选的,由于上述的第二应用程序只是应用程序版本切换过程中的一个起过渡作用的中间应用程序,故在实际的应用程序版本切换过程中一般不向用户发布上述第二应用程序。在特殊情况下可根据用户的需求,由用户主动发出获取上述第二应用程序的请求并获取上述第二应用程序。In some feasible real-time manners, after the first decrypted data is obtained, if a version update request of the first application program is received at this time, the second update configuration information carried in the version update request may be obtained first. After obtaining the first initial application program after the storage of the first decrypted data and/or unencrypted data is completed, upgrade the first initial application program to the second application program according to the second update configuration information. Optionally, after obtaining the second update configuration information carried in the above version update request, the above first initial version may be generated according to the above second update configuration information, according to the above first version configuration information and the above first decrypted data. When the above-mentioned second application program is generated in parallel, the version-upgraded second application program is directly obtained. At this time, the version number of the second application program is higher than that of the first application program, that is, the version number of the first application program is a lower version number, and the version number of the second application program is a higher version number. Optionally, since the above-mentioned second application program is only an intermediate application program in the application version switching process, the above-mentioned second application program is generally not released to the user during the actual application program version switching process. In special cases, according to the needs of the user, the user can actively issue a request for obtaining the above-mentioned second application program and obtain the above-mentioned second application program.

S13、基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据。S13. Encrypt the second data in the second application program based on the second encryption software to obtain second encrypted data.

在一些可行的实施方式中,由于得到的第二应用程序中的数据处于未加密状态,故在得到上述第二应用程序后,采用第二加密软件对上述第二应用程序中的第二数据进行加密。其中,上述第二加密软件为在版本切换过程中替代原有加密软件的目标加密软件,且采用第二加密软件对上述第二应用程序中的第二数据进行加密的加密方式由上述第二加密软件确定,在此不做限制。通过采用第二加密软件对上述的第二应用程序中的第二数据进行加密并得到第二加密数据,在保证了数据完整性的同时,实现了在版本切换过程中数据加密方式的切换。In some feasible implementation manners, since the obtained data in the second application program is in an unencrypted state, after obtaining the above-mentioned second application program, the second encryption software is used to encrypt the second data in the above-mentioned second application program. encryption. Wherein, the above-mentioned second encryption software is the target encryption software that replaces the original encryption software during the version switching process, and the encryption method that uses the second encryption software to encrypt the second data in the above-mentioned second application program is determined by the above-mentioned second encryption software. The software is determined, and there is no limitation here. By using the second encryption software to encrypt the second data in the above-mentioned second application program to obtain the second encrypted data, while ensuring the integrity of the data, the switching of the data encryption mode during the version switching process is realized.

例如,上述第二应用程序为某购物APP在版本切换过程中产生的第二购物APP,当该购物APP的开发人员确定该购物APP在完成版本切换后,该购物APP中的数据已采用D加密软件进行加密。则在得到第二购物APP之后,将第二购物APP中的数据采用D加密软件进行加密,以得到d加密数据。此时该d加密数据即为该购物APP完成版本切换后,得到的最终版本的购物APP中的已加密数据。For example, the above-mentioned second application program is the second shopping app generated during the version switching process of a shopping app. When the developer of the shopping app confirms that the shopping app has completed the version switching, the data in the shopping app has been encrypted with D software for encryption. After obtaining the second shopping APP, encrypt the data in the second shopping APP with D encryption software to obtain d encrypted data. At this time, the encrypted data d is the encrypted data in the final version of the shopping APP obtained after the shopping APP completes the version switching.

S14、获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。S14. Acquire the first update information and the second version configuration information of the second application, and generate a third application based on the second encrypted data, the first update information, and the second version configuration information.

在一些可行的实时方式中,由于仅仅采用第二加密软件对上述第二应用程序中第二数据进行了加密,只得到了第二加密数据,并未得到最终版本切换成功的应用程序。故在得到上述第二加密数据之后,需要获取第一更新信息和上述第二应用程序的第二版本配置信息,并基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。请一并参见图2,图2是本发明实施例提供的生成第三应用程序的流程示意图。本发明实施例提供的生成第三应用程序的方法可通过如下步骤S21-S23提供的实现方式进行说明。In some feasible real-time manners, since only the second data in the second application program is encrypted by the second encryption software, only the second encrypted data is obtained, and the application program whose final version is successfully switched is not obtained. Therefore, after obtaining the above-mentioned second encrypted data, it is necessary to obtain the first update information and the second version configuration information of the above-mentioned second application program, and based on the above-mentioned second encrypted data, the above-mentioned first update information, and the above-mentioned second version configuration information, Generate a third application. Please also refer to FIG. 2 . FIG. 2 is a schematic flowchart of generating a third application program provided by an embodiment of the present invention. The method for generating the third application program provided by the embodiment of the present invention can be described through the implementation manners provided in the following steps S21-S23.

S21、获取第二版本配置信息中携带的第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号。S21. Obtain the current version number of the second application program carried in the second version configuration information, and determine whether the current version number is the target version number.

在一些可行的实时方式中,由于应用程序厂商和/或用户对最终生成的第三应用程序的版本在不同情况下有着不同的需求,故在生成上述第三应用程序之前,可先获取第一更新信息和上述第二应用程序的第二版本配置信息,并获取上述第二版本配置信息中携带的第二应用程序的当前版本号。此时判断上述第二应用程序的当前版本号是否是目标版本号,若上述第二应用程序的当前版本号不是目标版本号,则在生成上述第三应用程序的过程中需要进行版本升级以使上述第三应用程序的版本号高于上述第二应用程序的当前版本号。若上述第二应用程序的当前版本号是目标版本号,则在生成上述第三应用程序的过程中不需要进行版本升级,即生成的第三应用程序的版本号与上述第二版本配置信息中携带的第二应用程序的当前版本号一致。需要特别说明的时,上述目标版本号可以是高于上述第二应用程序的当前版本号的任一版本号,不一定是最新版本号,上述目标版本号的选择由实际版本切换的具体需求确定,在此不做限制。In some feasible real-time manners, since the application program manufacturer and/or the user have different requirements for the final version of the third application program in different situations, before generating the above-mentioned third application program, the first Updating the information and the second version configuration information of the second application program, and acquiring the current version number of the second application program carried in the second version configuration information. At this time, it is judged whether the current version number of the above-mentioned second application program is the target version number. The version number of the above-mentioned third application program is higher than the current version number of the above-mentioned second application program. If the current version number of the above-mentioned second application program is the target version number, then no version upgrade is required in the process of generating the above-mentioned third application program, that is, the version number of the generated third application program is the same as that in the above-mentioned second version configuration information. The current version number of the carried second application program is the same. When special instructions are required, the above-mentioned target version number can be any version number higher than the current version number of the above-mentioned second application program, not necessarily the latest version number, and the selection of the above-mentioned target version number is determined by the specific requirements of actual version switching , without limitation here.

例如,假设上述第二应用程序的版本号为1.0.1,当上述目标版本号为1.0.5时,则在生成上述第三应用程序的过程中需要进行版本升级,且生成的第三应用程序的版本号为1.0.5。当上述目标版本号为1.0.1时,则在生成上述第三应用程序的过程中不需要进行版本升级,且生成的第三应用程序的版本号为1.0.1。可选的,上述版本号可以是版本号1.0.1至1.0.5(假设1.0.5为最高版本号)中的任一版本号,具体根据实际需求确定,在此不做限制。For example, assuming that the version number of the above-mentioned second application program is 1.0.1, when the above-mentioned target version number is 1.0.5, a version upgrade is required in the process of generating the above-mentioned third application program, and the generated third application program The version number is 1.0.5. When the above-mentioned target version number is 1.0.1, no version upgrade is required during the process of generating the above-mentioned third application program, and the version number of the generated third application program is 1.0.1. Optionally, the above version number may be any version number from version numbers 1.0.1 to 1.0.5 (assuming that 1.0.5 is the highest version number), which is determined according to actual requirements and is not limited here.

S22、在上述当前版本号不是上述目标版本号时,基于上述第二应用程序的当前版本号,从上述第一更新信息中获取上述目标版本号对应的更新配置信息。S22. When the current version number is not the target version number, based on the current version number of the second application, acquire update configuration information corresponding to the target version number from the first update information.

在一些可行的实施方式中,在上述第二应用程序的当前版本号不是上述目标版本号,即在生成上述第三应用程序的过程中需要进行版本升级以使上述第三应用程序的版本号高于上述第二应用程序的当前版本号的情况下,需要从上述第一更新信息中获取上述目标版本号对应的更新配置信息。In some feasible implementation manners, the current version number of the above-mentioned second application program is not the above-mentioned target version number, that is, a version upgrade needs to be performed during the process of generating the above-mentioned third application program to make the version number of the above-mentioned third application program In the case of the current version number of the second application program, the update configuration information corresponding to the target version number needs to be obtained from the first update information.

S23、基于上述更新配置信息、上述第二加密数据以及上述第二配置信息生成第三应用程序。S23. Generate a third application program based on the updated configuration information, the second encrypted data, and the second configuration information.

在一些可行的实施方式中,当需要在生成上述第三应用程序的过程中需要进行版本升级以使上述第三应用程序的版本号高于上述第二应用程序的当前版本号时,可先根据上述第二配置信息生成第二初始应用程序后将上述第二加密数据存储至上述第二初始应用程序,再根据上述更新配置信息将上述第二初始应用程序进行版本升级,得到第三应用程序。可选的,也可以先根据上述第二配置信息生成第二初始应用程序后,根据上述更新配置信息将上述第二初始应用程序进行版本升级,再将上述第二加密数据存储至版本升级后的第二初始应用程序后得到第三应用程序。可选的,还可以将上述根据上述第二配置信息生成应用程序、存储上述第二加密数据以及根据上述更新配置信息进行版本升级等步骤并行进行,直接得到第三应用程序。具体实现方式由应用程序版本切换的实际需求确定,在此不做限制。In some feasible implementation manners, when it is necessary to perform a version upgrade during the process of generating the above-mentioned third application program so that the version number of the above-mentioned third application program is higher than the current version number of the above-mentioned second application program, the After generating a second initial application program from the second configuration information, storing the second encrypted data in the second initial application program, and then upgrading the version of the second initial application program according to the updated configuration information to obtain a third application program. Optionally, after generating the second initial application program according to the above-mentioned second configuration information, the version of the above-mentioned second initial application program can be upgraded according to the above-mentioned updated configuration information, and then the above-mentioned second encrypted data can be stored in the version-upgraded A third application is obtained after the second initial application. Optionally, the steps of generating the application program according to the second configuration information, storing the second encrypted data, and upgrading the version according to the updated configuration information may also be performed in parallel to directly obtain the third application program. The specific implementation method is determined by the actual requirements of the switching of the application program version, and there is no limitation here.

在一些可行的实施方式中,当在生成上述第三应用程序的过程中不需要进行版本升级时,此时上述更新配置信息为空,即在生成上述第三应用程序的过程中不需要任何更新配置信息。此时,可先根据上述第二配置信息生成第二初始应用程序后,再将上述第二加密数据存储至上述第二初始应用程序,得到第三应用程序。可选的,也可以将上述根据上述第二配置信息生成应用程序和存储上述第二加密数据等步骤并行进行,直接得到第三应用程序。具体实现方式由应用程序版本切换的实际需求确定,在此不做限制,同时通过不同步骤的不同实现顺序和不同实现方式,使得在生成上述第三应用程序的过程中,可根据实际版本切换环境选择更加适合的生成方式,适应性好,灵活性高。In some feasible implementation manners, when there is no need to perform version upgrade during the process of generating the above-mentioned third application program, the above-mentioned update configuration information is empty at this time, that is, no update is required during the process of generating the above-mentioned third application program configuration information. At this time, the second initial application program may be generated according to the second configuration information, and then the second encrypted data may be stored in the second initial application program to obtain a third application program. Optionally, the above steps of generating the application program according to the above second configuration information and storing the above second encrypted data may also be performed in parallel to directly obtain the third application program. The specific implementation method is determined by the actual requirements of the application version switching, and there is no limitation here. At the same time, through different implementation sequences and different implementation methods of different steps, in the process of generating the third application above, the environment can be switched according to the actual version Choose a more suitable generation method, with good adaptability and high flexibility.

在一些可行的实施方式中,在基于上述第一加密软件对应的第一解密软件对上述第一加密数据进行解密得到第一解密数据后,可将上述第一解密数据和存储至数据空中,得到备用数据。当接收到获取上述第三应用程序中的第三数据的请求时,可直接从备用数据中获取上述第一解密数据并将上述第一节目数据确定为上述第三应用程序中的第三数据。需要特别说明的时,上述获取上述第三应用程序中的第三数据可以用于包括但不限于数据分析、安全监测以及基于上述第三数据生成第四应用程序等操作,在此不做限制。In some feasible implementation manners, after decrypting the above-mentioned first encrypted data to obtain the first decrypted data based on the first decryption software corresponding to the above-mentioned first encryption software, the sum of the above-mentioned first decrypted data can be stored in the data space to obtain spare data. When receiving the request for obtaining the third data in the third application program, the first decrypted data may be obtained directly from the backup data and the first program data may be determined as the third data in the third application program. When it needs special explanation, the acquisition of the third data in the third application program can be used for operations including but not limited to data analysis, safety monitoring, and generation of a fourth application program based on the third data, which is not limited here.

在本发明实施例中,通过第一加密软件对应的第一解密软件对第一加密数据进行解密,保证了解密得到的第一解密数据的完整性,避免了由于随意采用解密软件对第一加密数据进行加密导致的第一解密数据的数据混乱。既完成了应用程序的版本切换,也完成了数据的平稳过渡。同时通过对第二应用程序的当前版本号与目标版本号的比较,可进一步确定在生成第三应用程序的过程中是否需要进行版本升级步骤,使得第三应用程序更符合应用程序厂商和用户的实际需求,也避免了版本切换过程中可能出现的版本混乱问题,使得版本切换过程更加准确有效。此外,通过备用数据也可在一定程度上在应用程序中的数据出现问题时提供备份数据,避免了不必要的性能消耗,稳定性更高,灵活性更好,适用范围更广。In the embodiment of the present invention, the first encrypted data is decrypted by the first decryption software corresponding to the first encryption software, which ensures the integrity of the first decrypted data obtained by decryption, and avoids the possibility of decrypting the first encrypted data due to random use of the decryption software. Encrypting the data results in data scrambling of the first decrypted data. It not only completes the version switching of the application, but also completes the smooth transition of the data. At the same time, by comparing the current version number of the second application program with the target version number, it can be further determined whether a version upgrade step is required in the process of generating the third application program, so that the third application program is more in line with the requirements of the application program manufacturer and the user. It also avoids the version confusion that may occur during the version switching process, making the version switching process more accurate and effective. In addition, backup data can also be used to provide backup data to a certain extent when there is a problem with the data in the application, avoiding unnecessary performance consumption, higher stability, better flexibility, and a wider range of applications.

参见图3,图3是本发明实施例提供的应用程序版本切换装置的结构示意图。本发明实施例提供的应用程序版本切换装置包括:Referring to FIG. 3 , FIG. 3 is a schematic structural diagram of an application program version switching device provided by an embodiment of the present invention. The application program version switching device provided by the embodiment of the present invention includes:

获取单元31,用于获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据;An acquisition unit 31, configured to acquire first data in the first application program, where the first data includes first encrypted data encrypted based on the first encryption software;

解密单元32,用于基于上述第一加密软件对应的第一解密软件对上述获取单元31获取的上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序;The decryption unit 32 is configured to decrypt the above-mentioned first encrypted data obtained by the above-mentioned obtaining unit 31 based on the first decryption software corresponding to the above-mentioned first encryption software to obtain first decrypted data, and based on the first version of the above-mentioned first application program The configuration information and the above-mentioned first decrypted data generate a second application program;

加密单元33,用于基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据;An encryption unit 33, configured to encrypt the second data in the second application program based on the second encryption software to obtain the second encrypted data;

生成单元34,用于获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述加密单元33得到的上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。A generation unit 34, configured to obtain the first update information and the second version configuration information of the second application program, based on the second encrypted data obtained by the encryption unit 33, the first update information, and the second version configuration information, Generate a third application.

在一些可行的实施方式中,上述生成单元34,用于当接收到上述第一应用程序的版本更新请求时,获取上述版本更新请求中携带的第二更新配置信息,并基于上述第二更新配置信息、上述第一版本配置信息以及上述第一解密数据生成第二应用程序。In some feasible implementation manners, the generating unit 34 is configured to obtain the second update configuration information carried in the version update request when receiving the version update request of the first application program, and based on the second update configuration information information, the first version configuration information, and the first decrypted data to generate a second application program.

在一些可行的实施方式中,上述版本切换装置还包括:In some feasible implementation manners, the above version switching device further includes:

判断单元35,用于获取上述第二版本配置信息中携带的上述第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号;A judging unit 35, configured to acquire the current version number of the second application program carried in the configuration information of the second version, and judge whether the current version number is the target version number;

上述生成单元34,用于在上述当前版本号不是上述目标版本号时,基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息生成第三应用程序;The generating unit 34 is configured to generate a third application based on the second encrypted data, the first update information, and the second version configuration information when the current version number is not the target version number;

其中,上述第三应用程序的版本号高于上述第二应用程序的当前版本号。Wherein, the version number of the third application program is higher than the current version number of the second application program.

在一些可行的实施方式中,上述第一更新信息中包括更新配置信息;In some feasible implementation manners, the above-mentioned first update information includes updated configuration information;

上述获取单元31,用于基于上述第二应用程序的当前版本号,从上述第一更新信息中获取上述目标版本号对应的更新配置信息,上述目标版本号为高于上述当前版本号的任一版本号;The acquisition unit 31 is configured to acquire update configuration information corresponding to the target version number from the first update information based on the current version number of the second application program, where the target version number is any one higher than the current version number. version number;

上述生成单元34,用于基于上述更新配置信息、上述第二加密数据以及上述第二配置信息生成第三应用程序,其中,上述第三应用程序的版本号为上述目标版本号。The generating unit 34 is configured to generate a third application program based on the updated configuration information, the second encrypted data, and the second configuration information, wherein the version number of the third application program is the target version number.

在一些可行的实施方式中,上述第一更新信息为空;In some feasible implementation manners, the above-mentioned first update information is empty;

上述生成单元34,还用于在上述当前版本号是上述目标版本号时,基于上述第二加密数据和上述第二版本配置信息生成第三应用程序,其中,上述第三应用程序的版本号与上述第二应用程序的当前版本号一致。The generating unit 34 is further configured to generate a third application program based on the second encrypted data and the second version configuration information when the current version number is the target version number, wherein the version number of the third application program is the same as The current version numbers of the above-mentioned second application programs are consistent.

在一些可行的实施方式中,上述版本切换装置还包括:In some feasible implementation manners, the above version switching device further includes:

存储单元36,用于将上述第一解密数据存储至数据库中以得到备用数据;a storage unit 36, configured to store the above-mentioned first decrypted data in a database to obtain spare data;

上述获取单元31,还用于当接收到获取上述第三应用程序中的第三数据的请求时,从上述存储单元36存储的备用数据中获取上述第一解密数据,并将上述第一解密数据确定为上述第三数据。The acquiring unit 31 is further configured to acquire the first decrypted data from the spare data stored in the storage unit 36 when receiving the request for acquiring the third data in the third application program, and store the first decrypted data Determined as the above-mentioned third data.

具体实现中,上述应用程序版本切换装置可通过其内置的各个功能模块执行如上图1至图2中各个步骤所提供的实现方式。例如,上述获取单元31可用于获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述解密单元32,可用于基于上述第一加密软件对应的第一解密软件对上述获取单元31获取的上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述加密单元33可用于用于基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述生成单元34可用于获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述加密单元33得到的上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述判断单元35可用于用于获取上述第二版本配置信息中携带的上述第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。上述存储单元可用于将上述第一解密数据存储至数据库中以得到备用数据等实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。In a specific implementation, the above-mentioned application program version switching device can implement the implementation methods provided by the steps in Fig. 1 to Fig. 2 through its built-in functional modules. For example, the acquisition unit 31 can be used to acquire the first data in the first application program, the first data includes the first encrypted data encrypted based on the first encryption software and other implementation methods, for details, please refer to the steps provided by the above steps The implementation manner will not be repeated here. The decryption unit 32 may be configured to decrypt the first encrypted data acquired by the acquisition unit 31 based on the first decryption software corresponding to the first encryption software to obtain first decrypted data, and based on the first decryption software of the first application program For the version configuration information and the above-mentioned first decrypted data to generate the second application program, etc., for details, please refer to the implementation methods provided by the above steps, and details will not be repeated here. The above-mentioned encryption unit 33 can be used to encrypt the second data in the above-mentioned second application program based on the second encryption software, so as to obtain the second encrypted data and other implementation methods. For details, please refer to the implementation methods provided by the above-mentioned steps. This will not be repeated here. The generating unit 34 may be configured to obtain the first update information and the second version configuration information of the second application program, based on the second encrypted data obtained by the encryption unit 33, the first update information, and the second version configuration information, For implementation methods such as generating the third application program, please refer to the implementation methods provided in the above steps for details, which will not be repeated here. The above-mentioned judging unit 35 can be used to obtain the current version number of the above-mentioned second application program carried in the above-mentioned second version configuration information, and judge whether the above-mentioned current version number is the target version number and other implementation methods. For details, please refer to the above-mentioned steps. The implementation method will not be repeated here. The storage unit may be used to store the first decrypted data in a database to obtain backup data, etc. For details, please refer to the implementation methods provided in the above steps, which will not be repeated here.

在本发明实施例中,通过第一加密软件对应的第一解密软件对第一加密数据进行解密,保证了解密得到的第一解密数据的完整性,避免了由于随意采用解密软件对第一加密数据进行加密导致的第一解密数据的数据混乱。既完成了应用程序的版本切换,也完成了数据的平稳过渡。同时通过对第二应用程序的当前版本号与目标版本号的比较,可进一步确定在生成第三应用程序的过程中是否需要进行版本切换步骤,使得第三应用程序更符合应用程序厂商和用户的实际需求,也避免了版本切换过程中可能出现的版本混乱问题,使得版本切换过程更加准确有效。此外,通过备用数据也可在一定程度上在应用程序中的数据出现问题时提供备份数据,避免了不必要的性能消耗,稳定性更高,灵活性更好,适用范围更广。In the embodiment of the present invention, the first encrypted data is decrypted by the first decryption software corresponding to the first encryption software, which ensures the integrity of the first decrypted data obtained by decryption, and avoids the possibility of decrypting the first encrypted data due to random use of the decryption software. Encrypting the data results in data scrambling of the first decrypted data. It not only completes the version switching of the application, but also completes the smooth transition of the data. At the same time, by comparing the current version number of the second application program with the target version number, it can be further determined whether a version switching step is required in the process of generating the third application program, so that the third application program is more in line with the requirements of the application program manufacturer and the user. It also avoids the version confusion that may occur during the version switching process, making the version switching process more accurate and effective. In addition, backup data can also be used to provide backup data to a certain extent when there is a problem with the data in the application, avoiding unnecessary performance consumption, higher stability, better flexibility, and a wider range of applications.

参见图4,图4是本发明实施例提供的终端设备的结构示意图。如图4所示,本实施例中的终端设备可以包括:一个或多个处理器41和存储器42。上述处理器41和存储器42通过总线43连接。存储器42用于存储计算机程序,该计算机程序包括程序指令,处理器41用于执行存储器42存储的程序指令,执行如下操作:Referring to FIG. 4, FIG. 4 is a schematic structural diagram of a terminal device provided by an embodiment of the present invention. As shown in FIG. 4 , the terminal device in this embodiment may include: one or more processors 41 and memory 42 . The aforementioned processor 41 and memory 42 are connected via a bus 43 . The memory 42 is used to store a computer program, and the computer program includes program instructions, and the processor 41 is used to execute the program instructions stored in the memory 42 to perform the following operations:

获取第一应用程序中的第一数据,上述第一数据中包括基于第一加密软件加密得到的第一加密数据;Acquiring first data in the first application program, where the first data includes first encrypted data encrypted based on the first encryption software;

基于上述第一加密软件对应的第一解密软件对上述第一加密数据进行解密以得到第一解密数据,并基于上述第一应用程序的第一版本配置信息和上述第一解密数据生成第二应用程序;Decrypt the first encrypted data based on the first decryption software corresponding to the first encryption software to obtain first decrypted data, and generate a second application based on the first version configuration information of the first application program and the first decrypted data program;

基于第二加密软件对上述第二应用程序中的第二数据进行加密,以得到第二加密数据;Encrypting the second data in the second application program based on the second encryption software to obtain the second encrypted data;

获取第一更新信息和上述第二应用程序的第二版本配置信息,基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息,生成第三应用程序。Acquire the first update information and the second version configuration information of the second application program, and generate a third application program based on the second encrypted data, the first update information, and the second version configuration information.

在一些可行的实施方式中,上述处理器41用于:In some feasible implementation manners, the above-mentioned processor 41 is used for:

当接收到上述第一应用程序的版本更新请求时,获取上述版本更新请求中携带的第二更新配置信息,并基于上述第二更新配置信息、上述第一版本配置信息以及上述第一解密数据生成第二应用程序。When receiving the version update request of the above-mentioned first application program, obtain the second update configuration information carried in the above-mentioned version update request, and generate Second application.

在一些可行的实施方式中,上述处理器41用于:In some feasible implementation manners, the above-mentioned processor 41 is used for:

获取上述第二版本配置信息中携带的上述第二应用程序的当前版本号,判断上述当前版本号是否为目标版本号;Obtain the current version number of the second application program carried in the configuration information of the second version, and determine whether the current version number is the target version number;

若上述当前版本号不是上述目标版本号,则基于上述第二加密数据、上述第一更新信息以及上述第二版本配置信息生成第三应用程序;If the above-mentioned current version number is not the above-mentioned target version number, then generate a third application program based on the above-mentioned second encrypted data, the above-mentioned first update information, and the above-mentioned second version configuration information;

其中,上述第三应用程序的版本号高于上述第二应用程序的当前版本号。Wherein, the version number of the third application program is higher than the current version number of the second application program.

在一些可行的实施方式中,上述处理器41用于:In some feasible implementation manners, the above-mentioned processor 41 is used for:

基于上述第二应用程序的当前版本号,从上述第一更新信息中获取上述目标版本号对应的更新配置信息,上述目标版本号为高于上述当前版本号的任一版本号;Obtain update configuration information corresponding to the target version number from the first update information based on the current version number of the second application program, where the target version number is any version number higher than the current version number;

基于上述更新配置信息、上述第二加密数据以及上述第二配置信息生成第三应用程序,其中,上述第三应用程序的版本号为上述目标版本号。A third application program is generated based on the update configuration information, the second encrypted data, and the second configuration information, wherein the version number of the third application program is the target version number.

在一些可行的实施方式中,上述处理器41还用于:In some feasible implementation manners, the above-mentioned processor 41 is also used for:

若上述当前版本号是上述目标版本号,则基于上述第二加密数据和上述第二版本配置信息生成第三应用程序,其中,上述第三应用程序的版本号与上述第二应用程序的当前版本号一致。If the above-mentioned current version number is the above-mentioned target version number, a third application program is generated based on the above-mentioned second encrypted data and the above-mentioned second version configuration information, wherein the version number of the above-mentioned third application program is the same as the current version number of the above-mentioned second application program No. match.

在一些可行的实施方式中,上述处理器41还用于:In some feasible implementation manners, the above-mentioned processor 41 is also used for:

将上述第一解密数据存储至数据库中以得到备用数据;storing the above-mentioned first decrypted data in a database to obtain spare data;

当接收到获取上述第三应用程序中的第三数据的请求时,从上述数据库中的备用数据中获取上述第一解密数据,并将上述第一解密数据确定为上述第三数据。When the request for obtaining the third data in the third application program is received, the first decrypted data is obtained from the spare data in the database, and the first decrypted data is determined as the third data.

应当理解,在一些可行的实施方式中,上述处理器41可以是中央处理单元(central processing unit,CPU),该处理器还可以是其他通用处理器、数字信号处理器(digital signal processor,DSP)、专用集成电路(application specific integratedcircuit,ASIC)、现成可编程门阵列(field-programmable gate array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。It should be understood that, in some feasible implementation manners, the above-mentioned processor 41 may be a central processing unit (central processing unit, CPU), and the processor may also be other general-purpose processors, digital signal processors (digital signal processor, DSP) , application specific integrated circuit (ASIC), off-the-shelf programmable gate array (field-programmable gate array, FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor, or the processor may be any conventional processor, or the like.

该存储器42可以包括只读存储器和随机存取存储器,并向处理器41提供指令和数据。存储器42的一部分还可以包括非易失性随机存取存储器。例如,存储器42还可以存储设备类型的信息。The memory 42 may include read-only memory and random-access memory, and provides instructions and data to the processor 41 . A portion of memory 42 may also include non-volatile random access memory. For example, memory 42 may also store device type information.

具体实现中,上述终端设备可通过其内置的各个功能模块执行如上述图1至图2中各个步骤所提供的实现方式,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。In a specific implementation, the above-mentioned terminal device can implement the implementation methods provided by the steps in the above-mentioned Figures 1 to 2 through its built-in functional modules. For details, please refer to the implementation methods provided by the above-mentioned steps, which will not be repeated here.

在本发明实施例中,通过在对应用程序进行版本切换的过程中实现数据的平稳过渡,避免了由于随意采用解密软件进行加密和/或随意采用加密软件进行加密导致的数据不完整和数据混乱的情况。同时,多种应用程序的版本切换方式也避免了版本切换过程中可能出现的版本混乱问题,使得版本切换过程更加准确有效。此外,通过备用数据也可在一定程度上在应用程序中的数据出现问题时提供备份数据,避免了不必要的性能消耗,稳定性更高,灵活性更好,适用范围更广。In the embodiment of the present invention, by realizing a smooth transition of data during the version switching process of the application program, data incompleteness and data confusion caused by random use of decryption software for encryption and/or random use of encryption software for encryption are avoided Case. At the same time, the version switching method of various applications also avoids the version confusion problem that may occur during the version switching process, making the version switching process more accurate and effective. In addition, backup data can also be used to provide backup data to a certain extent when there is a problem with the data in the application, avoiding unnecessary performance consumption, higher stability, better flexibility, and a wider range of applications.

本发明实施例还提供一种计算机可读存储介质,该计算机可读存储介质存储有计算机程序,该计算机程序包括程序指令,该程序指令被处理器执行时实现图1至图2中各个步骤所提供的应用程序版本切换方法,具体可参见上述各个步骤所提供的实现方式,在此不再赘述。An embodiment of the present invention also provides a computer-readable storage medium, the computer-readable storage medium stores a computer program, the computer program includes program instructions, and when the program instructions are executed by a processor, the various steps in FIG. 1 to FIG. 2 are implemented. For the provided application program version switching method, for details, refer to the implementation methods provided in the above steps, which will not be repeated here.

上述计算机可读存储介质可以是前述任一实施例提供的任务处理装置或者上述终端设备的内部存储单元,例如电子设备的硬盘或内存。该计算机可读存储介质也可以是该电子设备的外部存储设备,例如该电子设备上配备的插接式硬盘,智能存储卡(smartmedia card,SMC),安全数字(secure digital,SD)卡,闪存卡(flash card)等。上述计算机可读存储介质还可以包括磁碟、光盘、只读存储记忆体(read-only memory,ROM)或随机存储记忆体(random access memory,RAM)等。进一步地,该计算机可读存储介质还可以既包括该电子设备的内部存储单元也包括外部存储设备。该计算机可读存储介质用于存储该计算机程序以及该电子设备所需的其他程序和数据。该计算机可读存储介质还可以用于暂时地存储已经输出或者将要输出的数据。The foregoing computer-readable storage medium may be the task processing apparatus provided in any of the foregoing embodiments or an internal storage unit of the foregoing terminal device, such as a hard disk or a memory of an electronic device. The computer-readable storage medium may also be an external storage device of the electronic device, such as a plug-in hard disk equipped on the electronic device, a smart memory card (smartmedia card, SMC), a secure digital (secure digital, SD) card, a flash memory Card (flash card), etc. The above-mentioned computer-readable storage medium may also include a magnetic disk, an optical disk, a read-only memory (read-only memory, ROM) or a random access memory (random access memory, RAM), and the like. Further, the computer-readable storage medium may also include both an internal storage unit of the electronic device and an external storage device. The computer-readable storage medium is used to store the computer program and other programs and data required by the electronic device. The computer-readable storage medium can also be used to temporarily store data that has been output or will be output.

本发明的权利要求书和说明书及附图中的术语“第一”、“第二”等是用于区别不同对象,而不是用于描述特定顺序。此外,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列步骤或单元的过程、方法、系统、产品或设备没有限定于已列出的步骤或单元,而是可选地还包括没有列出的步骤或单元,或可选地还包括对于这些过程、方法、产品或设备固有的其它步骤或单元。在本文中提及“实施例”意味着,结合实施例描述的特定特征、结构或特性可以包含在本发明的至少一个实施例中。在说明书中的各个位置展示该短语并不一定均是指相同的实施例,也不是与其它实施例互斥的独立的或备选的实施例。本领域技术人员显式地和隐式地理解的是,本文所描述的实施例可以与其它实施例相结合。在本发明说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。The terms "first", "second" and the like in the claims, description and drawings of the present invention are used to distinguish different objects, rather than to describe a specific order. Furthermore, the terms "include" and "have", as well as any variations thereof, are intended to cover a non-exclusive inclusion. For example, a process, method, system, product or device comprising a series of steps or units is not limited to the listed steps or units, but optionally also includes unlisted steps or units, or optionally further includes For other steps or units inherent in these processes, methods, products or apparatuses. Reference herein to an "embodiment" means that a particular feature, structure, or characteristic described in connection with the embodiment can be included in at least one embodiment of the present invention. The presentation of this phrase in various places in the specification are not necessarily all referring to the same embodiment, nor are independent or alternative embodiments mutually exclusive of other embodiments. It is understood explicitly and implicitly by those skilled in the art that the embodiments described herein can be combined with other embodiments. The term "and/or" used in the description of the present invention and the appended claims refers to any combination and all possible combinations of one or more of the associated listed items, and includes these combinations.

本领域普通技术人员可以意识到,结合本文中所公开的实施例描述的各示例的单元及算法步骤,能够以电子硬件、计算机软件或者二者的结合来实现,为了清楚地说明硬件和软件的可互换性,在上述说明中已经按照功能一般性地描述了各示例的组成及步骤。专业技术人员可以对每个特定的应用来使用不同方法来实现所描述的功能,但是这种实现不应认为超出本发明的范围。Those of ordinary skill in the art can realize that the units and algorithm steps of the examples described in conjunction with the embodiments disclosed herein can be implemented by electronic hardware, computer software, or a combination of the two. In order to clearly illustrate the relationship between hardware and software Interchangeability. In the above description, the composition and steps of each example have been generally described according to their functions. Those skilled in the art may use different methods to implement the described functions for each specific application, but such implementation should not be regarded as exceeding the scope of the present invention.

以上所揭露的仅为本发明较佳实施例而已,当然不能以此来限定本发明之权利范围,因此依本发明权利要求所作的等同变化,仍属本发明所涵盖的范围。The above disclosures are only preferred embodiments of the present invention, and certainly cannot limit the scope of rights of the present invention. Therefore, equivalent changes made according to the claims of the present invention still fall within the scope of the present invention.

Claims (10)

1. a kind of application version switching method, which is characterized in that the described method includes:
The first data in the first application program are obtained, include being encrypted based on the first encryption software in first data First encryption data;
First encryption data is decrypted based on corresponding first decryption software of first encryption software to obtain One ciphertext data, and the first version configuration information based on first application program and first ciphertext data generate second Application program;
The second data in second application program are encrypted based on the second encryption software, to obtain the second encryption number According to;
The second edition configuration information for obtaining the first more new information and second application program, based on the second encryption number According to, the described first more new information and the second edition configuration information, third application program is generated.
2. the method according to claim 1, wherein the first version based on first application program is matched Confidence breath and first ciphertext data generate the second application program:
When the version updating for receiving first application program is requested, second carried in the version updating request is obtained Configuration information is updated, and updates configuration information, the first version configuration information and first decryption based on described second Data generate the second application program.
3. method according to claim 1 or 2, which is characterized in that described to be based on second encryption data, described first More new information and the second edition configuration information, generating third application program includes:
The current version number for obtaining second application program carried in the second edition configuration information judges described current Whether version number is target version number;
If the current version number is not the target version number, letter is updated based on second encryption data, described first Breath and the second edition configuration information generate third application program;
Wherein, the version number of the third application program is higher than the current version number of second application program.
4. according to the method described in claim 3, it is characterized in that, including updating configuration information in the described first more new information;
It is described that third is generated based on second encryption data, the described first more new information and the second edition configuration information Application program includes:
Based on the current version number of second application program, it is right from the described first more new information to obtain the target version number The update configuration information answered, the target version number are any version number higher than the current version number;
Third application journey is generated based on the update configuration information, second encryption data and second configuration information Sequence, wherein the version number of the third application program is the target version number.
5. according to the method described in claim 3, it is characterized in that, the described first more new information is sky;
The method also includes:
If the current version number is the target version number, configured based on second encryption data and the second edition Information generates third application program, wherein the current version of the version number of the third application program and second application program This number consistent.
6. method according to any one of claims 1 to 5, which is characterized in that described to be based on first encryption software pair After first encryption data is decrypted to obtain the first ciphertext data in the first decryption software answered, the method is also wrapped It includes:
First ciphertext data is stored into database to obtain preliminary data;
When receiving the request for obtaining the third data in the third application program, preliminary data from the database It is middle to obtain first ciphertext data, and first ciphertext data is determined as the third data.
7. a kind of application version switching device, which is characterized in that the version switching device includes:
Acquiring unit includes based on the first encryption for obtaining the first data in the first application program, in first data The first encryption data that software cryptography obtains;
Decryption unit, the institute for being obtained based on corresponding first decryption software of first encryption software to the acquiring unit It states the first encryption data to be decrypted to obtain the first ciphertext data, and is configured based on the first version of first application program Information and first ciphertext data generate the second application program;
Encryption unit, for being encrypted based on the second encryption software to the second data in second application program, with To the second encryption data;
Generation unit is based on institute for obtaining the second edition configuration information of the first more new information and second application program Second encryption data, the described first more new information and the second edition configuration information that encryption unit obtains are stated, it is raw At third application program.
8. version switching device according to claim 7, which is characterized in that the version switching device further include:
Judging unit, for obtaining the current version of second application program carried in the second edition configuration information Number, judge whether the current version number is target version number;
The generation unit, for encrypting number based on described second when the current version number is not the target version Third application program is generated according to, the described first more new information and the second edition configuration information;
Wherein, the version number of the third application program is higher than the current version number of second application program.
9. a kind of terminal device, which is characterized in that including processor and memory, the processor and memory are connected with each other;
The memory is for storing computer program, and the computer program includes program instruction, and the processor is configured For calling described program to instruct, as the method according to claim 1 to 6 is executed.
10. a kind of computer readable storage medium, which is characterized in that the computer-readable recording medium storage has computer journey Sequence, the computer program are executed by processor to realize method described in claim 1 to 6 any one.
CN201910421991.3A 2019-05-21 2019-05-21 Application program version switching method and device Pending CN110244976A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910421991.3A CN110244976A (en) 2019-05-21 2019-05-21 Application program version switching method and device

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201910421991.3A CN110244976A (en) 2019-05-21 2019-05-21 Application program version switching method and device

Publications (1)

Publication Number Publication Date
CN110244976A true CN110244976A (en) 2019-09-17

Family

ID=67884689

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201910421991.3A Pending CN110244976A (en) 2019-05-21 2019-05-21 Application program version switching method and device

Country Status (1)

Country Link
CN (1) CN110244976A (en)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906576A (en) * 2004-09-20 2007-01-31 索尼计算机娱乐公司 Methods and apparatus for distributing software applications
CN101901160A (en) * 2010-08-11 2010-12-01 中兴通讯股份有限公司 Packing method and device of version upgrading software package
CN104965712A (en) * 2015-07-17 2015-10-07 北京奇虎科技有限公司 Application reinforcing protection method and apparatus and mobile terminal
US20160283728A1 (en) * 2015-03-26 2016-09-29 Microsoft Technology Licensing, Llc Database server and client for query processing on encrypted data
US20180060607A1 (en) * 2016-08-30 2018-03-01 Winbond Electronics Corporation Anti-Rollback Version Upgrade in Secured Memory Chip
CN109358883A (en) * 2018-11-05 2019-02-19 珠海格力电器股份有限公司 Program upgrading method, system, application system and storage medium

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1906576A (en) * 2004-09-20 2007-01-31 索尼计算机娱乐公司 Methods and apparatus for distributing software applications
CN101901160A (en) * 2010-08-11 2010-12-01 中兴通讯股份有限公司 Packing method and device of version upgrading software package
WO2012019395A1 (en) * 2010-08-11 2012-02-16 中兴通讯股份有限公司 Packing method and device for version upgrade software package
US20160283728A1 (en) * 2015-03-26 2016-09-29 Microsoft Technology Licensing, Llc Database server and client for query processing on encrypted data
CN104965712A (en) * 2015-07-17 2015-10-07 北京奇虎科技有限公司 Application reinforcing protection method and apparatus and mobile terminal
US20180060607A1 (en) * 2016-08-30 2018-03-01 Winbond Electronics Corporation Anti-Rollback Version Upgrade in Secured Memory Chip
CN109358883A (en) * 2018-11-05 2019-02-19 珠海格力电器股份有限公司 Program upgrading method, system, application system and storage medium

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
WARREN HE ET AL.: "ShadowCrypt: Encrypted Web Applications for Everyone", 《CCS \'14: PROCEEDINGS OF THE 2014 ACM SIGSAC CONFERENCE ON COMPUTER AND COMMUNICATIONS SECURITY》, 3 November 2014 (2014-11-03), pages 1028 - 1039, XP058696782, DOI: 10.1145/2660267.2660326 *
刘北胜;王彤;王辉麟;陈长春;白根亮;王志华;刘洋;: "铁路工地拌和站生产信息采集终端软件开发与应用", 北京交通大学学报, no. 05, 15 October 2015 (2015-10-15), pages 58 - 64 *

Similar Documents

Publication Publication Date Title
CN105308560B (en) Method and apparatus for setting a profile
US20070198419A1 (en) Method of transferring digital rights
EP3103048B1 (en) Content item encryption on mobile devices
CN107295085B (en) Application information processing and downloading method, server, client and terminal equipment
CN108270739A (en) A kind of method and device of managing encrypted information
CN113296737A (en) Random number generation system, method and device and cloud server
CN111241532A (en) Host login method, device, equipment and storage medium based on board jump machine
CN111737718A (en) Encryption and decryption method and device for jar packet, terminal equipment and storage medium
CN105847011A (en) Key loading method and device
WO2020134719A1 (en) Mobile terminal, method for uninstalling pre-installed application therein, and memory
CN111628863B (en) Data signature method and device, electronic equipment and storage medium
CN118672685B (en) Target file redirection method and device, and computer equipment
US20150319140A1 (en) Encryption/decryption method, system and device
WO2025097962A1 (en) Data processing method and apparatus based on trusted execution environment, and storage medium and program product
CN109391689A (en) A kind of method and device that micro services application programming interface is called
CN114969768A (en) Data processing method and device and storage medium
WO2024250834A1 (en) Encryption method and apparatus, and device and storage medium
US7802108B1 (en) Secure storage of program code for an embedded system
CN110244976A (en) Application program version switching method and device
WO2025060249A1 (en) Data usage method for privacy protection, and servers
CN106453335B (en) Data transmission method and device
CN110232570A (en) A kind of information monitoring method and device
CN114424193B (en) Flash package encryption method, device, electronic device and computer storage medium
CN108304729B (en) Method for reporting log by client and electronic equipment
CN113094212A (en) Video backup method and device and video backup system

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
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20190917

WD01 Invention patent application deemed withdrawn after publication