CN111290738A - Resource processing method, device and equipment of application program and storage medium - Google Patents

Resource processing method, device and equipment of application program and storage medium Download PDF

Info

Publication number
CN111290738A
CN111290738A CN202010068624.2A CN202010068624A CN111290738A CN 111290738 A CN111290738 A CN 111290738A CN 202010068624 A CN202010068624 A CN 202010068624A CN 111290738 A CN111290738 A CN 111290738A
Authority
CN
China
Prior art keywords
resource
file
specified
application program
target
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
CN202010068624.2A
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.)
Beijing ByteDance Network Technology Co Ltd
Original Assignee
Beijing ByteDance Network 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 Beijing ByteDance Network Technology Co Ltd filed Critical Beijing ByteDance Network Technology Co Ltd
Priority to CN202010068624.2A priority Critical patent/CN111290738A/en
Publication of CN111290738A publication Critical patent/CN111290738A/en
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/20Software design
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/14Details of searching files based on file metadata
    • G06F16/148File search processing
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/162Delete operations
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/40Transformation of program code
    • G06F8/41Compilation

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Databases & Information Systems (AREA)
  • Human Computer Interaction (AREA)
  • Library & Information Science (AREA)
  • Stored Programmes (AREA)

Abstract

The embodiment of the application provides a resource processing method, device and equipment of an application program and a storage medium. The method comprises the following steps: after the resource merging task is finished, searching and deleting the target resource under the first appointed storage path of the resource merging task; replacing the call to the target resource in the XML file with the call to the specified resource; after the resource processing task is finished, searching a resource identifier of the specified resource in the R file, and assigning a value to a member variable of the target resource in the R file by utilizing the resource identifier of the specified resource; the call to the target resource in the bytecode file is replaced with a call to the specified resource. The method automatically realizes the processing of the resources in the packaging process of the application program, and improves the resource processing efficiency.

Description

Resource processing method, device and equipment of application program and storage medium
Technical Field
The embodiment of the application relates to the technical field of computers, in particular to a resource processing method, device, equipment and storage medium for an application program.
Background
As the business development iteration of the application program continues to progress, more and more repeated resources appear in the development project of the application program. For example, an interface return icon is already in the original project, and in the service development iteration process, the interface return icon is redesigned for the newly added service, so that the interface return icons generated twice in sequence belong to repeated resources. The repeated resources are distributed in different modules (modules, aar), and developers usually do not pay much attention to the repeated resources of other modules, thereby causing the occurrence of the repeated resources. Repeated resources are often in modules without dependency relationship, so that workload for manually discovering and deleting the repeated resources is huge, and processing efficiency is low.
In addition, if some resources in the development project need to be processed, such as operations of deletion, replacement, etc., the existing implementation manner is also manual discovery and processing. Similar to the above repeated resources, the resources to be processed are distributed in modules without dependency relationship, which results in huge workload of manual processing and low processing efficiency.
Disclosure of Invention
The embodiment of the application provides a resource processing method, device and equipment of an application program and a storage medium, so as to achieve the purpose of improving the resource processing efficiency of the application program.
In a first aspect, an embodiment of the present application provides a resource processing method for an application program, including:
after the resource merging task of the application program is finished, searching and deleting the target resource under the first specified storage path of the resource merging task;
replacing the call to the target resource in an extensible markup language (XML) file of the application program with the call to the specified resource;
after the resource processing task of the application program is finished, searching a resource identifier (resID) of the specified resource in an R file of the application program, and assigning a value to the member variable of the target resource in the R file by using the resource identifier of the specified resource;
and replacing the call to the target resource in the bytecode file (class file) of the application program with the call to the specified resource.
The method provided by the embodiment of the application is realized in the packaging process of the application, the characteristic that all resources of the application are collected to the first appointed storage path by using the resource merging task is utilized, and after the resource merging task is finished, the target resource is searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The resource processing method provided by the embodiment of the application can realize the processing of the target resource and does not influence the compiling and running of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
If the method provided by the embodiment of the present application is used for resource deduplication of an application program, the implementation manner of searching and deleting the target resource under the first specified storage path of the resource merging task may be: searching repeated resources under a first specified storage path of the resource merging task; and performing duplicate removal processing on the searched repeated resources, wherein the resources reserved through the duplicate removal processing are designated resources, and the resources deleted through the duplicate removal processing are target resources.
And if the resources of the application program need to be subjected to duplicate removal operation, searching for duplicate resources under the first specified storage path. Because all resources of the application program are saved under the first appointed storage path, repeated resources searched under the first appointed storage path can be comprehensively and accurately searched, and the condition of missing search is avoided.
On this basis, the above-mentioned searching for the duplicate resource under the first specified storage path of the resource merging task may be implemented in the following manner: respectively calculating hash values for each resource under a first specified storage path of the resource merging task by using a preset information digest algorithm; and searching for repeated resources according to the hash value of each resource, wherein the resources with the same hash value are the repeated resources.
The predetermined message digest algorithm may be an MD5 algorithm or a hash algorithm.
For the repeated resources, the hash values calculated by using the information summarization algorithm are the same, so that the repeated resources can be quickly determined by using the information summarization algorithm.
On the basis of any method embodiment, the resource processing task of the application program can be executed after the call of the target resource in the XML file of the application program is replaced by the call of the specified resource; and after the resource identifier of the specified resource is used for assigning the value for the member variable of the target resource in the R file, replacing the calling of the target resource in the byte code file of the application program with the calling of the specified resource.
Specifically, a Hook function can be used to Hook a resource merging task and a resource processing function, after the resource merging task is finished, the steps of searching and deleting the target resource and modifying the XML file are skipped to, after the XML file is modified, the original packaging process is returned to, the resource processing is continued, and after the resource processing is finished, the steps of modifying the R file and the CLASS file are skipped to.
Through the time sequence limitation, the smooth proceeding of the packaging process can be ensured, and the unstable packaging process caused by the disordered time sequence is avoided.
On this basis, before the resource identifier of the specified resource is used for assigning the value to the member variable of the target resource in the R file, the member variable of the target resource is also added in the R file.
If the processing is performed according to the time sequence, the target resource is deleted first, and then the R file is generated, so that the R file does not include the member variable of the target resource, and the member variable of the target resource is added before the member variable of the target resource in the R file is assigned.
On the basis of any of the above method embodiments, the above replacing the call to the target resource in the XML file of the application program with the call to the specified resource may be implemented in the following manner: searching for the call of the target resource under a second specified storage path of the extensible markup language file of the application program; the call to the target resource is replaced with a call to the specified resource.
The inventor finds that, in the process of implementing the present invention, for a specific type of resource, for example, a picture resource, a path that appears (is called) in an XML file is regularly followed, so that a path (a second specified storage path) corresponding to a target resource is predetermined, and when the XML file is modified, the calling of the target resource is searched only under the second specified storage path, instead of searching under all paths of the XML file, so that the searching efficiency is improved, and the searching time is shortened.
In a second aspect, an embodiment of the present application provides an apparatus for processing resources of an application, where the apparatus runs in a packaging process of the application, and includes:
the target resource deleting module is used for searching and deleting the target resource under the first specified storage path of the resource merging task after the resource merging task of the application program is finished;
the XML file modification module is used for replacing the calling of the target resource in the XML file of the application program with the calling of the specified resource;
the R file modification module is used for searching the resource identifier of the specified resource in the R file of the application program after the resource processing task of the application program is finished, and assigning a value to the member variable of the target resource in the R file by using the resource identifier of the specified resource;
and the bytecode file modification module is used for replacing the calling of the target resource in the bytecode file of the application program with the calling of the specified resource.
The device provided by the embodiment of the application runs in the packaging process of the application, and the resource merging task is utilized to collect all resources of the application to the characteristic of the first appointed storage path, and after the resource merging task is finished, the target resource is searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The resource processing device provided by the embodiment of the application can realize the processing of the target resource, and does not influence the compiling and normal operation of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
If the apparatus provided in the embodiment of the present application is used to perform resource deduplication on an application, the target resource deletion module may be specifically configured to: searching repeated resources under a first specified storage path of the resource merging task; and performing duplicate removal processing on the searched repeated resources, wherein the resources reserved through the duplicate removal processing are designated resources, and the resources deleted through the duplicate removal processing are target resources.
And if the resources of the application program need to be subjected to duplicate removal operation, searching for duplicate resources under the first specified storage path. Because all resources of the application program are saved under the first appointed storage path, repeated resources searched under the first appointed storage path can be comprehensively and accurately searched, and the condition of missing search is avoided.
On this basis, the above-mentioned searching for the duplicate resource under the first specified storage path of the resource merging task may be implemented in the following manner: respectively calculating hash values for each resource under a first specified storage path of the resource merging task by using a preset information digest algorithm; and searching for repeated resources according to the hash value of each resource, wherein the resources with the same hash value are the repeated resources.
The predetermined message digest algorithm may be an MD5 algorithm or a hash algorithm.
For the repeated resources, the hash values calculated by using the information summarization algorithm are the same, so that the repeated resources can be quickly determined by using the information summarization algorithm.
On the basis of any device embodiment, the resource processing task of the application program can be executed after the call of the target resource in the XML file of the application program is replaced by the call of the specified resource; and after the resource identifier of the specified resource is used for assigning the value for the member variable of the target resource in the R file, replacing the calling of the target resource in the byte code file of the application program with the calling of the specified resource.
Specifically, a Hook function can be used to Hook a resource merging task and a resource processing function, after the resource merging task is finished, the steps of searching and deleting the target resource and modifying the XML file are skipped to, after the XML file is modified, the original packaging process is returned to, the resource processing is continued, and after the resource processing is finished, the steps of modifying the R file and the CLASS file are skipped to.
Through the time sequence limitation, the smooth proceeding of the packaging process can be ensured, and the unstable packaging process caused by the disordered time sequence is avoided.
On this basis, before the resource identifier of the specified resource is used for assigning the value to the member variable of the target resource in the R file, the member variable of the target resource is also added in the R file.
If the processing is performed according to the time sequence, the target resource is deleted first, and then the R file is generated, so that the R file does not include the member variable of the target resource, and the member variable of the target resource is added before the member variable of the target resource in the R file is assigned.
On the basis of any of the above embodiments of the apparatus, the XML file modification module is specifically configured to: searching for the call of the target resource under a second specified storage path of the extensible markup language file of the application program; the call to the target resource is replaced with a call to the specified resource.
The inventor finds that, in the process of implementing the present invention, for a specific type of resource, for example, a picture resource, a path that appears (is called) in an XML file is regularly followed, so that a path (a second specified storage path) corresponding to a target resource is predetermined, and when the XML file is modified, the calling of the target resource is searched only under the second specified storage path, instead of searching under all paths of the XML file, so that the searching efficiency is improved, and the searching time is shortened.
In a third aspect, an embodiment of the present application further provides a computer device, including a processor and a memory;
the memory is used for storing programs for executing the methods of the various method embodiments; the processor is configured to execute programs stored in the memory.
According to the computer equipment provided by the embodiment of the application, the characteristic that all resources of the application program are collected to the first appointed storage path by the resource merging task is utilized, and after the resource merging task is finished, the target resources are searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The computer equipment provided by the embodiment of the application can realize the processing of the target resource, and does not influence the compiling and normal operation of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
In a fourth aspect, this application further provides a computer-readable storage medium storing a program for executing the method described in each embodiment of the first aspect.
The computer-readable storage medium provided in the embodiment of the present application utilizes the feature that the resource merging task collects all resources of the application program to the first specified storage path, and after the resource merging task is finished, searches for and deletes the target resource in the first specified storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The program stored in the computer-readable storage medium provided by the embodiment of the application can realize the processing of the target resource, and the compiling and normal operation of the application program are not influenced. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
Drawings
Fig. 1 is a flowchart of a resource processing method of an application according to an embodiment of the present disclosure;
fig. 2 is a block diagram of a resource processing apparatus of an application according to an embodiment of the present application;
fig. 3 is a schematic structural diagram of a computer device according to an embodiment of the present application.
Detailed Description
In order to better understand the technical solutions described above, the technical solutions of the embodiments of the present application are described in detail below with reference to the drawings and the specific embodiments, and it should be understood that the specific features of the embodiments and the embodiments of the present application are detailed descriptions of the technical solutions of the embodiments of the present application, and are not limitations of the technical solutions of the present application, and the technical features of the embodiments and the embodiments of the present application may be combined with each other without conflict.
The embodiment of the invention provides a resource processing method for an application program, which is used for processing a target resource in the packaging process of the application program, and can be but is not limited to carrying out duplicate removal processing on repeated resources, carrying out resource replacement processing and the like. The method provided by the embodiment of the invention is suitable for the application program of the android platform or the application program of other operating system platforms supporting the following processing procedures. As shown in fig. 1, the method comprises the steps of:
step 101, after the resource merging task of the application program is finished, searching and deleting the target resource under the first specified storage path of the resource merging task.
Taking the android platform as an example, the resource merging task is mergeResource. After the mergeResource is finished, all resources (including the remote dependent aar) of the application will be closed under intermedia/res/merger. Therefore, the intermedia/res/merge is the first designated storage path of the resource merging task.
And 102, replacing the call to the target resource in the XML file of the application program with the call to the specified resource.
The call to the resource in the XML file appears as a call to the resource name of the resource. Therefore, in step 102, replacing the call to the target resource with the call to the specified resource means replacing the resource name of the called target resource with the resource name of the specified resource.
And 103, after the resource processing task of the application program is finished, searching the resID of the specified resource in the R file of the application program, and assigning a value to the member variable of the target resource in the R file by using the resID of the specified resource.
And assigning the member variable of the target resource by using the resID of the specified resource, namely assigning the member variable of the target resource as the resID of the specified resource.
Taking the android platform as an example, the resource processing process is processResource. After processResource is finished, resids of all resources of the application are determined, and an R file (r.java) of the application is also generated.
And 104, replacing the call to the target resource in the CLASS file of the application program with the call to the specified resource.
In the CLASS file of the application program, the call to the resource is represented as a call to the resID of the resource, and therefore, the call to the target resource is replaced by a call to the specified resource, specifically, the resID of the called target resource is replaced by the resID of the specified resource.
The method provided by the embodiment of the application is realized in the packaging process of the application, the characteristic that all resources of the application are collected to the first appointed storage path by using the resource merging task is utilized, and after the resource merging task is finished, the target resource is searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The resource processing method provided by the embodiment of the application can realize the processing of the target resource, and does not influence the compiling and normal operation of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
If the method provided by the embodiment of the present application is used for resource deduplication of an application program, the implementation manner of searching and deleting the target resource under the first specified storage path of the resource merging task may be: searching repeated resources under a first specified storage path of the resource merging task; and performing duplicate removal processing on the searched repeated resources, wherein the resources reserved through the duplicate removal processing are designated resources, and the resources deleted through the duplicate removal processing are target resources.
If the pictures 1, 2 and 3 are found to be duplicated under the first specified storage path, the pictures 1, 2 and 3 are a group of repeated resources, the group of repeated resources are subjected to deduplication processing, the picture 1 which is found first is reserved as a specified resource, and the pictures 2 and 3 are deleted.
In practical applications, the first discovered resource is usually reserved as the designated resource. Of course, after all resources are traversed, resources can be designated from the repeated resources according to a predetermined rule for reservation.
And if the resources of the application program need to be subjected to duplicate removal operation, searching for duplicate resources under the first specified storage path. Because all resources of the application program are saved under the first appointed storage path, repeated resources searched under the first appointed storage path can be comprehensively and accurately searched, and the condition of missing search is avoided.
On this basis, the above-mentioned searching for the duplicate resource under the first specified storage path of the resource merging task may be implemented in the following manner: respectively calculating hash values for each resource under a first specified storage path of the resource merging task by using a preset information digest algorithm; and searching for repeated resources according to the hash value of each resource, wherein the resources with the same hash value are the repeated resources.
The predetermined message digest algorithm may be an MD5 algorithm, a hash algorithm, or another message digest algorithm, which is not limited in the embodiment of the present invention.
For the repeated resources, the hash values calculated by using the information summarization algorithm are the same, so that the repeated resources can be quickly determined by using the information summarization algorithm.
It should be noted that the method provided by the embodiment of the present invention may be used not only for resource deduplication, but also for other resource processing operations. For example, resource replacement, deletion, and the like are performed. If the resource replacement, deletion and other operations are carried out, the resource name of the resource to be replaced or deleted is determined in advance, the resource name of each resource under the first specified storage path is matched with the resource name of the resource to be replaced or deleted, and the target resource is searched and deleted in the mode.
Even if the resource is deleted, the XML file, the R file and the CLASS file need to be modified subsequently, so that errors in the compiling process of the application program are avoided. In this case, the designated resource is a predetermined resource, and the embodiment of the present invention does not limit the resource, and in practical application, the designated resource is determined as needed.
On the basis of any method embodiment, the resource processing task of the application program can be executed after the call of the target resource in the XML file of the application program is replaced by the call of the specified resource; and after the resource identifier of the specified resource is used for assigning the value for the member variable of the target resource in the R file, replacing the calling of the target resource in the byte code file of the application program with the calling of the specified resource.
Specifically, a Hook function can be used to Hook a resource merging task and a resource processing function, after the resource merging task is finished, the steps of searching and deleting the target resource and modifying the XML file are skipped to, after the XML file is modified, the original packaging process is returned to, the resource processing is continued, and after the resource processing is finished, the steps of modifying the R file and the CLASS file are skipped to.
Through the time sequence limitation, the smooth proceeding of the packaging process can be ensured, and the unstable packaging process caused by the disordered time sequence is avoided.
On this basis, before the resource identifier of the specified resource is used for assigning the value to the member variable of the target resource in the R file, the member variable of the target resource is also added in the R file.
If the processing is performed according to the time sequence, the target resource is deleted first, and then the R file is generated, so that the R file does not include the member variable of the target resource, and the member variable of the target resource is added before the member variable of the target resource in the R file is assigned.
Of course, the embodiment of the present invention may not be performed according to the above timing sequence, for example, after the resource processing task is completed, the target resource may be searched and deleted under the first specified storage path of the resource merging task. In this case, since the R file is already generated before the target resource is deleted, the member variables of the target resource exist in the R file, and then the member variables of the target resource need to be re-assigned.
On the basis of any of the above method embodiments, the above replacing the call to the target resource in the XML file of the application program with the call to the specified resource may be implemented in the following manner: searching for the call of the target resource under a second specified storage path of the extensible markup language file of the application program; the call to the target resource is replaced with a call to the specified resource.
The inventor finds that, in the process of implementing the present invention, for a specific type of resource, for example, a picture resource, a path that appears (is called) in an XML file is regularly followed, so that a path (a second specified storage path) corresponding to a target resource is predetermined, and when the XML file is modified, the calling of the target resource is searched only under the second specified storage path, instead of searching under all paths of the XML file, so that the searching efficiency is improved, and the searching time is shortened.
Taking the picture resource as an example, in the XML file, invoking the second specified storage path of the picture resource includes: layout/, draw able/, values-
The method provided by the embodiment of the invention can be realized in the packaging process of the application program by adding the resource processing packaging plug-in, and the packaging process comprising the method is described in detail by taking the duplication elimination of the picture resource of the application program of the android platform as an example.
In this embodiment, two key tasks in the plug-in hook packaging process for performing duplicate removal of picture resources are: a mergeResource (resource merge) task and a processResource (resource process) task, and a transformask (morph task) is newly added.
During application compilation, the mergeResource task is first executed. After the mergeResource task is finished, all resources of the application (including the remote dependent aar) will be closed under intermedia/res/merged.
And respectively calculating the MD5 value of the picture for all picture resources under the mediatitles/res/merge.
For the picture resources with the same MD5 value, only one picture is reserved, and the rest pictures are deleted. In this embodiment, the reserved picture resource is referred to as a host, and the deleted picture resource is referred to as a delete.
And replacing the resource name of the deleted picture resource called in the XML file with the resource name of the reserved picture resource. For example, @ drawable/delete is replaced with @ drawable/host.
The XML file has layout/, draw/, values/where the picture resource call (@ draw /) is likely to occur, so that the search and replacement can be performed only under these storage paths.
After the modification of the XML file is completed, the processResource task is executed. After the processResource task is finished, the resids of all resources of the application program are determined, and R.java is also generated.
And aiming at the generated R.java, performing the following treatment:
and finding out the resId of the reserved picture resource, supplementing the member variable of the deleted picture resource, and assigning the resId as the reserved picture resource.
The effect of this step is obvious, java occurs after processResource, java files under the application already use the deleted picture resources, and if the member variables of java files are not supplemented, the application compiling failure is caused.
By depending on whether the references of the resources in the class file in the introduced aar or the references of the deleted picture resources, errors which cannot be found by the resources tend to occur at runtime, so that the picture resources deleted in the class file need to be directly replaced by the resId of the reserved picture resources, namely, transform task, at the time of compiling.
And finishing packaging.
Through the processing procedure, repeated picture resources in the application program APK are automatically removed in the packaging process.
And in the packaging process, the image resources are removed from weight, the development stage is not sensed, and the resources in the aar can be processed.
Based on the same inventive concept as the method, an embodiment of the present application provides an apparatus for processing resources of an application, where the apparatus operates in a packaging process of the application, as shown in fig. 2, and includes:
the target resource deleting module 201 is configured to, after the resource merging task of the application is finished, search and delete a target resource under a first specified storage path of the resource merging task;
the XML file modification module 202 is used for replacing the calling of the target resource in the XML file of the application program with the calling of the specified resource;
the R file modification module 203 is configured to, after the resource processing task of the application program is finished, search a resource identifier of the specified resource in the R file of the application program, and assign a value to a member variable of the target resource in the R file by using the resource identifier of the specified resource;
and the bytecode file modifying module 304 is configured to replace the call to the target resource in the bytecode file of the application program with a call to the specified resource.
The device provided by the embodiment of the application runs in the packaging process of the application, and the resource merging task is utilized to collect all resources of the application to the characteristic of the first appointed storage path, and after the resource merging task is finished, the target resource is searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The resource processing device provided by the embodiment of the application can realize the processing of the target resource, and does not influence the compiling and normal operation of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
If the apparatus provided in the embodiment of the present application is used to perform resource deduplication on an application, the target resource deletion module may be specifically configured to: searching repeated resources under a first specified storage path of the resource merging task; and performing duplicate removal processing on the searched repeated resources, wherein the resources reserved through the duplicate removal processing are designated resources, and the resources deleted through the duplicate removal processing are target resources.
And if the resources of the application program need to be subjected to duplicate removal operation, searching for duplicate resources under the first specified storage path. Because all resources of the application program are saved under the first appointed storage path, repeated resources searched under the first appointed storage path can be comprehensively and accurately searched, and the condition of missing search is avoided.
On this basis, the above-mentioned searching for the duplicate resource under the first specified storage path of the resource merging task may be implemented in the following manner: respectively calculating hash values for each resource under a first specified storage path of the resource merging task by using a preset information digest algorithm; and searching for repeated resources according to the hash value of each resource, wherein the resources with the same hash value are the repeated resources.
The predetermined message digest algorithm may be an MD5 algorithm or a hash algorithm.
For the repeated resources, the hash values calculated by using the information summarization algorithm are the same, so that the repeated resources can be quickly determined by using the information summarization algorithm.
On the basis of any device embodiment, the resource processing task of the application program can be executed after the call of the target resource in the XML file of the application program is replaced by the call of the specified resource; and after the resource identifier of the specified resource is used for assigning the value for the member variable of the target resource in the R file, replacing the calling of the target resource in the byte code file of the application program with the calling of the specified resource.
Specifically, a Hook function can be used to Hook a resource merging task and a resource processing function, after the resource merging task is finished, the steps of searching and deleting the target resource and modifying the XML file are skipped to, after the XML file is modified, the original packaging process is returned to, the resource processing is continued, and after the resource processing is finished, the steps of modifying the R file and the CLASS file are skipped to.
Through the time sequence limitation, the smooth proceeding of the packaging process can be ensured, and the unstable packaging process caused by the disordered time sequence is avoided.
On this basis, before the resource identifier of the specified resource is used for assigning the value to the member variable of the target resource in the R file, the member variable of the target resource is also added in the R file.
If the processing is performed according to the time sequence, the target resource is deleted first, and then the R file is generated, so that the R file does not include the member variable of the target resource, and the member variable of the target resource is added before the member variable of the target resource in the R file is assigned.
On the basis of any of the above embodiments of the apparatus, the XML file modification module is specifically configured to: searching for the call of the target resource under a second specified storage path of the extensible markup language file of the application program; the call to the target resource is replaced with a call to the specified resource.
The inventor finds that, in the process of implementing the present invention, for a specific type of resource, for example, a picture resource, a path that appears (is called) in an XML file is regularly followed, so that a path (a second specified storage path) corresponding to a target resource is predetermined, and when the XML file is modified, the calling of the target resource is searched only under the second specified storage path, instead of searching under all paths of the XML file, so that the searching efficiency is improved, and the searching time is shortened.
Based on the same inventive concept as the method, the embodiment of the application provides computer equipment, which comprises a processor and a memory; the memory is used for storing programs for executing the methods of the various method embodiments; the processor is configured to execute programs stored in the memory.
According to the computer equipment provided by the embodiment of the application, the characteristic that all resources of the application program are collected to the first appointed storage path by the resource merging task is utilized, and after the resource merging task is finished, the target resources are searched and deleted in the first appointed storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The computer equipment provided by the embodiment of the application can realize the processing of the target resource, and does not influence the compiling and normal operation of the application program. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
Fig. 3 is a block diagram illustrating a partial structure of a computer device related to an embodiment of a method provided by the embodiment of the present application. Referring to fig. 3, the computer apparatus includes:
the power supply is logically connected with the central processing unit through the power supply management system, so that the functions of managing charging, discharging, power consumption management and the like are realized through the power supply management system; the mainboard is used for providing an electric connection path among the components, each component is used for carrying out electric signal transmission through the mainboard, and each component is arranged on the mainboard in a plugging way, a welding way and the like; a central processing Unit (cpu), which mainly includes an Arithmetic Logic Unit (ALU), a Program Counter (PC), a register set, a Cache memory (Cache), and a Bus (Bus) interface for transmitting data, control, and status; the internal memory, the magnetic disk (i.e. the above-mentioned memory storing the program for executing the method described in each method embodiment), the input unit (including mouse, keyboard, touch panel, etc.), the display unit (including display and display card), and the network card exchange data with the central processing unit through the bus.
The program and the related data for executing the method according to the embodiments of the method are first read from the magnetic disk into the internal memory, and the central processing unit reads and loads the program from the internal memory.
Those skilled in the art will appreciate that the computer device configuration illustrated in FIG. 3 does not constitute a limitation of computer devices, and may include more or fewer components than those illustrated, or some components may be combined, or a different arrangement of components.
Based on the same inventive concept as the method, embodiments of the present application provide a computer-readable storage medium storing a program for executing the method according to each embodiment of the first aspect.
The computer-readable storage medium provided in the embodiment of the present application utilizes the feature that the resource merging task collects all resources of the application program to the first specified storage path, and after the resource merging task is finished, searches for and deletes the target resource in the first specified storage path. If the R file and the bytecode file of the application call the target resource, deleting the target resource may cause the compiling failure of the application. In order to avoid the failure of the compiling of the application program caused by the deletion of the target resource, the XML file, the R file and the CLASS file of the application program need to be modified. The modification of the XML file modifies the call to the target resource to a call to the specified resource. Because the resource processing task generates the resource identifier for the resource of the application program, and the calling of the resource in the R file and the bytecode file is represented as the calling of the resource identifier for the resource, the resource identifier of the specified resource can be used as the member variable of the target resource for assignment in the R file after the resource processing task is finished, and the resource identifier of the specified resource is used for replacing the resource identifier of the called target resource in the bytecode file. Then, in the running process of the application program, if the target resource is called, the specified resource is actually called. The program stored in the computer-readable storage medium provided by the embodiment of the application can realize the processing of the target resource, and the compiling and normal operation of the application program are not influenced. The processing process can be automatically executed by a computer program, so that manual processing is avoided, and the processing efficiency is improved.
The description has been presented with reference to flowchart illustrations and/or block diagrams of methods, apparatus (systems), and computer program products according to embodiments of the description. It will be understood that each flow and/or block of the flow diagrams and/or block diagrams, and combinations of flows and/or blocks in the flow diagrams and/or block diagrams, can be implemented by computer program instructions. These computer program instructions may be provided to a processor of a general purpose computer, special purpose computer, embedded processor, or other programmable data processing apparatus to produce a machine, such that the instructions, which execute via the processor of the computer or other programmable data processing apparatus, create means for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be stored in a computer-readable memory that can direct a computer or other programmable data processing apparatus to function in a particular manner, such that the instructions stored in the computer-readable memory produce an article of manufacture including instruction means which implement the function specified in the flowchart flow or flows and/or block diagram block or blocks.
These computer program instructions may also be loaded onto a computer or other programmable data processing apparatus to cause a series of operational steps to be performed on the computer or other programmable apparatus to produce a computer implemented process such that the instructions which execute on the computer or other programmable apparatus provide steps for implementing the functions specified in the flowchart flow or flows and/or block diagram block or blocks.
While preferred embodiments of the present specification have been described, additional variations and modifications in those embodiments may occur to those skilled in the art once they learn of the basic inventive concepts. Therefore, it is intended that the appended claims be interpreted as including preferred embodiments and all changes and modifications that fall within the scope of the specification.
It will be apparent to those skilled in the art that various changes and modifications may be made in the present specification without departing from the spirit and scope of the specification. Thus, if such modifications and variations of the present specification fall within the scope of the claims of the present specification and their equivalents, the specification is intended to include such modifications and variations.

Claims (10)

1. A resource processing method of an application program is characterized in that in the packaging process of the application program, the method comprises the following steps:
after the resource merging task of the application program is finished, searching and deleting a target resource under a first specified storage path of the resource merging task;
replacing the call to the target resource in the extensible markup language file of the application program with the call to the specified resource;
after the resource processing task of the application program is finished, searching the resource identifier of the specified resource in the R file of the application program, and assigning a value to the member variable of the target resource in the R file by using the resource identifier of the specified resource;
and replacing the call to the target resource in the bytecode file of the application program with the call to the specified resource.
2. The method of claim 1, wherein finding and deleting the target resource under the first specified storage path of the resource merging task comprises:
searching repeated resources under a first specified storage path of the resource merging task;
and performing duplicate removal processing on the searched repeated resources, wherein the resources reserved through the duplicate removal processing are designated resources, and the resources deleted through the duplicate removal processing are the target resources.
3. The method of claim 2, wherein searching for duplicate resources under the first specified storage path of the resource merging task comprises:
respectively calculating hash values for each resource under a first appointed storage path of the resource merging task by using a preset information abstract algorithm;
and searching for repeated resources according to the hash value of each resource, wherein the resources with the same hash value are the repeated resources.
4. The method of claim 3, wherein the predetermined message digest algorithm is the MD5 algorithm.
5. The method according to any one of claims 1 to 4, characterized in that:
replacing the calling of the target resource in the extensible markup language file of the application program with the calling of the specified resource, and then executing the resource processing task of the application program;
and after the resource identifier of the specified resource is used for assigning values to the member variables of the target resource in the R file, replacing the calling of the target resource in the byte code file of the application program with the calling of the specified resource.
6. The method of claim 5, wherein before assigning a value to the member variable of the target resource in the R-file using the resource identifier of the specified resource, the method further comprises:
and adding member variables of the target resource in the R file.
7. The method of any of claims 1 to 4, wherein replacing the call to the target resource in the extensible markup language file of the application with a call to a specified resource comprises:
searching for the call of the target resource under a second specified storage path of the extensible markup language file of the application program;
and replacing the call to the target resource with the call to the specified resource.
8. An apparatus for processing resources of an application, the apparatus being operated in a packaging process of the application, comprising:
the target resource deleting module is used for searching and deleting the target resource under the first appointed storage path of the resource merging task after the resource merging task of the application program is finished;
the extensible markup language file modification module is used for replacing the calling of the target resource in the extensible markup language file of the application program with the calling of the specified resource;
the R file modification module is used for searching the resource identifier of the specified resource in the R file of the application program after the resource processing task of the application program is finished, and assigning a value to the member variable of the target resource in the R file by using the resource identifier of the specified resource;
and the bytecode file modification module is used for replacing the call to the target resource in the bytecode file of the application program with the call to the specified resource.
9. A computer device comprising a processor and a memory;
the memory is used for storing a program for executing the method of any one of claims 1 to 7;
the processor is configured to execute programs stored in the memory.
10. A computer-readable storage medium in which a program for executing the method of any one of claims 1 to 7 is stored.
CN202010068624.2A 2020-01-21 2020-01-21 Resource processing method, device and equipment of application program and storage medium Pending CN111290738A (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010068624.2A CN111290738A (en) 2020-01-21 2020-01-21 Resource processing method, device and equipment of application program and storage medium

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010068624.2A CN111290738A (en) 2020-01-21 2020-01-21 Resource processing method, device and equipment of application program and storage medium

Publications (1)

Publication Number Publication Date
CN111290738A true CN111290738A (en) 2020-06-16

Family

ID=71023541

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010068624.2A Pending CN111290738A (en) 2020-01-21 2020-01-21 Resource processing method, device and equipment of application program and storage medium

Country Status (1)

Country Link
CN (1) CN111290738A (en)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650722A (en) * 2020-12-24 2021-04-13 五八同城信息技术有限公司 File processing method and device based on android application program, electronic equipment and medium
CN113312314A (en) * 2021-06-02 2021-08-27 上海万物新生环保科技集团有限公司 Method, device and equipment for android platform repeated file retrieval
CN113656293A (en) * 2021-08-05 2021-11-16 上海钧正网络科技有限公司 Data deduplication method and device for flow playback, testing method and device, computer equipment and storage medium
CN113918164A (en) * 2021-10-09 2022-01-11 北京字节跳动网络技术有限公司 Application package generation method and device, readable medium and electronic equipment

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105786498A (en) * 2016-02-25 2016-07-20 广州阿里巴巴文学信息技术有限公司 Method and device for modifying application and electronic device
CN107368536A (en) * 2017-06-22 2017-11-21 深圳市金立通信设备有限公司 The optimization method and terminal of a kind of installation kit
CN109885324A (en) * 2019-02-25 2019-06-14 北京达佳互联信息技术有限公司 A kind of processing method, device, terminal and the storage medium of application program installation kit
CN110232051A (en) * 2019-05-29 2019-09-13 吉旗(成都)科技有限公司 Application program repeats method for processing resource and device
CN110389762A (en) * 2018-04-19 2019-10-29 北京京东尚科信息技术有限公司 The method and apparatus of AAR packet are handled in Android engineering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105786498A (en) * 2016-02-25 2016-07-20 广州阿里巴巴文学信息技术有限公司 Method and device for modifying application and electronic device
CN107368536A (en) * 2017-06-22 2017-11-21 深圳市金立通信设备有限公司 The optimization method and terminal of a kind of installation kit
CN110389762A (en) * 2018-04-19 2019-10-29 北京京东尚科信息技术有限公司 The method and apparatus of AAR packet are handled in Android engineering
CN109885324A (en) * 2019-02-25 2019-06-14 北京达佳互联信息技术有限公司 A kind of processing method, device, terminal and the storage medium of application program installation kit
CN110232051A (en) * 2019-05-29 2019-09-13 吉旗(成都)科技有限公司 Application program repeats method for processing resource and device

Non-Patent Citations (13)

* Cited by examiner, † Cited by third party
Title
NB奋斗小青年: "Andorid资源瘦身去重丶图片压缩丶混淆插件(2)", 《HTTPS://BLOG.CSDN.NET/WENYINGZHI/ARTICLE/DETAILS/103417963》, 6 December 2019 (2019-12-06) *
NB奋斗小青年: "Andorid资源瘦身去重丶图片压缩丶混淆插件(2)", pages 32 - 12, Retrieved from the Internet <URL:《https://blog.csdn.net/wenyingzhi/article/details/103417963》> *
NB奋斗小青年: "Andorid资源瘦身去重丶图片压缩丶混淆插件(3)", 《HTTPS://BLOG.CSDN.NET/WENYINGZHI/ARTICLE/DETAILS/103417979》 *
NB奋斗小青年: "Andorid资源瘦身去重丶图片压缩丶混淆插件(3)", 《HTTPS://BLOG.CSDN.NET/WENYINGZHI/ARTICLE/DETAILS/103417979》, 6 December 2019 (2019-12-06) *
SMALLSOHOSOLO: "McImage插件解析", 《HTTPS://SMALLSOHO.COM/ANDROID/2017/04/07/MCIMAGE插件解析/》 *
SMALLSOHOSOLO: "McImage插件解析", 《HTTPS://SMALLSOHO.COM/ANDROID/2017/04/07/MCIMAGE插件解析/》, 7 April 2017 (2017-04-07) *
SUSION: "booster分析-App资源压缩", 《HTTPS://JUEJIN.CN/POST/6844903949351256071》 *
SUSION: "booster分析-App资源压缩", 《HTTPS://JUEJIN.CN/POST/6844903949351256071》, 20 September 2019 (2019-09-20) *
X_SATION: "编译时动态修改xml内容探索", 《HTTPS://WWW.JIANSHU.COM/P/2007AFB75EAB》 *
X_SATION: "编译时动态修改xml内容探索", 《HTTPS://WWW.JIANSHU.COM/P/2007AFB75EAB》, 13 October 2019 (2019-10-13) *
字节跳动技术团队: "【Android优化】APK包资源精简,立减1M", 《HTTPS://MP.WEIXIN.QQ.COM/S/MMYP0XT0NYJ1F--BQ6CH7G》, 19 September 2017 (2017-09-19) *
字节跳动技术团队: "【Android优化】APK包资源精简,立减1M", pages 1 - 10, Retrieved from the Internet <URL:《https://mp.weixin.qq.com/s/mmYp0Xt0NYJ1F--bq6cH7g》> *
建帅: "Android App包瘦身优化实践", pages 1 - 22, Retrieved from the Internet <URL:《https://tech.meituan.com/2017/04/07/android-shrink-overall-solution.html》> *

Cited By (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112650722A (en) * 2020-12-24 2021-04-13 五八同城信息技术有限公司 File processing method and device based on android application program, electronic equipment and medium
CN112650722B (en) * 2020-12-24 2023-03-31 五八同城信息技术有限公司 File processing method and device based on android application program, electronic equipment and medium
CN113312314A (en) * 2021-06-02 2021-08-27 上海万物新生环保科技集团有限公司 Method, device and equipment for android platform repeated file retrieval
CN113656293A (en) * 2021-08-05 2021-11-16 上海钧正网络科技有限公司 Data deduplication method and device for flow playback, testing method and device, computer equipment and storage medium
CN113918164A (en) * 2021-10-09 2022-01-11 北京字节跳动网络技术有限公司 Application package generation method and device, readable medium and electronic equipment

Similar Documents

Publication Publication Date Title
CN111290738A (en) Resource processing method, device and equipment of application program and storage medium
JP7090657B2 (en) Methods, devices, devices and storage media for upgrading applications
KR101643022B1 (en) Catalog-based software component management
US8667459B2 (en) Application specific runtime environments
US8219987B1 (en) Optimized virtual machine specification for provisioning application specific runtime environment
US11327745B2 (en) Preventing falsification in version management
CN111309335B (en) Compiling method and device of plug-in application and computer readable storage medium
CN109597677A (en) Method and apparatus for handling information
CN111694638A (en) Rule package loading method, rule package executing method and terminal equipment
US9904574B2 (en) Parallel computing without requiring antecedent code deployment
CN111966631A (en) Mirror image file generation method, system, equipment and medium capable of being rapidly distributed
CN109522043B (en) Method and device for managing configuration data and storage medium
CN112769706B (en) Componentized routing method and system
GB2518894A (en) A method and a system for operating programs on a computer cluster
CN111078279A (en) Processing method, device and equipment of byte code file and storage medium
CN112783912A (en) Data processing method and device, computer equipment and storage medium
CN115576600A (en) Code change-based difference processing method and device, terminal and storage medium
CN112947907B (en) Method for creating code branches
JP2013534347A (en) System and method for execution of high performance computing applications
JP5537599B2 (en) Version upgrade management method in business system
US9396239B2 (en) Compiling method, storage medium and compiling apparatus
CN110908644A (en) Configuration method and device of state node, computer equipment and storage medium
CN113448493B (en) Method, electronic device and computer readable medium for backing up data
CN113127430B (en) Mirror image information processing method, mirror image information processing device, computer readable medium and electronic equipment
US20150046414A1 (en) Computer product, managing apparatus, and managing method

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
CB02 Change of applicant information

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Douyin Vision Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: Tiktok vision (Beijing) Co.,Ltd.

Address after: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant after: Tiktok vision (Beijing) Co.,Ltd.

Address before: 100041 B-0035, 2 floor, 3 building, 30 Shixing street, Shijingshan District, Beijing.

Applicant before: BEIJING BYTEDANCE NETWORK TECHNOLOGY Co.,Ltd.

CB02 Change of applicant information