Data processing method and device, equipment and storage medium
By dividing the target application's code into application code and relationship chain usage code, and using sandbox technology to isolate social relationship chain hosted data, the contradiction between privacy protection and social fun is resolved, thereby enhancing the application's social fun and user stickiness while protecting privacy.
Patent Information
- Application Number
- CN202410579965.4
- Authority / Receiving Office
- CN · China
- Patent Type
- Applications(China)
- Current Assignee / Owner
- Filing Date
- 2024-05-10
- Publication Date
- 2025-11-11
AI Technical Summary
Existing data processing methods cannot enhance the social appeal of applications while protecting the privacy of users' data, leading to a contradiction between the risk of privacy data leakage and the reduction in appeal.
The development code of the target application is divided into application code and social chain usage code. An application container and an open data container are set up respectively. The application container is used to process front-end data, and the open data container is used to process social relationship chain hosted data. Sandbox technology is used for isolation. The open data container calls the basic library container to obtain the social relationship chain hosted data for processing.
It enhances the application's social interaction features, such as leaderboard creation and friend interaction, while protecting privacy data, thereby increasing the application's fun and user stickiness, and preventing the leakage of social relationship chain hosted data.
Smart Images

Figure CN120935140A_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of computer technology, and in particular to a data processing method, apparatus, device, and storage medium. Background Technology
[0002] With the rapid development of computer technology, various instant messaging applications are playing an increasingly important role in people's daily lives. To facilitate the consumption of non-social applications, such as games, some applications can be embedded within instant messaging applications, allowing users to consume these applications simply by opening the instant messaging application.
[0003] However, instant messaging applications include data on users' social relationship chains, which constitutes their private information. Some non-social applications omit social features to protect user privacy, but this reduces the application's appeal. Other applications add social features, such as leaderboards, to enhance engagement, but this carries the risk of privacy data leakage. Therefore, current data processing methods fail to strike a balance between privacy protection and social engagement. Summary of the Invention
[0004] This application provides a data processing method, apparatus, device, and storage medium that can enhance the social appeal of applications while protecting the privacy of the user's data, thereby increasing the social enjoyment, reach, and user stickiness of the applications.
[0005] In a first aspect, this application provides a data processing method applied to a terminal device corresponding to a first object, comprising:
[0006] The system receives social operations from a first object on the application interface of a target application. The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer.
[0007] Based on the social operation, the first request is sent to the instant messaging server by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container. The first request is used to request the social relationship chain managed data of the first object.
[0008] The social relationship chain hosted data of the first object sent by the instant messaging server is stored in the open data container, and the social relationship chain hosted data in the open data container is processed through the application container and the basic library container to obtain the data processing result of the target application.
[0009] Secondly, this application provides a data processing method applied to an instant messaging server, comprising:
[0010] A receiving terminal device sends a first request. The first request is sent by the terminal device based on the social operation of a first object on the application interface of a target application, by calling the social relationship chain managed data interface in the base library container through the open data container. The target application includes an application container and the open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer.
[0011] Based on the first request, obtain the social relationship chain managed data of the first object;
[0012] The social relationship chain hosted data is sent to the terminal device, so that the terminal device stores the social relationship chain hosted data in the open data container, and processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
[0013] Thirdly, this application provides a data processing apparatus for use in a terminal device, comprising:
[0014] A receiving unit is configured to receive social operations performed by a first object on the application interface of a target application. The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer.
[0015] The sending unit is used to send a first request to the instant messaging server based on the social operation by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container. The first request is used to request the social relationship chain managed data of the first object.
[0016] The receiving unit is also configured to receive the social relationship chain hosted data of the first object sent by the instant messaging server in the open data container;
[0017] The processing unit is used to process the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
[0018] In some embodiments, the social operation includes either a leaderboard operation or an interaction operation. Correspondingly, the data processing result of the target application includes the leaderboard of the first object and the interaction result between the first object and the second object, wherein the second object is one of the N social objects.
[0019] In some embodiments, if the social operation is the leaderboard operation, the processing unit is specifically used to process the object data and application data of the N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object.
[0020] In some embodiments, if the social operation is the interaction operation, the processing unit is specifically used to process the object data and application data of the N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object; and to perform the interaction operation based on the leaderboard of the first object to obtain the interaction result between the first object and at least one of the N social objects.
[0021] In some embodiments, the sending unit is further configured to send a second request to the instant messaging server based on the social operation by calling the self-relationship data acquisition interface in the base library container through the open data container. The second request is used to request the object data and application data of the first object. The receiving unit 11 is further configured to receive the object data and application data of the first object sent by the instant messaging server and store them in the open data container. The processing unit is specifically configured to process the object data and application data of the first object in the open data container, as well as the object data and application data of the N social objects, through the application container and the base library container, to obtain a ranking list of the first object.
[0022] In some embodiments, the processing unit is specifically configured to, based on the social operation, call the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the base library container through the open data container to obtain the shared canvas and the rendering context of the shared canvas; based on the shared canvas, the rendering context of the shared canvas, and the object data and application data of the first object, and the object data and application data of the N social objects, generate an off-screen leaderboard through the open data container; call the open data container object acquisition interface in the base library container through the application container to obtain the off-screen leaderboard; call the on-screen canvas creation interface and the on-screen canvas rendering context acquisition interface in the base library container through the application container to create an on-screen canvas and obtain the rendering context of the on-screen canvas; and render the off-screen leaderboard onto the on-screen canvas through the application container based on the rendering context of the on-screen canvas to obtain the leaderboard of the first object.
[0023] In some embodiments, the processing unit is specifically configured to, based on the social operation, call the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container through the open data container to obtain the pseudo-shared canvas and the pseudo-rendering context of the pseudo-shared canvas; based on the pseudo-shared canvas and the rendering context of the pseudo-shared canvas, as well as the object data and application data of the first object and the object data and application data of the N social objects, generate the off-screen leaderboard through the open data container.
[0024] In some embodiments, if the interactive operation is to gift the virtual assets of the first object to the second object among the N social objects, the receiving unit is further configured to receive the gifting operation of the first object gifting the M virtual assets to the second object in the leaderboard; the sending unit is further configured to call the interactive interface in the base library container through the open data container to send a third request to the instant messaging server, the third request being used to request that the M virtual assets of the first object be gifted to the second object, where M is a positive integer; the receiving unit is further configured to detect the detection interface in the base library container through the application container to obtain the first response information sent by the instant messaging server, the first response information being used to indicate whether the M virtual assets of the first object were successfully gifted to the second object.
[0025] In some embodiments, the processing unit is further configured to update the virtual assets of the first object through the application container if the first response information indicates that the M virtual assets of the first object have been successfully gifted to the second object.
[0026] In some embodiments, the specific unit is further configured to control the sending unit to send a data update request to the application server through the application container, so that the application server sends a data update request to the instant messaging server through a background interface, the data update request being used to request an update to the asset data of the first object.
[0027] Fourthly, this application provides a data processing apparatus for use with an instant messaging server, comprising:
[0028] A receiving unit is configured to receive a first request sent by a terminal device. The first request is sent by the terminal device based on the social operation of a first object on the application interface of a target application, by calling the social relationship chain managed data interface in the base library container through an open data container. The target application includes an application container and the open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively communicatively connected to the base library container of the instant messaging application, and the application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer.
[0029] The processing unit is configured to obtain the social relationship chain managed data of the first object based on the first request;
[0030] The sending unit is used to send the social relationship chain hosted data to the terminal device, so that the terminal device stores the social relationship chain hosted data in the open data container, and processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
[0031] In some embodiments, the social operation includes either a leaderboard operation or an interactive operation. Correspondingly, the data processing result of the target application includes either the leaderboard of the first object or the first object gifting virtual assets to the second object, where the second object is one of the N social objects.
[0032] In some embodiments, the receiving unit is further configured to receive a second request sent by the terminal device, the second request being sent by the terminal device through the open data container calling the self-relationship data acquisition interface in the basic library container, the second request being used to request object data and application data of the first object; the processing unit is further configured to acquire the object data and application data of the first object based on the second request; the sending unit is further configured to send the object data and application data of the first object to the terminal device, so that the terminal device stores the object data and application data of the first object in the open data container.
[0033] In some embodiments, the receiving unit is further configured to receive a third request sent by the terminal device, the third request being sent by the terminal device through the open data container calling the interactive interface in the basic library container, the third request being used to request that M virtual assets of the first object be gifted to the second object, where M is a positive integer; the processing unit is further configured to modify the virtual asset information of the second object based on the third request; the sending unit is further configured to send a first response information to the terminal device, the first response information being used to indicate whether the M virtual assets of the first object were successfully gifted to the second object.
[0034] In some embodiments, before modifying the virtual asset information of the second object based on the third request, the processing unit obtains at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object based on the third request; based on at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object, and the asset information of the M virtual assets, the processing unit verifies the third request using the verification rules corresponding to the target application; after the third request is verified, the processing unit modifies the virtual asset information of the second object based on the asset information of the M virtual assets of the first object.
[0035] In some embodiments, the receiving unit is further configured to receive a virtual asset query request sent by the terminal device, wherein the virtual asset query request is sent by the terminal device through the application container calling the interactive data query interface in the basic library container, and the virtual asset query request is used to query the current virtual asset information of a target object, wherein the target object includes a first object or a second object; the processing unit is further configured to obtain the current virtual asset information of the target object based on the virtual asset query request; and the sending unit is further configured to send the current virtual asset information of the target object to the terminal device.
[0036] Fifthly, an electronic device is provided, including a processor and a memory. The memory is used to store a computer program, and the processor is used to invoke and run the computer program stored in the memory to perform the methods described in the first or second aspect and their respective implementations.
[0037] In a sixth aspect, a chip is provided for implementing the methods of any one of the first aspects and their respective implementations. Specifically, the chip includes a processor for calling and running a computer program from a memory, causing a device on which the chip is installed to perform the methods of any one of the first or second aspects and their respective implementations.
[0038] In a seventh aspect, a computer-readable storage medium is provided for storing a computer program that causes a computer to perform the methods described in the first or second aspect and their respective implementations.
[0039] Eighthly, a computer program product is provided, including computer program instructions that cause a computer to perform the methods described in the first or second aspect and their respective implementations.
[0040] Ninthly, a computer program is provided that, when run on a computer, causes the computer to perform the methods of the first or second aspect and their respective implementations described above.
[0041] In summary, this application sets up an application container and an open data container for the target application. The application container is used to process the front-end data of the target application, such as for running application code, while the open data container is used to process social relationship chain managed data, such as for running relationship chain usage code. Simultaneously, the front-end data of the instant messaging application is placed in a base library container for execution. Both the application container and the open data container are communicatively connected to the base library container, and the application container cannot read social relationship chain managed data from the open data container. During data processing, the terminal device receives social operations performed by a first object on the application interface of the target application. Based on these social operations, the terminal device calls the social relationship chain managed data acquisition interface in the base library container through the open data container, sending a first request to the instant messaging server. This first request requests the social relationship chain managed data of the first object, which includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application. Based on the first request, the instant messaging server obtains the social relationship chain managed data of the first object and sends it to the open data container in the terminal device. Next, the terminal device processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application. As can be seen from the above, the embodiments of this application divide the development code of the target application into application code and relationship chain usage code, set up an application container for the application code, and set up an open data container for the relationship chain code. The open data container is set up using sandbox technology, which allows the target application to use the social relationship chain hosted data of the first object to complete social interaction functions, such as completing leaderboard drawing and friend interaction capabilities, increasing the fun, spreadability and user stickiness of the application. At the same time, the social relationship chain hosted data in the open data container is not leaked to third parties, thereby protecting the privacy data of the object. Attached Figure Description
[0042] To more clearly illustrate the technical solutions in the embodiments of the present invention, the accompanying drawings used in the description of the embodiments will be briefly introduced below. Obviously, the accompanying drawings described below are only some embodiments of the present invention. For those skilled in the art, other drawings can be obtained based on these drawings without creative effort.
[0043] Figure 1 A schematic diagram of an implementation environment for the data processing method provided in this application embodiment;
[0044] Figure 2 A schematic flowchart illustrating a data processing method provided in an embodiment of this application;
[0045] Figure 3 This is a schematic diagram illustrating the division of code containers involved in an embodiment of this application;
[0046] Figure 4 This is a schematic diagram illustrating the interface settings involved in an embodiment of this application;
[0047] Figure 5 This is a schematic diagram of the application interface;
[0048] Figure 6 This is a schematic diagram illustrating a data processing method according to an embodiment of this application;
[0049] Figure 7A This is a schematic diagram illustrating another interface setting involved in an embodiment of this application;
[0050] Figure 7B This is an illustration of a leaderboard.
[0051] Figure 8 This is another schematic diagram of the application interface;
[0052] Figures 9A to 9C This is an interactive diagram;
[0053] Figures 10A to 10D This is another interactive illustration;
[0054] Figure 11 A schematic flowchart illustrating a data processing method provided in an embodiment of this application;
[0055] Figure 12 A schematic flowchart illustrating a data processing method provided in an embodiment of this application;
[0056] Figure 13 This is a schematic block diagram of a data processing apparatus provided in an embodiment of this application;
[0057] Figure 14 This is a schematic block diagram of a data processing apparatus provided in an embodiment of this application;
[0058] Figure 15 This is a schematic block diagram of the electronic device provided in the embodiments of this application. Detailed Implementation
[0059] The technical solutions of the embodiments of this application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only some embodiments of this application, and not all embodiments. Based on the embodiments of this application, all other embodiments obtained by those of ordinary skill in the art without creative effort are within the scope of protection of this application.
[0060] It should be noted that the terms "first," "second," etc., in the specification, claims, and accompanying drawings of this application are used to distinguish similar objects and are not necessarily used to describe a specific order or sequence. It should be understood that such data can be interchanged where appropriate so that the embodiments of this application described herein can be implemented in sequences other than those illustrated or described herein. In embodiments of the invention, "B corresponding to A" means that B is associated with A. In one implementation, B can be determined based on A. However, it should also be understood that determining B based on A does not mean determining B solely based on A; B can also be determined based on A and / or other information. Furthermore, the terms "comprising" and "having," and any variations thereof, are intended to cover non-exclusive inclusion. For example, a process, method, system, product, or server that comprises a series of steps or units is not necessarily limited to those steps or units explicitly listed, but may include other steps or units not explicitly listed or inherent to these processes, methods, products, or devices. In the description of this application, unless otherwise stated, "a plurality of" means two or more.
[0061] The technical solution proposed in this application can be applied to the fields of instant messaging technology, application technology, mini-programs, etc. It can enhance the social fun of the application while protecting the privacy data of the user, thereby improving the social enjoyment, spread, and user stickiness of the application.
[0062] The relevant concepts involved in the embodiments of this application are introduced below.
[0063] Sandboxing technology can be viewed as a secure container that provides an isolated environment where code or applications can run without affecting the external environment. This technology allows users to conduct various experiments and operations while ensuring safety.
[0064] Context Concept: On iOS, small applications use the JavaScriptCore engine to run JS code, while on Android, the V8 engine is used. Both JavaScriptCore and V8 provide JSVirtualMachine and JSContext capabilities. JSVirtualMachine provides a virtual machine environment, corresponding to a single thread. JSContext is the container for running JS; each JSContext has its own independent context, independent Global object, and native objects. Multiple JSContexts can run within the same JSVirtualMachine, sharing the same memory space. After the client-side interface is established, while maintaining relative independence between Contexts, they can directly call methods or pass JS variables to each other. (In iOS high-performance mode and on PC, iframes are used to implement JSContext, with a similar principle).
[0065] Current applications mainly fall into two categories. The first type does not support the use of instant messaging social networks within instant messaging mini-apps, thus lacking features such as friend leaderboards and friend interaction capabilities. The second type supports the use of instant messaging social networks within instant messaging mini-apps, but faces the risk of leakage of social network information. In other words, current data processing methods cannot achieve a balance between privacy protection and social engagement.
[0066] To address the aforementioned technical issues, this application embodiment sets up an application container and an open data container for the target application. The application container is used to process the front-end data of the target application, such as for running application code, while the open data container is used to process social relationship chain managed data, such as for running relationship chain usage code. Simultaneously, the front-end data of the instant messaging application is placed in a base library container for execution. Both the application container and the open data container are communicatively connected to the base library container, and the application container cannot read social relationship chain managed data from the open data container. During data processing, the terminal device receives social operations performed by a first object on the application interface of the target application. Based on these social operations, the terminal device calls the social relationship chain managed data acquisition interface in the base library container through the open data container, sending a first request to the instant messaging server. This first request requests the social relationship chain managed data of the first object, which includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application. Based on the first request, the instant messaging server obtains the social relationship chain managed data of the first object and sends it to the open data container in the terminal device. Next, the terminal device processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application. As can be seen from the above, the embodiments of this application divide the development code of the target application into application code and relationship chain usage code, set up an application container for the application code, and set up an open data container for the relationship chain code. The open data container is set up using sandbox technology, which allows the target application to use the social relationship chain hosted data of the first object to complete social interaction functions, such as completing leaderboard drawing and friend interaction capabilities, increasing the fun, spreadability and user stickiness of the application. At the same time, the social relationship chain hosted data in the open data container is not leaked to third parties, thereby protecting the privacy data of the object.
[0067] The implementation environment of the data processing method provided in the embodiments of this application is described below.
[0068] Figure 1 This is a schematic diagram of an implementation environment for the data processing method provided in this application, including a terminal device 101, an instant messaging server 102, and an application server 103. The terminal device 101 can communicate with the instant messaging server 102 and the application server 103 via wired or wireless means, respectively, and the instant messaging server 102 and the application server 103 can also communicate with each other via wired or wireless means.
[0069] In this embodiment, the terminal device 101 has a client for an instant messaging application installed, and the instant messaging server 102 can be understood as the server-side of the instant messaging application. The instant messaging application includes a target application; that is, the target application is a mini-program, such as a small application, hosted within the instant messaging application. The target application's client can be opened within the client of the instant messaging application. The application server 103 can be understood as the server-side of the target application.
[0070] In this embodiment of the application, the object can not only communicate with social objects in real time on the client of the instant messaging application, but also open the client of the target application and enter the target application through the instant messaging client.
[0071] In this embodiment, the development code of the target application is divided into application code and social chain usage code. An application container is set up for the application code, and an open data container is set up for the social chain code. The open data container is set up using sandbox technology. The application container is used to process the front-end data of the target application, and the open data container is used to process the social chain hosted data. The application container and the open data container are respectively connected to the basic library container of the instant messaging application. The application container cannot read the social chain hosted data from the open data container, and the basic library container is used to process the front-end data of the instant messaging application. When the first object enters the application interface of the target application, it can input social operations on the application interface. Based on the social operations, the terminal device calls the social relationship chain managed data acquisition interface in the basic library container through the open data container and sends a first request to the instant messaging server. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together. N is a positive integer. The open data container receives the social relationship chain managed data of the first object sent by the instant messaging server, and processes the social relationship chain managed data in the open data container through the application container and the basic library container to obtain the data processing result of the target application. As described above, this application embodiment divides the development code of the target application into application code and relationship chain usage code. An application container is set up for the application code, and an open data container is set up for the relationship chain code. The open data container is set up using sandbox technology. This allows the target application to use the social relationship chain hosted data of the first object to complete social interaction functions, such as completing leaderboard drawing and friend interaction capabilities, increasing the fun, spreadability and user stickiness of the application. At the same time, the social relationship chain hosted data in the open data container is not leaked to third parties, thereby protecting the object's privacy data.
[0072] This application does not limit the specific type of the terminal device 101. In some embodiments, the terminal device 101 may include, but is not limited to: mobile phones, computers, intelligent voice interaction devices, smart home appliances, vehicle terminals, aircraft, wearable smart devices, medical devices, etc. The device is often equipped with a display device, which may also be a monitor, display screen, touch screen, etc., and the touch screen may also be a touch screen, touch panel, etc.
[0073] In some embodiments, there may be one or more servers. When there are multiple servers, at least two servers are used to provide different services, and / or at least two servers are used to provide the same service, such as providing the same service in a load-balanced manner. This application embodiment does not limit this. The aforementioned servers may be independent physical servers, server clusters or distributed systems composed of multiple physical servers, or cloud servers providing basic cloud computing services such as cloud services, cloud databases, cloud computing, cloud functions, cloud storage, network services, cloud communication, middleware services, domain name services, security services, CDN (Content Delivery Network), and big data and artificial intelligence platforms. Servers may also become nodes in a blockchain.
[0074] In this embodiment, the terminal device 101 and the instant messaging server 102, or the terminal device 101 and the application server 103, or the instant messaging server 102 and the application server 103, can be directly or indirectly connected through wired or wireless communication. This application does not impose any restrictions on this connection.
[0075] It should be noted that the implementation environment of this application embodiment includes, but is not limited to, Figure 1 As shown.
[0076] The technical solutions of the embodiments of this application will be described in detail below through some examples. The following embodiments can be combined with each other, and the same or similar concepts or processes may not be described again in some embodiments.
[0077] Figure 2 This is a schematic flowchart of a data processing method provided in an embodiment of this application.
[0078] like Figure 2 As shown, the data processing procedure in this application embodiment includes:
[0079] S101, The terminal device receives the social operation of the first object on the application interface of the target application.
[0080] The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain hosted data. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain hosted data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The social relationship chain hosted data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together. N is a positive integer.
[0081] In some embodiments, the target application is a sub-application hosted in an instant messaging application, such as a mini-program or mini-application. The first object does not need to install the target application and can open the target application through the client of the instant messaging application.
[0082] In some embodiments, the target application is an application that needs to be installed separately, that is, the first object cannot open the target application in the instant messaging application client, and needs to enter the application through the separate client of the target application.
[0083] In this embodiment of the application, to ensure that the privacy data of the target user is not leaked when using the application, social interaction functions are implemented. Regarding data, this embodiment stipulates that all data related to the first object and its social objects (e.g., friend data) involving the social relationship chain are hosted on an instant messaging server. For ease of description, this embodiment refers to the social relationship chain data hosted on the instant messaging server as social relationship chain hosted data.
[0084] The social relationship chain managed data for the first object includes object information and application data of N social objects who have social relationships with the first object in the instant messaging application and also consume the target application. For example, if the first object has 100 social objects in the instant messaging application, and 20 of these 100 social objects also consume the target application, then N equals 20. The aforementioned social relationship chain managed data for the first object includes object information and application data of these 20 social objects, where the application data includes at least one of the first object's score, level, virtual assets, etc. in the application. For example, if the target application is a specific application, the application data is the first object's application data in the target application, which includes at least one of the first object's score, level, virtual assets, etc. in the target application.
[0085] It should be noted that, in this embodiment of the application, the social relationship chain hosting data of the first object is private data that cannot be disclosed.
[0086] In some embodiments, the instant messaging server also hosts some information about the first object, such as object information and application data of the first object.
[0087] In some embodiments, the aforementioned social relationship chain hosted data is written to and retrieved through an interface provided by the instant messaging application.
[0088] For example, it mainly includes at least one of the following interfaces:
[0089] The self-relationship data retrieval interface (wx.getUserCloudStorage) is used to retrieve the object data and application data of the first object;
[0090] The interface for obtaining the type of virtual assets (wx.getUserCloudStorageKeys) is used to obtain the types of all virtual assets of the first object in the target application, where the key represents the type of virtual asset;
[0091] The social relationship chain managed data acquisition interface (wx.getFriendCloudStorage) is used to obtain the social relationship chain managed data of the first object, that is, to obtain the object information and application data of the first object's N social objects;
[0092] The relational data update interface (wx.setUserCloudStorage) is used to update at least one of the object data and application data of the first object;
[0093] The relational data deletion interface (wx.removeUserCloudStorage) is used to delete at least one of the object data and application data of the first object.
[0094] In this embodiment, the front-end code of the target application is further split into insensitive application code (game.js) and sensitive relationship chain usage code (openDataContext.js). Separate containers (Context, also known as domains) are allocated to the base library code, application code, and relationship chain usage code. The base library code can be understood as the front-end code of the instant messaging application. Specifically, as... Figure 3 As shown, an application container is set up for the application code, an open data container is set up for the social relationship chain code, and a base library container is set up for the front-end code of the instant messaging application. The application container is used to process the front-end data of the target application, the open data container is used to process the social relationship chain hosted data, and the base library container is used to process the front-end data of the instant messaging application.
[0095] In this embodiment, all wx interfaces are implemented in the base library container (i.e., the base library code is closed-source). Most of these wx interfaces (e.g., main canvas, network, file, device, payment, etc.) are only exposed to the application container for use by the application code. However, among the aforementioned relationship chain-related interfaces, the first four are sensitive interfaces: getUserCloudStorage, getUserCloudStorageKeys, getFriendCloudStorage, and setUserCloudStorage. These are only exposed to the open data container and are only used by the relationship chain application code.
[0096] In the embodiments of this application, such as Figure 3 As shown, the application container and the open data container communicate with the base library container of the instant messaging application. The open data container is configured using sandbox technology, preventing the application container from reading social relationship chain hosted data from it. This is equivalent to locking the social relationship chain hosted data inside the open data container; application developers can only access and use the data within that container, and cannot take it out of the container. This is how the ability to access social relationship chain hosted data is made available to application developers.
[0097] In addition, this application provides a one-way message channel from the application container to the open data container, ensuring that data and messages in the open data container only enter and do not exit, and that the transmitted messages are serialized into strings. The purpose of all these measures is to ensure that the data hosted by the social relationship chain is not leaked.
[0098] In one example, the usage of the one-way message channel interface and the social relationship chain hosted data related interface involved in this application embodiment is as follows:
[0099] In one example, the application container obtains the open data container object through the wx.getOpenDataContext() interface.
[0100] In one example, the application container sends business messages to the open data container through the object's OpenDatacontext.postMessage() interface.
[0101] In one example, the open data container detects business messages from the application container via the wx.onMessage() interface.
[0102] In one example, the open data container retrieves the current object's own relationship chain managed data through the wx.getUserCloudStorage() and wx.getUserCloudStorageKeys() interfaces.
[0103] In one example, the social relationship chain hosting data of an object's friends is obtained through the wx.getFriendCloudStorage() interface within the open data container.
[0104] In one example, the wx.setUserCloudStorage() interface is used within the open data container to set the relationship chain managed data for the current object.
[0105] In this embodiment of the application, the terminal device can use the above-mentioned interfaces in combination to realize functions such as ranking list drawing and interaction by using the social relationship chain hosted data of the first object within the target application.
[0106] Based on the above description, in this embodiment of the application, when the first object enters the target application, if the first object needs to obtain the leaderboard or needs to interact with social objects, the first object inputs social operations on the application interface of the target application.
[0107] This application does not limit the specific type of social operation, and can be understood as any operation that would lead to the acquisition of the social relationship chain managed data of the first object.
[0108] In some embodiments, the social operations of this application include at least one of leaderboard operations and interactive operations.
[0109] In one example, if the first object needs to access the leaderboard, it triggers the leaderboard option in the application interface. This triggering action by the first object on the leaderboard option can be considered a social interaction on the target application's interface. In other words, this social interaction can be understood as a leaderboard operation used to access the first object's leaderboard.
[0110] In one example, if the first object needs to interact with a social object, the first object triggers the interaction option in the target application's interface. At this time, the first object's triggering operation on the interaction option can be identified as the first object's social operation on the target application's interface.
[0111] S102. The terminal device, based on social operation, sends the first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container.
[0112] The first request is used to request the social relationship chain hosting data of the first object. The social relationship chain hosting data includes object information and application data of N social objects that have social relationships with the first object in the instant messaging application and are in the same consumer target application, where N is a positive integer.
[0113] As described above, in this embodiment, the development code of the target application is divided into application code and relationship chain usage code. An application container is allocated to the application code, and an open data container is allocated to the relationship chain usage code. The application code runs in the application container to process the front-end data of the target application, i.e., the front-end application data. The relationship chain usage code runs in the open data container to process the social relationship chain data of the first object. Meanwhile, as... Figure 4 As shown, some interfaces are set up for the open data container, exclusively for its use. For example, a social relationship chain managed data retrieval interface (wx.getFriendCloudStorage) is set up, allowing terminal devices to retrieve the social relationship chain managed data of the first object within the open data container. Similarly, a self-relationship data retrieval interface (wx.getUserCloudStorage) is set up, allowing terminal devices to retrieve the object data and application data of the first object within the open data container. A self-virtual asset type retrieval interface (wx.getUserCloudStorageKeys) is set up, allowing terminal devices to retrieve the types of all virtual assets of the first object in the target application within the open data container. Finally, a relationship data update interface (wx.setUserCloudStorage) is set up, allowing terminal devices to update at least one of the object data and application data of the first object within the open data container. In this way, terminal devices can only obtain social relationship managed data from the instant messaging server or modify the social relationship managed data in the instant messaging server by calling the aforementioned interfaces within the open data container. This ensures that the social relationship managed data does not leave the open data container, thus preventing application containers from obtaining this social relationship managed data from the open data container. At the same time, the instant messaging server also does not allow application containers to arbitrarily obtain this social relationship managed data. This prevents application developers from arbitrarily obtaining the social relationship managed data of the first object, thus avoiding the risk of social relationship managed data leakage. In other words, in this embodiment of the application, by keeping the social relationship managed data in a sandbox like the open data container, during data processing, such as interaction or leaderboard generation, the social relationship managed data can only be obtained and used within the box, and cannot be taken out of the box. In this way, the relationship chain capability is opened to application developers, thereby completing social interaction functions such as leaderboard drawing and interaction while ensuring that the social relationship managed data of the first object is not leaked, increasing the fun, spread, and user stickiness of the target application.
[0114] Based on this, in this embodiment of the application, when the first object inputs a social operation on the application interface of the target application, the terminal device responds to the social operation by calling the social relationship chain managed data acquisition interface in the basic library container within the open data container, and sending a first request to the instant messaging server. This first request is used to request the social relationship chain managed data of the first object.
[0115] S103. The instant messaging server obtains the social relationship chain managed data of the first object based on the first request.
[0116] In this embodiment, the first request may include the identification information of the first object. After receiving the first request sent by the terminal device through the open data container to call the social relationship chain managed data interface in the basic library container, the instant messaging server parses the first request to obtain the identification information of the first object. Then, based on the identification information of the first object, the instant messaging server obtains the social relationship chain managed data of the first object.
[0117] For example, in this embodiment of the application, the instant messaging server hosts object information and application data for each object of the target application. Simultaneously, the instant messaging server includes object data for a first object and the social relationship chain for the first object, which includes identification information for each object with a social relationship to the first object. Based on this, the instant messaging server can obtain the identification information of the first object by parsing the first request, and then, based on the identification information of the first object, obtain the social relationship chain of the first object, i.e., obtain the identification information of each object with a social relationship to the first object. Next, based on the identification information of each object in the social relationship chain of the first object, the server queries the object information and application data of each object in the social relationship chain of the first object from the object information and application data of each object of the target application hosted by the instant messaging server. For example, if the social relationship chain of the first object includes N social objects, the server queries the object information and application data of these N social objects from the object information and application data of each object of the target application hosted by the instant messaging server; the object information and application data of these N social objects constitute the social relationship chain hosting data of the first object.
[0118] S104. The instant messaging server sends the social relationship chain hosted data of the first object to the terminal device, so that the terminal device stores the social relationship chain hosted data in an open data container.
[0119] In this embodiment, as described above, the social relationship chain managed data of the first object is the first object's private data. Therefore, after obtaining the social relationship chain managed data of the first object based on the above steps, the instant messaging server sends the social relationship chain managed data of the first object to the terminal device. The terminal device stores the social relationship chain managed data of the first object in an open data container. In a specific example, the instant messaging server communicates with the instant messaging client on the terminal device. The instant messaging server sends the social relationship chain managed data of the first object to the basic library container on the terminal device. In the basic library container, the social relationship chain managed data of the first object is sent to the open data container for storage by calling the aforementioned social relationship chain managed data interface.
[0120] S105. The terminal device processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing results of the target application.
[0121] In the embodiments of this application, the above-mentioned Figure 3 It is known that the base library container and the open data container can communicate bidirectionally, as can the application container and the base library container. However, the application container can only write data to the open data container, but cannot read data from it. Thus, the terminal device can process the social relationship chain managed data in the open data container through the application container and the base library container to obtain the data processing results of the target application.
[0122] This application embodiment does not limit the specific method by which a terminal device processes social relationship chain hosted data in an open data container through an application container and a basic library container to obtain the data processing results of the target application.
[0123] In some embodiments, the social operation includes either a leaderboard operation or an interaction operation. Correspondingly, the data processing result of the target application includes either a leaderboard for a first object or an interaction result between the first object and a second object, where the second object is one of N social objects. That is, if the social operation is a leaderboard operation, the data processing result of the target application is the leaderboard for the first object. If the social operation is an interaction operation, the data processing result of the target application is the interaction result between the first object and the second object.
[0124] In some embodiments, if the above social operation is a trigger operation of the leaderboard option for the first object, then S105 includes the following steps S105-A:
[0125] S105-A: The terminal device processes the object data and application data of N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object.
[0126] In the embodiments of this application, such as Figure 5 As shown, assuming the target application is a target game, the application interface includes a game leaderboard option. For example, when the first object enters the target game, after the game ends, this leaderboard option is displayed on the game interface. The first object triggers this leaderboard option. In response to the first object's triggering of this leaderboard option, the terminal device calls the social relationship chain managed data acquisition interface in the base library container within the open data container, sending a first request to the instant messaging server. Upon receiving this first request, the instant messaging server obtains the social relationship chain managed data of the first object based on the request and sends this data to the terminal device. The terminal device stores this social relationship chain managed data in the open data container. Then, the terminal device processes the social relationship chain managed data (i.e., object data of N social objects and game data) in the open data container through the application container (e.g., the game container) and the base library container to obtain the first object's game leaderboard.
[0127] This application embodiment does not limit the specific method by which the terminal device processes the object data and application data of N social objects in the open data container through the application container and the basic library container to obtain the ranking of the first object.
[0128] In one possible implementation, the terminal device processes the object data and application data of N social objects within the social relationship chain managed data of the first object in an open data container. For example, the object data includes the object's name and avatar image, and the application data includes the social object's current application score. This allows the N social objects to be sorted based on their application data and object data, resulting in a leaderboard for these N social objects. Next, the terminal device obtains the object information and application data of the first object in the application container, and then, based on the first object's object information and application data, and the leaderboard of the N social objects generated in the open data container, re-sorts them in the base library container to obtain the leaderboard for the first object.
[0129] In one possible implementation, S105-A above includes the following steps S105-A1 to S105-A4:
[0130] S105-A1, The terminal device, based on social operation, sends a second request to the instant messaging server by calling the self-relationship data acquisition interface in the basic library container through the open data container. The second request is used to request the object data and application data of the first object.
[0131] S105-A2, the instant messaging server obtains the object data and application data of the first object based on the second request.
[0132] S105-A3, the instant messaging server sends the object data and application data of the first object to the terminal device, so that the terminal device stores the object data and application data of the first object in the open data container;
[0133] S105-A4: The terminal device processes the object data and application data of the first object in the open data container, as well as the object data and application data of N social objects, through the application container and the basic library container, to obtain the ranking list of the first object.
[0134] In this implementation, the instant messaging server not only hosts the social relationship chain data of the first object, but also the object information and application data of that first object. Based on this, the terminal device performs social operations, such as... Figure 6 As shown, the terminal device sends a first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the base library container through the open data container, in order to request the social relationship chain managed data of the first object. Simultaneously, the terminal device also sends a second request to the instant messaging server by calling the self-relationship data acquisition interface in the base library container through the open data container, in order to request the object data and application data of the first object.
[0135] This application embodiment does not restrict the timing order in which the terminal device sends the first request and the second request.
[0136] In one example, the terminal device can first send a first request to the instant messaging server by calling the social relationship chain hosted data acquisition interface in the base library container through the open data container, and then send a second request to the instant messaging server by calling the self-relationship data acquisition interface in the base library container through the open data container.
[0137] In one example, the terminal device can first send a second request to the instant messaging server by calling the self-relationship data acquisition interface in the base library container through the open data container, and then send a first request to the instant messaging server by calling the social relationship chain hosting data acquisition interface in the base library container through the open data container.
[0138] In one example, the terminal device can first send a first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the base library container through the open data container, and at the same time send a second request to the instant messaging server by calling the self-relationship data acquisition interface in the base library container through the open data container.
[0139] In this embodiment, the second request may include the identification information of the first object. After receiving the second request sent by the terminal device through the open data container calling the self-relationship data acquisition interface in the basic library container, the instant messaging server parses the second request to obtain the identification information of the first object. Then, based on the identification information of the first object, the instant messaging server obtains the object information and application data of the first object.
[0140] For example, the instant messaging server in this embodiment of the application hosts object information and application data of each object of the target application. Based on this, the instant messaging server can obtain the identification information of the first object by parsing the second request, and then query the object information and application data of the first object from the object information and application data of each object of the target application hosted by the instant messaging server based on the identification information of the first object.
[0141] In this embodiment, after obtaining the object information and application data of the first object based on the above steps, the instant messaging server sends the object information and application data of the first object to the terminal device. The terminal device stores the object information and application data of the first object in an open data container. In a specific example, the instant messaging server communicates with the instant messaging client on the terminal device. The instant messaging server sends the object information and application data of the first object to the basic library container on the terminal device. In the basic library container, the object information and application data of the first object are sent to the open data container for storage by calling the aforementioned self-relationship data acquisition interface.
[0142] Next, the terminal device processes the object data and application data of the first object in the open data container, as well as the object data and application data of N social objects, through the application container and the basic library container, to obtain the ranking list of the first object.
[0143] This application embodiment does not limit the specific method by which the terminal device processes the object data and application data of the first object in the open data container, as well as the object data and application data of N social objects, through the application container and the basic library container, to obtain the ranking list of the first object.
[0144] In some embodiments, the terminal device processes the object data and application data of a first object, as well as the object data and application data of N social objects, within an open data container. For example, based on the application score value in the application data of the first object and the application score value in the application data of each of the N social objects, the device sorts the object names and avatar images in the object data of the first object and the object names and avatar images in the object data of the N social objects to obtain a leaderboard for the first object. Then, the terminal device renders the leaderboard for the first object generated by the open data container onto a display screen within an application container using a base library container.
[0145] In some embodiments, S105-A4 above includes the following steps S105-A41 to S105-A45:
[0146] S105-A41, The terminal device, based on social operation, calls the shared canvas acquisition interface and shared canvas rendering context acquisition interface in the basic library container through the open data container to obtain the shared canvas and shared canvas rendering context.
[0147] S105-A42: The terminal device generates an off-screen leaderboard based on a shared canvas, the shared canvas's rendering context, and the object data and application data of the first object, as well as the object data and application data of N social objects, through an open data container.
[0148] S105-A43: The terminal device obtains the off-screen leaderboard by calling the Open Data Container Object in the Basic Library Container through the application container;
[0149] S105-A44. The terminal device creates the upper screen canvas and obtains the upper screen canvas rendering context by calling the upper screen canvas creation interface and upper screen canvas rendering context acquisition interface in the basic library container through the application container.
[0150] S105-A45: Based on the rendering context of the upper screen canvas, the terminal device renders the off-screen leaderboard to the upper screen canvas through the application container to obtain the leaderboard of the first object.
[0151] In this implementation, such as Figure 7AAs shown, to draw the leaderboard, in addition to obtaining the social relationship chain hosted data, a rendering interface is also required. The target application provides a sharedCanvas object in both the application container and the open data container. The sharedCanvas is an off-screen canvas (also known as an offline canvas, i.e., a canvas that cannot be displayed). The application container obtains it through the open data container object acquisition interface (wx.getOpenDataContext), and the open data container obtains it through the sharedCanvas acquisition interface (wx.getSharedCanvas). The terminal device needs to first draw the leaderboard onto the sharedCanvas within the open data container, and then draw the sharedCanvas onto the main canvas (also called the on-screen canvas) in the application container.
[0152] Specifically, based on the social operation input by the first object, the terminal device calls the shared canvas acquisition interface (wx.getSharedCanvas) and the shared canvas rendering context acquisition interface (sharedCanvas.getContext) in the basic library container through the open data container to obtain the shared canvas and the shared canvas rendering context.
[0153] It should be noted that, in this application embodiment, there is no restriction on the order in which the terminal device obtains the shared canvas and the rendering context of the shared canvas, and obtains the object data and application data of the first object and the object data and application data of the N social objects.
[0154] In one example, the terminal device first sends a first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the base library container through the open data container, based on the social operation input by the first object on the application interface. Then, it receives object data of N social objects and application data sent by the instant messaging server based on the first request and stores them in the open data container. Next, based on this social operation, the terminal device calls the shared canvas acquisition interface and shared canvas rendering context acquisition interface in the base library container through the open data container to obtain the shared canvas and its rendering context.
[0155] In one example, the terminal device first obtains the shared canvas and its rendering context by calling the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the base library container through the open data container, based on the social operation input by the first object on the application interface. Next, based on this social operation, the terminal device sends a first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the base library container through the open data container, and then receives the object data of N social objects and application data sent by the instant messaging server based on the first request, storing them in the open data container.
[0156] In one example, based on a social interaction input by a first object on the application interface, the terminal device uses the open data container to call the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the base library container to obtain the shared canvas and its rendering context. Simultaneously, based on this social interaction, the terminal device uses the open data container to call the social relationship chain managed data acquisition interface in the base library container to send a first request to the instant messaging server, thereby receiving object data of N social objects and application data sent by the instant messaging server based on the first request, which are stored in the open data container.
[0157] Next, the terminal device generates an off-screen leaderboard in an open data container based on the shared canvas, the shared canvas's rendering context, and the object data and application data of the first object, as well as the object data and application data of N social objects.
[0158] In some embodiments, since both the application container and the open data container can access the shared canvas object, to prevent the application container from communicating with the open data container through the shared canvas object, the terminal device, based on social operations, calls the shared canvas acquisition interface and shared canvas rendering context acquisition interface in the base library container through the open data container to obtain the pseudo-shared canvas and its pseudo-rendering context. Then, based on the pseudo-shared canvas and its pseudo-rendering context, as well as the object data and application data of the first object and the object data and application data of N social objects, the terminal device generates an off-screen leaderboard through the open data container. That is, in this embodiment, although the underlying native canvas corresponding to the shared canvas of the application container and the open data container is the same canvas object, after being encapsulated by the base library container, the shared canvas exposed to developers in different domains are different objects. For example, the shared canvas in the application container is the original shared canvas instance, while the shared canvas in the open data container is a wrapped pseudo-shared canvas instance, and the application container cannot access the shared canvas object of the open data container, and vice versa.
[0159] The terminal device, based on a shared canvas, its rendering context, and the object and application data of the first object, as well as the object and application data of N social objects, generates an off-screen leaderboard through an open data container. The terminal device then retrieves the off-screen leaderboard generated by the open data container by calling the open data container object retrieval interface (wx.getOpenDataContext) and the openDataContext.canvas interface in the base library container through the application container. Next, as... Figure 7AAs shown, the terminal device creates the on-screen canvas by calling the on-screen canvas creation interface (wx.createCanvas) in the base library container through the application container, and obtains the on-screen canvas rendering context by calling the on-screen canvas rendering context retrieval interface (canvas.getContext) in the base library container. Finally, based on the on-screen canvas rendering context, the terminal device renders the off-screen leaderboard onto the on-screen canvas through the application container, obtaining the leaderboard of the first object. For example, based on the on-screen canvas rendering context, the terminal device uses the context.drawImage(sharedCanvas) interface within the application container to render the shared canvas onto the on-screen canvas, ultimately rendering the leaderboard of the first object onto the application interface.
[0160] As described above, in this embodiment, the terminal device generates an off-screen leaderboard within the open data container based on a shared canvas, the shared canvas's rendering context, and the object and application data of the first object, as well as the object and application data of N social objects. Next, the terminal device calls the open data container object acquisition interface in the base library container within the application container to obtain the off-screen leaderboard. Then, based on the on-screen canvas and its rendering context, it displays the off-screen leaderboard on the on-screen canvas, thereby displaying the leaderboard of the first object in the terminal device's application interface. Therefore, in this embodiment, the application container cannot access the off-screen leaderboard in the open data container, preventing the application server from obtaining the social relationship chain hosting data of the first object through the off-screen leaderboard.
[0161] In some embodiments, to further enhance the security of social relationship chain hosted data, the following rules are also set in this application embodiment:
[0162] Rule 1: The width and height of the shared canvas can only be set within the application container, not within the open data container. Furthermore, the shared canvas can only be drawn onto the on-screen canvas and not onto other off-screen canvases. The on-screen canvas cannot be drawn onto other canvases in any way, including through `drawImage`, `createPattern`, `texImage2D`, `texSubImage2D`, etc. This prevents the off-screen leaderboard on the shared canvas from being drawn onto other canvases, thus avoiding the leakage of social relationship data.
[0163] Rule 2, regarding shared canvas properties: Within the open data container, whitelisted properties (e.g., width, height) of the shared canvas are read-only, while non-whitelisted properties are neither read nor writeable. Within the application container, properties on the shared canvas are read-and-write, but cannot be redefined (reDefineProperty) to prevent data from being read from the open data container by redefining shared canvas properties within the application container.
[0164] Rule 3 states that the `sharedCanvas.getContext` and `sharedCanvas.toDataURL` methods are only permitted within the Open Data Container and cannot be called within the application container. Furthermore, within the Open Data Container, `sharedCanvas.getContext()` does not return the original `CanvasRenderingContext2D` instance, but rather a wrapped pseudo-instance. All method calls made by developers to this pseudo-instance will be routed through the base library to the real instance. The purpose is to prevent malicious developers from accessing the original instance and prototype chain within the Open Data Container, thus preventing communication with the application container via the original instance and prototype chain.
[0165] Rule 4 prohibits applications from redefining instances of the Canvas, CanvasRenderingContext2D (used to obtain the 2D context of the canvas), and WebGLRenderingContext (used to obtain the 3D context of the canvas), as well as their prototype chains. The purpose is to prevent bidirectional communication through defining prototype chain methods.
[0166] Rule 5 prohibits application containers from calling interfaces that directly read the content of the displayed canvas, such as `CanvasRenderingContext2D.getImageData` (which returns an `ImageData` object containing partial or complete pixel information of the canvas) and `WebGLRenderingContext.readPixels` (which provides a drawing context based on OpenGL ES (OpenGL for Embedded Systems) for drawing within HTML elements). Application containers are allowed to use `Canvas.toTempFilePath` (which saves a specified area of the current canvas as an image) to generate a local temporary image, but this image is only permitted for use with interfaces such as `wx.saveImageToPhotosAlbum` (which saves the image to the local photo album) and `wx.shareAppMessage` (which actively launches a forwarding function, leading to the contact selection interface). This is also to prevent malicious developers from reading sensitive information containing social relationship chain managed data through the canvas outside of the open data container.
[0167] Rule 6 stipulates that the Image.src file within an open data container is not allowed to use remote Uniform Resource Locators (URLs) other than those specified by the CDN (Content Delivery Network) for instant messaging applications, in order to prevent data from being transmitted outside the open data container via the network.
[0168] The above describes how, when the first user inputs a leaderboard action in the application interface, the terminal device processes the social relationship chain managed data in the open data container through the application container and the basic library container to obtain the following result: Figure 7B The specific process of the ranking of the first object shown will be introduced.
[0169] In some embodiments, the first object can also interact with other social objects on the leaderboard generated above.
[0170] In some embodiments, the social operation input by the first object on the application interface is an interactive operation, such as the first object triggering an interactive option. In this case, S105 includes the following steps S105-B and S105-C:
[0171] S105-B: The terminal device processes the object data and application data of N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object.
[0172] S105-C, The terminal device performs an interactive operation based on the leaderboard of the first object to obtain the interaction result between the first object and at least one of the N social objects.
[0173] In the embodiments of this application, such as Figure 8 As shown, taking the target application as an example, the game interface of the target game includes game interaction options. When the first object needs to interact, the interaction option is triggered. The terminal device, responding to the first object's trigger operation on the interaction option, calls the social relationship chain managed data acquisition interface in the base library container through the open data container, sending a first request to the instant messaging server to request the first object's social relationship chain managed data. After receiving the first request, the instant messaging server obtains the first object's social relationship chain managed data based on the first request and sends it to the terminal device. The terminal device stores the first object's social relationship chain managed data in the open data container, and then processes the object data and application data (e.g., game data) of N social objects in the open data container through the application container and the base library container to obtain the following... Figure 7B The leaderboard for the first object shown.
[0174] It should be noted that the specific implementation process of generating the leaderboard of the first object in S105-B above can be referred to the relevant description in S105-A above, and will not be repeated here.
[0175] As can be seen from the above, social relationship chain data only flows within the open data container and the instant messaging server, and cannot reach the application server. This means that these interactions cannot be associated with virtual assets with actual incentive value, which will affect the interaction and reduce the user stickiness of the target application.
[0176] To address the aforementioned technical issues, embodiments of this application specify that a portion of the interactive data, under secure conditions, flows to the application server, allowing application developers to associate the interactive data with virtual assets (such as coins, stamina, and items). Based on this, embodiments of this application design interactive escrow data, providing social relationship chain interaction capabilities. This interactive escrow data primarily includes the virtual asset data of the object.
[0177] In some embodiments, the following interfaces are designed in this application:
[0178] The self-hosted interactive data retrieval interface (wx.getUserInteractiveStorage) is used to retrieve the hosted interactive data of the first object within the application container. This allows the application server to obtain hosted interactive data from the application container, such as the virtual asset data of an object.
[0179] The interaction interface (wx.modifyFriendInteractiveStorage) is used to update the managed interaction data of social objects within the open data container. This allows interaction with other social objects to be achieved within the open data container.
[0180] The detection interface (wx.onInteractiveStorageModified) is used to detect events within the application container that successfully update the managed interaction data of a social object. For example, the event callback parameter includes the "key" (item type). This allows the target application to immediately reward the object after it completes an interactive task, or deduct any remaining item count after the object has gifted an item.
[0181] The backend interface (storage.setUserInteractiveData) is used by the application server to communicate with the instant messaging server, for example, to overwrite the managed interaction data of a specified object. It is typically used to initialize managed interaction data for objects, and to deduct the remaining item count from an object after it has gifted items.
[0182] In this way, the terminal device can perform interactive operations based on the leaderboard of the first object through the above interface to obtain the interaction results between the first object and at least one of the N social objects.
[0183] This application does not limit the specific type of interaction. Examples include gifting virtual assets and sending message cards to other social media users.
[0184] In some embodiments, if the above-mentioned interactive operation is to gift the virtual assets of the first object to the second object among the N social objects, then S105-C includes the following steps:
[0185] S105-C1, The terminal device receives a donation operation from the first object to the second object in the leaderboard, in which M virtual assets are donated.
[0186] S105-C2, The terminal device sends a third request to the instant messaging server by calling the interactive interface in the basic library container through the open data container. The third request is used to request that M virtual assets of the first object be given to the second object, where M is a positive integer.
[0187] S105-C3, the instant messaging server modifies the virtual asset information of the second object based on a third request;
[0188] S105-C4, The instant messaging server sends a first response message to the terminal device, which is used to indicate whether the M virtual assets of the first object have been successfully gifted to the second object.
[0189] S105-C5: The terminal device obtains the first response information sent by the instant messaging server through the detection interface in the application container detection base library container. The first response information is used to indicate whether the first object's M virtual assets have been successfully gifted to the second object.
[0190] In this embodiment of the application, the first object enters a gifting operation to give M virtual assets to the second object in the leaderboard interface.
[0191] This application does not limit the specific form of the gifting operation in the embodiments.
[0192] In some embodiments, such as Figure 9A As shown in the leaderboard of this embodiment, each object displays an asset gifting option. The first object can trigger the asset gifting option corresponding to the second object, gifting M virtual assets to the second object. These M virtual assets can be a default value or input by the first object. For example, after the first object triggers the asset gifting option corresponding to the second object, an input interface for the type and quantity of the gifted assets is displayed, where the first object can input the type and quantity of the M virtual assets to be gifted to the second object.
[0193] In some embodiments, such as Figure 9B As shown, when the first object triggers the second object in the leaderboard, the terminal device displays interactive options, including the option to gift virtual assets. After the first object triggers this option, it gifts M virtual assets to the second object. These M virtual assets can be a default value or input by the first object. For example, after the first object triggers the gift option, an input interface for the type and quantity of the gifted assets is displayed, allowing the first object to input the type and quantity of the M virtual assets to gift to the second object.
[0194] In some embodiments, to further enhance the security of virtual asset gifting, after the first object inputs the gifting operation of the second object to gift the M virtual assets, the following is displayed: Figure 9C The confirmation pop-up window shown includes a query asking whether the user is sure they want to send M virtual assets to the second object. After confirming that everything is correct, the first object can trigger the confirmation option in the pop-up window. In response to the triggering of the confirmation option, the terminal device sends a third request to the instant messaging server by calling the interactive interface (wx.modifyFriendInteractiveStorage) in the base library container through the open data container.
[0195] The third request is used to request that M virtual assets of the first object be gifted to the second object.
[0196] In some embodiments, the parameters included in the third request include at least: the type of asset to be gifted, the quantity of assets to be gifted, the operation type, and the identification information of the second object.
[0197] For example, it can be used as a key to represent asset types, represented by integers.
[0198] For example, the field `opNum` represents the number of assets gifted. Optionally, 1 is allowed.
[0199] For example, the operation field indicates the operation type. Optionally, 'add' is allowed.
[0200] For example, the `toUser` field represents the identification information of the second object. Optionally, the identification information of the second object (e.g., the ID of the second object) can be obtained through the `wx.getFriendCloudStorage()` interface. In this embodiment, the identification information of the second object has already been obtained from the open data container when drawing the leaderboard, so it can be used directly here.
[0201] After receiving a third request from a terminal device, the instant messaging server modifies the virtual asset information of the second object based on this request. For example, the instant messaging server parses the third request to obtain the identification information of the second object, as well as the type and quantity of virtual assets gifted to the second object by the first object. Since the instant messaging server stores interactive hosting data for different objects, which includes virtual asset information, the server retrieves the second object's virtual asset information based on its identification information. Then, based on the quantity and type of virtual assets gifted by the first object, the server modifies the second object's virtual asset information. For example, the instant messaging server increases the quantity of the second object's virtual assets by M.
[0202] In some embodiments, to ensure the reliability of the interaction, before modifying the virtual asset information of the second object based on the third request, the instant messaging server obtains at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object based on the third request; based on at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object, as well as the asset information of M virtual assets, the third request is verified using the verification rules corresponding to the target application.
[0203] In this implementation, writing data via a pure front-end interface could be exploited by malicious actors, leading to issues like fraudulent transactions. Therefore, a backend verification method is needed for the application, and it must be secure and controllable for the platform. Based on this, this embodiment provides the target application with a closed JS runtime environment hosted on an instant messaging server. The application developer uploads a piece of JS code (checkInteractiveData.js). When the instant messaging server receives an interactive managed data write request initiated by the target application's front-end, it executes this JS code, checks the result, and determines whether to ultimately execute the interactive managed data write operation. Therefore, this piece of JS code can be understood as the verification rule corresponding to the target application. In this way, the terminal device can execute this JS code based on at least one of the following: object information of a first object, object information of a second object, virtual asset data of the first object, virtual asset data of the second object, and asset information of M virtual assets. The execution result is then used as the verification result of the third request. For example, if the number of virtual assets of the first object is greater than M, it indicates that the verification result of the third request is passed.
[0204] When the verification result of the third request is passed, the instant messaging server, after verifying the third request, modifies the virtual asset information of the second object based on the asset information of the M virtual assets of the first object.
[0205] In this embodiment of the application, after the instant messaging server modifies the virtual asset information of the second object, it sends a first response message to the terminal device indicating whether the modification was successful or not.
[0206] The terminal device obtains the first response information sent by the instant messaging server through the detection interface (wx.onInteractiveStorageModified) in the application container detection base library container. This first response information is used to indicate whether the first object's M virtual assets have been successfully gifted to the second object.
[0207] In some embodiments, if the first response information indicates that M virtual assets of the first object have been successfully gifted to the second object, the terminal device updates the virtual assets of the first object through the application container.
[0208] This application embodiment does not limit the specific method by which the terminal device updates the virtual assets of the first object through the application container.
[0209] In one possible implementation, the terminal device sends an asset update request to the instant messaging server via an application container, so that the instant messaging server updates the virtual asset information of the first object. For example, the number of virtual assets of the first object is reduced by M.
[0210] In one possible implementation, the application container sends a data update request to the application server, requesting an update to the asset data of the first object. The application server then communicates with the instant messaging server via a backend interface (storage.setUserInteractiveData). For example, the application server sends an asset update request to the instant messaging server via the backend interface (storage.setUserInteractiveData) to update the virtual asset information of the first object. Thus, the instant messaging server can update the virtual asset information of the first object in the instant messaging server based on the asset update request sent by the application server, for example, by decrementing the quantity of the first object's virtual assets by M.
[0211] In some embodiments, after updating the number of virtual assets of the first object, the instant messaging server can send the updated virtual asset information of the first object to the terminal device.
[0212] In some embodiments, the terminal device may also display a message indicating that the asset donation was successful.
[0213] In some embodiments, after successfully modifying the virtual asset information of the second object, the instant messaging server writes gift record information into the second object's hosted application data. This gift record information records the gift of M virtual assets from the first object to the second object. In one example, the aforementioned hosted application data can be application data within social relationship chain hosted data. After successfully modifying the virtual asset information of the second object, the instant messaging server writes gift record information into the second object's application data.
[0214] In some embodiments, after successfully writing the gift record information into the managed application data of the second object, the instant messaging server sends a response message to the terminal device indicating whether the gift record information has been successfully written into the managed application data of the second object.
[0215] The above describes the process of the first object gifting virtual assets to the second object.
[0216] In some embodiments, when the second object enters the target application, the terminal device sends a virtual asset query request to the instant messaging server through the application container by calling the interactive data query interface (wx.getUserInteractiveStorage) in the base library container. Upon receiving the virtual asset query request, the instant messaging server obtains the current virtual asset information of the second object and sends it to the terminal device. The terminal device displays the current virtual asset information of the second object on the application interface. In some embodiments, the instant messaging server also sends gifting record information to the terminal device. The terminal device may also display a notification message on the application interface indicating that the first object has gifted M virtual assets.
[0217] In some embodiments, under the relevant operation of the first object, the terminal device sends a virtual asset query request to the instant messaging server through the application container calling the interactive data query interface in the base library container to query the current virtual asset information of the first object. After receiving the virtual asset query request, the instant messaging server obtains the current virtual asset information of the first object and sends the current virtual asset information of the first object to the terminal device. The terminal device displays the current virtual asset information of the first object on the application interface.
[0218] In this application embodiment, to prevent developers from obtaining social relationship chain managed data within the open data container, writing it into the interaction managed data of social objects, then reading the interaction managed data from the application container, and then transmitting it to the application server, thus causing the leakage of social relationship chain managed data, this application embodiment includes the following security strategies:
[0219] In one example, the interactive interface (wx.modifyFriendInteractiveStorage) can only be called within the open data container, and each call will generate a pop-up dialog box, requiring the first object to click the confirmation button before the data is actually written. The purpose is to increase the difficulty for malicious developers to write forged data.
[0220] In one example, the format of the interactive hosted data is strictly limited.
[0221] For example, the virtual asset type key in each object's interaction escrow data has a capacity of 50 keys, and the quantity value for each type of virtual asset is stored in only one 32-bit integer. This is sufficient for storing interaction data, but may be insufficient for storing relationship chain data. However, the possibility of malicious developers chaining together the interaction data of different users to encode and calculate relationship chains cannot be ruled out; therefore, restrictions on keys and values are also necessary.
[0222] For example, in interactive escrow data, the key value for virtual asset types is only allowed to be an integer between 1 and 50. Developers are not allowed to define custom keys. The purpose is to reduce data entropy; the lower the entropy, the less meaning it can represent, and the less likely it is to be encoded as relational information.
[0223] For example, in interactive escrow data, the quantity (value) of each type of virtual asset is a 32-bit integer, and each write to the value can only be the previous value + 1 (incremental write). The goal is also to minimize information entropy. Imagine if the value allowed both +1 and -1; wouldn't that mean providing possibilities similar to 1 and 0 in binary, and the combination of 1 and 0 could represent infinite data through encoding?
[0224] In one example, regarding the backend interface (storage.setUserInteractiveData) mentioned earlier, since it is provided in the backend environment and cannot directly obtain the friend's openid like an open data container, there is no risk of relationship chain leakage. Therefore, the value parameter of this backend interface is not forced to be incremented, but is allowed to be overwritten as any 32-bit integer, but the key is still limited to an integer between 1 and 50.
[0225] It should be noted that the specific values such as 50 and 32 are just examples and can be modified according to actual needs.
[0226] The above describes the data processing procedure for a social operation where virtual assets from one recipient are gifted to another.
[0227] In some embodiments, this application also provides an interface for sending message cards to social objects (wx.shareMessageToFriend). This interface is used within an open data container, and it is not allowed to set custom business data (queries) for sharing within the open data container. If a query needs to be set, it must be set within the application container using wx.setMessageToFriendQuery. Additionally, the wx.onShareMessageToFriend interface can be used within the application container to detect successful message sending events. This combination of interfaces can implement functions such as inviting specified third-party objects to play games or interact.
[0228] For example, such as Figure 10A In the application interface shown, after the first object triggers and tells him the options, it displays... Figure 10BThe prompt message shown triggers the option to send a message to a chat. Upon this, the terminal device, through the open data container, calls the social object message card interface (wx.shareMessageToFriend) to send an interaction request to the instant messaging server. This interaction request sends chat information to a third party, including at least one application-related information such as the first party's current ranking, application score, or virtual asset information. Thus, based on this interaction request, the instant messaging server sends the aforementioned chat information to the third party. Figure 10C As shown. In some embodiments, the terminal device uses the wx.onShareMessageToFriend interface in the application container to detect a successful chat message transmission response. After detecting that the chat message has been successfully sent, it displays the response in the application interface of the first object. Figure 10D The message shown indicates that the message was successfully sent.
[0229] In some embodiments, this application also provides a `wx.getPotentialFriendList` interface to retrieve a list of unregistered friends who may be interested in the target application. Optionally, each call can retrieve a maximum of 5 friends, and this is only available within an open data container. This interface, in conjunction with the `wx.shareMessageToFriend` interface, can implement a new friend invitation function.
[0230] In some embodiments, this application also provides a wx.getGroupInfo interface for obtaining the name of an instant messaging group. This interface can only be called when the target application opens the group message card and is only available within an open data container. Because the group name is also sensitive information, it is only permitted to be used within an open data container.
[0231] In some embodiments, this application also provides a `wx.getGroupCloudStorage` interface for retrieving application data of group members. This interface can only be called when the target application is opened via a group message card and is only available within an open data container. Similar to `wx.getFriendCloudStorage`, the difference is that one is for "friends" and the other for "group members." It can be used to implement functions such as group leaderboards or group member interaction.
[0232] The data processing method proposed in this application sets up an application container and an open data container for the target application. The application container is used to process the front-end data of the target application, such as for running application code, while the open data container is used to process social relationship chain managed data, such as for running relationship chain usage code. Simultaneously, the front-end data of the instant messaging application is placed in a base library container for execution. The application container and the open data container are communicatively connected to the base library container, and the application container cannot read social relationship chain managed data from the open data container. During data processing, the terminal device receives a social operation performed by a first object on the application interface of the target application. Based on this social operation, the terminal device calls the social relationship chain managed data acquisition interface in the base library container through the open data container, sending a first request to the instant messaging server. This first request requests the social relationship chain managed data of the first object, which includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application. Based on the first request, the instant messaging server obtains the social relationship chain managed data of the first object and sends it to the open data container in the terminal device. Next, the terminal device processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application. As can be seen from the above, the embodiments of this application divide the development code of the target application into application code and relationship chain usage code, set up an application container for the application code, and set up an open data container for the relationship chain code. The open data container is set up using sandbox technology, which allows the target application to use the social relationship chain hosted data of the first object to complete social interaction functions, such as completing leaderboard drawing and friend interaction capabilities, increasing the fun, spreadability and user stickiness of the application. At the same time, the social relationship chain hosted data in the open data container is not leaked to third parties, thereby protecting the privacy data of the object.
[0233] The data processing procedure of the embodiments of this application has been described above. The following section will combine... Figure 11 This section introduces the process of generating a game leaderboard using the target application as the target game.
[0234] Figure 11 This is a schematic flowchart of a data processing method provided in an embodiment of this application. Figure 11 The embodiments shown can be understood as described above. Figure 2 One specific implementation of the illustrated embodiment.
[0235] like Figure 11 As shown, the process of generating a game leaderboard in this embodiment includes the following steps:
[0236] S201, The terminal device receives the game leaderboard operation from the first object on the application interface of the target application.
[0237] In this embodiment of the application, taking the target application as the target game as an example, the corresponding application data can be understood as game data, the application container can be understood as the game container, the application program can be understood as the game program, and the application server is the game server.
[0238] For example, the game interface of the target game includes a game leaderboard option. The first object performs a trigger operation on the game leaderboard option. In this embodiment of the application, the trigger operation of the first object on the game leaderboard option is recorded as a game leaderboard operation.
[0239] S202. The terminal device, based on social operation, sends the first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container.
[0240] The first request is used to request the social relationship chain managed data of the first object.
[0241] The specific implementation process of S202 can be referred to the relevant description of S102 above, and will not be repeated here.
[0242] S203. The instant messaging server obtains the social relationship chain managed data of the first object based on the first request.
[0243] For example, the instant messaging server in this embodiment of the application hosts object information and game data for each player in the target game. Simultaneously, the instant messaging server includes object data for a first object and the first object's social relationship chain, which includes identification information for each object with a social relationship to the first object. Based on this, the instant messaging server can obtain the identification information of the first object by parsing the first request, and then, based on the first object's identification information, obtain the first object's social relationship chain, i.e., obtain the identification information of each object with a social relationship to the first object. Next, based on the identification information of each object in the first object's social relationship chain, the server queries the object information and game data of each object in the first object's social relationship chain from the object information and game data of each player in the target game hosted by the instant messaging server, to obtain the first object's social relationship chain hosting data.
[0244] S204. The instant messaging server sends the social relationship chain hosted data to the terminal device so that the terminal device stores the social relationship chain hosted data in an open data container.
[0245] For example, the instant messaging server communicates with the instant messaging client on the terminal device. The instant messaging server sends the social relationship chain managed data of the first object to the basic library container on the terminal device. In the basic library container, the social relationship chain managed data of the first object is sent to the open data container for storage by calling the aforementioned social relationship chain managed data interface.
[0246] S205. The terminal device operates based on the game leaderboard, and obtains the shared canvas and the shared canvas rendering context by calling the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container through the open data container.
[0247] It should be noted that there is no restriction on the specific execution order of S205 and S202. For example, S205 can be executed after S202, or before S202, or simultaneously with S202.
[0248] S206. The terminal device generates an off-screen leaderboard based on a shared canvas, the shared canvas's rendering context, and the object data and game data of the first object, as well as the object data and game data of N social objects, through an open data container.
[0249] In some embodiments, the terminal device, based on social operations, sends a second request to the instant messaging server via an open data container, calling the self-relationship data acquisition interface in the base library container. This second request requests object data and game data of the first object. The instant messaging server, based on the second request, retrieves the object data and game data of the first object. The instant messaging server then sends the object data and game data of the first object to the terminal device, enabling the terminal device to store these data in the open data container. Thus, based on the shared canvas, the shared canvas's rendering context, and the object data and game data of the first object, as well as the object data and game data of N social objects, the terminal device generates an off-screen leaderboard using the open data container.
[0250] S207. The terminal device obtains the off-screen leaderboard by calling the Open Data Container Object in the Basic Library Container through the game container.
[0251] S208. The terminal device calls the upper screen canvas creation interface and upper screen canvas rendering context acquisition interface in the basic library container through the game container to create the upper screen canvas and obtain the upper screen canvas rendering context.
[0252] It should be noted that there is no restriction on the specific execution order of S207 and S208. For example, S208 can be executed after S207, or before S207, or simultaneously with S207.
[0253] The specific implementation process of S207 and S208 can be referred to the relevant descriptions of S105-A43 and S105-A44 above, and will not be repeated here.
[0254] S209. Based on the rendering context of the upper screen canvas, the terminal device renders the off-screen leaderboard onto the upper screen canvas through the game container to obtain the game leaderboard of the first object.
[0255] The specific implementation process of S209 can be referred to the relevant descriptions of S105-A45 above, and will not be repeated here.
[0256] The game data processing method provided in this application embodiment involves a terminal device, based on a game leaderboard operation input by a first object, retrieving the social relationship chain hosted data of the first object from an instant messaging server via an open data container by calling the social relationship chain hosted data acquisition interface in the basic library container. Based on the game leaderboard operation, the terminal device, through the open data container, calls the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container to obtain the shared canvas and its rendering context. Then, based on the shared canvas, its rendering context, and the object data and game data of the first object, as well as the object data and game data of N social objects, an off-screen leaderboard is generated via the open data container. The terminal device, through the game container, calls the on-screen canvas creation interface and the on-screen canvas rendering context acquisition interface in the basic library container to create an on-screen canvas and obtain its rendering context. Through the game container, it calls the open data container object acquisition interface in the basic library container to obtain the off-screen leaderboard. Then, based on the on-screen canvas's rendering context, the off-screen leaderboard is rendered onto the on-screen canvas via the game container, resulting in the game leaderboard of the first object for display. This approach generates game leaderboards while ensuring that the data from the social relationship chain is not leaked, thereby enhancing the social interactivity and user stickiness of the target game.
[0257] The following is combined Figure 12 Using the target application as the target game, this paper introduces the process of a first party gifting virtual assets to a second party in the game interaction.
[0258] Figure 12 This is a schematic flowchart of a data processing method provided in an embodiment of this application. Figure 12 The embodiments shown can be understood as described above. Figure 2 One specific implementation of the illustrated embodiment.
[0259] like Figure 12 As shown, the interaction process in this application embodiment includes the following steps:
[0260] S301, The first terminal device receives the game interaction operation of the first object on the game interface of the target game.
[0261] In this embodiment of the application, taking the target application as the target game as an example, the application data mentioned above can be understood as game data, the application container can be understood as the game container, the application program can be understood as the game program, the application server is the game server, and the virtual assets can be understood as game assets.
[0262] It should be noted that in this embodiment of the application, the terminal device corresponding to the first object is referred to as the first terminal device, and the terminal device corresponding to the second object is referred to as the second terminal device.
[0263] For example, the game interface of the target game includes game interaction options, and the first object performs a trigger operation on the game interaction option. In this embodiment of the application, the trigger operation of the first object on the game interaction option is recorded as a game interaction operation.
[0264] S302. The first terminal device, based on social operation, sends a first request to the instant messaging server by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container.
[0265] The first request is used to request the social relationship chain managed data of the first object.
[0266] The specific implementation process of S202 can be referred to the relevant description of S102 above, and will not be repeated here.
[0267] S303. The instant messaging server obtains the social relationship chain managed data of the first object based on the first request.
[0268] S304. The instant messaging server sends the social relationship chain hosted data to the first terminal device, so that the first terminal device stores the social relationship chain hosted data in an open data container.
[0269] S305. The first terminal device processes the object data and game data of N social objects in the open data container through the game container and the basic library container to obtain the game leaderboard of the first object.
[0270] The specific implementation process of S305 can be referred to the relevant descriptions of S205 to S209 above, and will not be repeated here.
[0271] S306, The first terminal device receives a gifting operation from the first object to the second object in the game leaderboard, in which M game assets are gifted.
[0272] In some embodiments, such as Figure 9AAs shown in the game leaderboard of this embodiment, each player has an asset gifting option displayed next to them. The first object can trigger the asset gifting option corresponding to the second object, gifting M game assets to the second object. These M game assets can be a default value or input by the first object. For example, after the first object triggers the asset gifting option corresponding to the second object, an input interface for the type and quantity of the gifted assets is displayed, where the first object can input the type and quantity of the M game assets to be gifted to the second object.
[0273] In some embodiments, such as Figure 9B As shown, when the first object triggers the second object in the game leaderboard, the first terminal device displays interactive options, including the option to gift game assets. After the first object triggers this gift game asset option, it gifts M game assets to the second object. These M game assets can be a default value or input by the first object. For example, after the first object triggers the gift game asset option, an input interface for the type and quantity of gifted assets is displayed, allowing the first object to input the type and quantity of the M game assets to gift to the second object.
[0274] S307. The first terminal device sends a third request to the instant messaging server by calling the interactive interface in the basic library container through the open data container.
[0275] The third request is used to request that M game assets from the first object be gifted to the second object.
[0276] S308. The instant messaging server obtains at least one of the following based on a third request: object information of the first object, object information of the second object, game asset data of the first object, and game asset data of the second object.
[0277] In some embodiments, the parameters included in the third request include at least: the type of asset to be gifted, the quantity of assets to be gifted, the operation type, and the identification information of the second object.
[0278] S309. The instant messaging server verifies the third request based on at least one of the object information of the first object, the object information of the second object, the game asset data of the first object, the game asset data of the second object, and the asset information of M game assets, using the verification rules corresponding to the target game.
[0279] For example, an instant messaging server may include a piece of JavaScript code, which can be understood as the verification rules corresponding to the target game. Thus, the first terminal device can execute this JavaScript code based on at least one of the following: object information of a first object, object information of a second object, game asset data of the first object, game asset data of the second object, and asset information of M game assets. The execution result is then used as the verification result for the third request.
[0280] S310. After the instant messaging server verifies the third request, it modifies the game asset information of the second object based on the asset information of the first object's M game assets.
[0281] For example, the instant messaging server increases the number of game assets of the second object by M.
[0282] In some embodiments, after successfully modifying the game assets of the second object, the instant messaging server sends a message indicating successful modification to the first terminal device.
[0283] S311, The instant messaging server writes gift record information into the hosted game data of the second object.
[0284] This gifting record information is used to record how the first recipient gifts M game assets to the second recipient.
[0285] In some embodiments, after the instant messaging server successfully writes the gift record information into the hosted game data of the second object, it sends a message indicating successful writing to the first terminal device.
[0286] S312, The instant messaging server sends the first response information to the first terminal device.
[0287] The first response information is used to indicate whether the M game assets of the first object were successfully gifted to the second object.
[0288] S313, The first terminal device sends a data update request to the game server through the game container.
[0289] This data update request is used to request an update to the asset data of the first object.
[0290] S314. The game server sends an asset update request to the instant messaging server through the backend interface.
[0291] This asset update request is used to request the instant messaging server to update the game asset information in the interactive managed data of the first object.
[0292] In this embodiment, the game server can communicate with the instant messaging server through a backend interface. In this way, the game server sends an asset update request to the instant messaging server through the backend interface, and the instant messaging server updates the game asset information in the interactive hosting data of the first object.
[0293] S315. The instant messaging server updates the game asset information of the first object based on the asset update request.
[0294] For example, the instant messaging server subtracts M from the number of game assets of the first object.
[0295] The above describes the process of the first object sending game assets to the second object.
[0296] The following sections S316 to S318 describe the data processing procedures after the second object logs into the game.
[0297] S316. In response to the login operation of the second object to the target game, the second terminal device sends a game asset query request to the instant messaging server by calling the interactive data query interface in the basic library container through the game container.
[0298] This game asset query request is used to query the current game asset information of the second object.
[0299] In this embodiment, when the second object logs into the target game through a second terminal device, it can automatically send a game asset query request by calling the interactive data query interface in the basic library container through the game container. Alternatively, the second object can send the game asset query request by calling the interactive data query interface in the basic library container through the game container after clicking the relevant option.
[0300] S317. The instant messaging server obtains the current game asset information of the second object based on the game asset query request.
[0301] In this embodiment of the application, the above-mentioned game asset query request may include the identification information of the second object, and then, based on the identification information of the second object, the current game asset information of the second object hosted in the instant messaging server can be obtained.
[0302] S318, The instant messaging server sends the current game asset information of the second object to the terminal device for display.
[0303] In some embodiments, the instant messaging server may also send the aforementioned gift record information to the terminal device.
[0304] The game data processing method provided in this application involves a first terminal device retrieving the social relationship chain hosted data of a first object from an instant messaging server by calling the social relationship chain hosted data acquisition interface in the basic library container through an open data container. The first terminal device processes the object data and game data of N social objects in the open data container through the game container and the basic library container to obtain the game leaderboard for the first object. The first terminal device receives a gifting operation from the first object to a second object in the game leaderboard, in which M game assets are gifted. The first terminal device then sends a third request to the instant messaging server by calling the interaction interface in the basic library container through the open data container. Based on the third request, the instant messaging server modifies the game asset information of the second object. This method achieves game interaction while ensuring that the social relationship chain hosted data is not leaked, thereby enhancing the social interactivity and user stickiness of the target game.
[0305] The above text combined Figures 2 to 12 The embodiments of the data processing method of this application are described in detail below, in conjunction with... Figure 13 The following describes in detail the device embodiments of this application.
[0306] Figure 13 This is a schematic block diagram of a data processing apparatus provided in an embodiment of this application.
[0307] like Figure 13 As shown, the data processing device 10 is applied to a terminal device and includes:
[0308] The receiving unit 11 is used to receive social operations of the first object on the application interface of the target application. The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the basic library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The basic library container is used to process the front-end data of the instant messaging application. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and play the target application together, where N is a positive integer.
[0309] Sending unit 12 is used to send a first request to the instant messaging server based on the social operation by calling the social relationship chain hosted data acquisition interface in the basic library container through the open data container. The first request is used to request the social relationship chain hosted data of the first object.
[0310] The receiving unit 11 is also used to receive the social relationship chain hosted data of the first object sent by the instant messaging server in the open data container;
[0311] The processing unit 13 is used to process the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
[0312] In some embodiments, the social operation includes either a leaderboard operation or an interaction operation. Correspondingly, the data processing result of the target application includes the leaderboard of the first object and the interaction result between the first object and the second object, wherein the second object is one of the N social objects.
[0313] In some embodiments, if the social operation is the leaderboard operation, the processing unit 13 is specifically used to process the object data and application data of the N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object.
[0314] In some embodiments, if the social operation is the interaction operation, the processing unit 13 is specifically used to process the object data and application data of the N social objects in the open data container through the application container and the basic library container to obtain the leaderboard of the first object; and to perform the interaction operation based on the leaderboard of the first object to obtain the interaction result between the first object and at least one of the N social objects.
[0315] In some embodiments, the sending unit 13 is further configured to send a second request to the instant messaging server based on the social operation by calling the self-relationship data acquisition interface in the basic library container through the open data container. The second request is used to request the object data and application data of the first object. The receiving unit 11 is further configured to receive the object data and application data of the first object sent by the instant messaging server and store them in the open data container. The processing unit 13 is specifically configured to process the object data and application data of the first object in the open data container, as well as the object data and application data of the N social objects, through the application container and the basic library container, to obtain a ranking list of the first object.
[0316] In some embodiments, the processing unit 13 is specifically configured to, based on the social operation, call the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the base library container through the open data container to obtain the shared canvas and the rendering context of the shared canvas; based on the shared canvas, the rendering context of the shared canvas, and the object data and application data of the first object, and the object data and application data of the N social objects, generate an off-screen leaderboard through the open data container; call the open data container object acquisition interface in the base library container through the application container to obtain the off-screen leaderboard; call the on-screen canvas creation interface and the on-screen canvas rendering context acquisition interface in the base library container through the application container to create an on-screen canvas and obtain the rendering context of the on-screen canvas; and render the off-screen leaderboard onto the on-screen canvas through the application container based on the rendering context of the on-screen canvas to obtain the leaderboard of the first object.
[0317] In some embodiments, the processing unit 13 is specifically configured to, based on the social operation, call the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container through the open data container to obtain the pseudo-shared canvas and the pseudo-rendering context of the pseudo-shared canvas; based on the pseudo-shared canvas and the rendering context of the pseudo-shared canvas, as well as the object data and application data of the first object and the object data and application data of the N social objects, generate the off-screen leaderboard through the open data container.
[0318] In some embodiments, if the interactive operation is to gift the virtual assets of the first object to the second object among the N social objects, then the receiving unit 11 is further configured to receive the gifting operation of the first object gifting the M virtual assets to the second object in the leaderboard; the sending unit 12 is further configured to call the interactive interface in the basic library container through the open data container to send a third request to the instant messaging server, the third request being used to request that the M virtual assets of the first object be gifted to the second object, where M is a positive integer; the receiving unit 11 is further configured to detect the detection interface in the basic library container through the application container to obtain the first response information sent by the instant messaging server, the first response information being used to indicate whether the M virtual assets of the first object were successfully gifted to the second object.
[0319] In some embodiments, the processing unit 13 is further configured to update the virtual assets of the first object through the application container if the first response information indicates that the M virtual assets of the first object have been successfully gifted to the second object.
[0320] In some embodiments, the specific unit 13 is further configured to control the sending unit 12 to send a data update request to the application server through the application container, so that the application server sends a data update request to the instant messaging server through the background interface, the data update request being used to request an update to the asset data of the first object.
[0321] It should be understood that the device embodiments and method embodiments can correspond to each other, and similar descriptions can be found in the method embodiments. To avoid repetition, further details are omitted here. Specifically, Figure 13 The apparatus shown can execute the above-described embodiments of the data processing method on the terminal device side, and the aforementioned and other operations and / or functions of each module in the apparatus are respectively for implementing the method embodiments corresponding to the electronic device. For the sake of brevity, they will not be described in detail here.
[0322] Figure 14 This is a schematic block diagram of a data processing apparatus provided in an embodiment of this application.
[0323] like Figure 14 As shown, the data processing device 20 is applied to an instant messaging server and includes:
[0324] The receiving unit 21 is configured to receive a first request sent by a terminal device. The first request is sent by the terminal device based on the social operation of a first object on the application interface of a target application, by calling the social relationship chain managed data interface in the base library container through the open data container. The target application includes an application container and the open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects that have social relationships with the first object and play the target application in the instant messaging application, where N is a positive integer.
[0325] Processing unit 22 is used to obtain the social relationship chain hosting data of the first object based on the first request;
[0326] The sending unit 23 is used to send the social relationship chain hosted data to the terminal device, so that the terminal device stores the social relationship chain hosted data in the open data container, and processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
[0327] In some embodiments, the social operation includes either a leaderboard operation or an interactive operation. Correspondingly, the data processing result of the target application includes either the leaderboard of the first object or the first object gifting virtual assets to the second object, where the second object is one of the N social objects.
[0328] In some embodiments, the receiving unit 21 is further configured to receive a second request sent by the terminal device, the second request being sent by the terminal device through the open data container calling the self-relationship data acquisition interface in the basic library container, the second request being used to request object data and application data of the first object; the processing unit 22 is further configured to acquire the object data and application data of the first object based on the second request; the sending unit 23 is further configured to send the object data and application data of the first object to the terminal device, so that the terminal device stores the object data and application data of the first object in the open data container.
[0329] In some embodiments, the receiving unit 21 is further configured to receive a third request sent by the terminal device, the third request being sent by the terminal device through the open data container calling the interactive interface in the basic library container, the third request being used to request that M virtual assets of the first object be gifted to the second object, where M is a positive integer; the processing unit 22 is further configured to modify the virtual asset information of the second object based on the third request; the sending unit 23 is further configured to send a first response information to the terminal device, the first response information being used to indicate whether the M virtual assets of the first object were successfully gifted to the second object.
[0330] In some embodiments, before modifying the virtual asset information of the second object based on the third request, the processing unit 22 obtains at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object based on the third request; based on at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object, and the asset information of the M virtual assets, the processing unit 22 verifies the third request using the verification rules corresponding to the target application; after the third request is verified, the processing unit 22 modifies the virtual asset information of the second object based on the asset information of the M virtual assets of the first object.
[0331] In some embodiments, the receiving unit 21 is further configured to receive a virtual asset query request sent by the terminal device. The virtual asset query request is sent by the terminal device through the application container calling the interactive data query interface in the basic library container. The virtual asset query request is used to query the current virtual asset information of a target object, and the target object includes a first object or a second object. The processing unit 22 is further configured to obtain the current virtual asset information of the target object based on the virtual asset query request. The sending unit 23 is further configured to send the current virtual asset information of the target object to the terminal device.
[0332] It should be understood that the device embodiments and method embodiments can correspond to each other, and similar descriptions can be found in the method embodiments. To avoid repetition, further details are omitted here. Specifically, Figure 14 The apparatus shown can execute the above-described embodiment of the data processing method on the instant messaging server side, and the aforementioned and other operations and / or functions of each module in the apparatus are respectively for implementing the method embodiment corresponding to the electronic device, which will not be described in detail here for the sake of brevity.
[0333] The apparatus of this application embodiment has been described above from the perspective of functional modules in conjunction with the accompanying drawings. It should be understood that this functional module can be implemented in hardware, in software instructions, or in a combination of hardware and software modules. Specifically, the steps of the method embodiments in this application can be completed by integrated logic circuits in the processor's hardware and / or by software instructions. The steps of the method disclosed in this application embodiment can be directly embodied as being executed by a hardware decoding processor, or by a combination of hardware and software modules in the decoding processor. Optionally, the software module can reside in a mature storage medium in the art, such as random access memory, flash memory, read-only memory, programmable read-only memory, electrically erasable programmable memory, registers, etc. This storage medium is located in memory, and the processor reads information from the memory and, in conjunction with its hardware, completes the steps in the above method embodiments.
[0334] Figure 15 This is a schematic block diagram of an electronic device provided in an embodiment of this application. The electronic device can be any one of the terminal device, instant messaging server, application server, and game server described above.
[0335] like Figure 15 As shown, the electronic device 30 may include:
[0336] The system includes a memory 31 and a processor 32. The memory 31 stores a computer program 33 and transfers the program code 33 to the processor 32. In other words, the processor 32 can retrieve and run the computer program 33 from the memory 31 to implement the methods described in the embodiments of this application.
[0337] For example, the processor 32 can be used to execute the steps in the above method according to the instructions in the computer program 33.
[0338] In some embodiments of this application, the processor 32 may include, but is not limited to:
[0339] General-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs), or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc.
[0340] In some embodiments of this application, the memory 31 includes, but is not limited to:
[0341] Volatile memory and / or non-volatile memory. Non-volatile memory can be read-only memory (ROM), programmable read-only memory (PROM), erasable programmable read-only memory (EPROM), electrically erasable programmable read-only memory (EEPROM), or flash memory. Volatile memory can be random access memory (RAM), which is used as an external cache. By way of example, but not limitation, many forms of RAM are available, such as Static RAM (SRAM), Dynamic RAM (DRAM), Synchronous DRAM (SDRAM), Double Data Rate SDRAM (DDR SDRAM), Enhanced Synchronous DRAM (ESDRAM), Synchronous Link DRAM (SLDRAM), and Direct Rambus RAM (DR RAM).
[0342] In some embodiments of this application, the computer program 33 may be divided into one or more modules, which are stored in the memory 31 and executed by the processor 32 to complete the page recording method provided in this application. The one or more modules may be a series of computer program instruction segments capable of performing specific functions, which describe the execution process of the computer program 33 in the electronic device.
[0343] like Figure 15 As shown, the electronic device 30 may further include:
[0344] Transceiver 34, which can be connected to processor 32 or memory 31.
[0345] The processor 32 can control the transceiver 34 to communicate with other devices; specifically, it can send information or data to other devices or receive information or data sent by other devices. The transceiver 34 may include a transmitter and a receiver. The transceiver 34 may further include antennas, and the number of antennas may be one or more.
[0346] It should be understood that the various components in the electronic device 30 are connected through a bus system, which includes a data bus, a power bus, a control bus, and a status signal bus.
[0347] According to one aspect of this application, a computer storage medium is provided that stores a computer program thereon, which, when executed by a computer, enables the computer to perform the methods of the above-described method embodiments. Alternatively, embodiments of this application also provide a computer program product containing instructions that, when executed by a computer, cause the computer to perform the methods of the above-described method embodiments.
[0348] According to another aspect of this application, a computer program product or computer program is provided, comprising computer instructions stored in a computer-readable storage medium. A processor of a computer device reads the computer instructions from the computer-readable storage medium and executes the computer instructions, causing the computer device to perform the method described in the above-described method embodiments.
[0349] In other words, when implemented using software, it can be implemented wholly or partially in the form of a computer program product. This computer program product includes one or more computer instructions. When these computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments of this application are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another. For example, the computer instructions can be transmitted from one website, computer, server, or data center to another via wired (e.g., coaxial cable, fiber optic, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) means. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that integrates one or more available media. The available medium can be a magnetic medium (e.g., floppy disk, hard disk, magnetic tape), an optical medium (e.g., digital video disc (DVD)), or a semiconductor medium (e.g., solid-state disk (SSD)).
[0350] Those skilled in the art will recognize that the modules and algorithm steps of the various examples described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are implemented in hardware or software depends on the specific application and design constraints of the technical solution. Those skilled in the art can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.
[0351] In the several embodiments provided in this application, it should be understood that the disclosed systems, apparatuses, and methods can be implemented in other ways. For example, the apparatus embodiments described above are merely illustrative; for instance, the division of modules is only a logical functional division, and in actual implementation, there may be other division methods. For example, multiple modules or components may be combined or integrated into another system, or some features may be ignored or not executed. Furthermore, the coupling or direct coupling or communication connection shown or discussed may be through some interfaces; the indirect coupling or communication connection between apparatuses or modules may be electrical, mechanical, or other forms.
[0352] The modules described as separate components may or may not be physically separate. The components shown as modules may or may not be physical modules; that is, they may be located in one place or distributed across multiple network units. Some or all of the modules can be selected to achieve the purpose of this embodiment according to actual needs. For example, the functional modules in the various embodiments of this application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.
[0353] The above description is merely a specific embodiment of this application, but the scope of protection of this application is not limited thereto. Any variations or substitutions that can be easily conceived by those skilled in the art within the scope of the technology disclosed in this application should be included within the scope of protection of this application. Therefore, the scope of protection of this application should be determined by the scope of the claims.
Claims
1. A data processing method, characterized in that, The method, applied to a terminal device corresponding to the first object, includes: The system receives social operations from a first object on the application interface of a target application. The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer. Based on the social operation, the first request is sent to the instant messaging server by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain hosted data of the first object sent by the instant messaging server is stored in the open data container, and the social relationship chain hosted data in the open data container is processed through the application container and the basic library container to obtain the data processing result of the target application.
2. The method according to claim 1, characterized in that, The social operation includes either the leaderboard operation or the interaction operation. Correspondingly, the data processing result of the target application includes the leaderboard of the first object and the interaction result of the first object and the second object, where the second object is one of the N social objects.
3. The method according to claim 2, characterized in that, If the social operation is the leaderboard operation, the process of processing the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application includes: The object data and application data of the N social objects in the open data container are processed through the application container and the basic library container to obtain the ranking list of the first object.
4. The method according to claim 2, characterized in that, If the social operation is the interactive operation, the process of processing the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application includes: The object data and application data of the N social objects in the open data container are processed through the application container and the basic library container to obtain the ranking list of the first object; Based on the leaderboard of the first object, an interaction operation is performed to obtain the interaction result between the first object and at least one of the N social objects.
5. The method according to claim 3 or 4, characterized in that, The step of processing the object data and application data of the N social objects in the open data container through the application container and the base library container to obtain the ranking list of the first object includes: Based on the social operation, the second request is sent to the instant messaging server by calling the self-relationship data acquisition interface in the basic library container through the open data container. The second request is used to request the object data and application data of the first object. The object data and application data of the first object sent by the instant messaging server are stored in the open data container; The object data and application data of the first object in the open data container, as well as the object data and application data of the N social objects, are processed through the application container and the basic library container to obtain the ranking list of the first object.
6. The method according to claim 5, characterized in that, The process of processing the object data and application data of the first object in the open data container, and the object data and application data of the N social objects, through at least one of the application container and the base library container, to obtain the ranking list of the first object, includes: Based on the aforementioned social operation, the shared canvas and its rendering context are obtained by calling the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container through the open data container. Based on the shared canvas, the rendering context of the shared canvas, and the object data and application data of the first object, as well as the object data and application data of the N social objects, an off-screen leaderboard is generated through the open data container. The off-screen leaderboard is obtained by calling the Open Data Container Object in the base library container through the application container. The application container calls the upper screen canvas creation interface and upper screen canvas rendering context acquisition interface in the basic library container to create the upper screen canvas and obtain the rendering context of the upper screen canvas. Based on the rendering context of the upper screen canvas, the off-screen leaderboard is rendered onto the upper screen canvas through the application container to obtain the leaderboard of the first object.
7. The method according to claim 6, characterized in that, Based on the social operation, the process of obtaining the shared canvas and its rendering context by calling the shared canvas acquisition interface and the shared canvas rendering context interface in the basic library container through the open data container includes: Based on the aforementioned social operation, the shared canvas acquisition interface and the shared canvas rendering context acquisition interface in the basic library container are called through the open data container to obtain the pseudo-shared canvas and the pseudo-rendering context of the pseudo-shared canvas. The off-screen leaderboard is generated using the open data container based on the shared canvas, the rendering context of the shared canvas, the object data and application data of the first object, and the object data and application data of the N social objects. This includes: Based on the pseudo-shared canvas and its rendering context, as well as the object data and application data of the first object and the object data and application data of the N social objects, the off-screen leaderboard is generated through the open data container.
8. The method according to claim 4, characterized in that, If the interaction operation involves gifting the virtual assets of the first object to the second object among the N social objects, then the step of performing the interaction operation based on the leaderboard of the first object to obtain the interaction result between the first object and the second object includes: Receive the donation operation from the first object to the second object in the leaderboard, in which the M assets are donated; By calling the interactive interface in the basic library container through the open data container, a third request is sent to the instant messaging server. The third request is used to request that M virtual assets of the first object be given to the second object, where M is a positive integer. The application container detects the detection interface in the base library container to obtain the first response information sent by the instant messaging server. The first response information is used to indicate whether the M virtual assets of the first object have been successfully gifted to the second object.
9. The method according to claim 8, characterized in that, The method further includes: If the first response information indicates that the first object's M virtual assets have been successfully gifted to the second object, then the virtual assets of the first object are updated through the application container.
10. The method according to claim 9, characterized in that, The step of updating the virtual assets of the first object through the application container includes: The application container sends a data update request to the application server, so that the application server sends a data update request to the instant messaging server through a background interface. The data update request is used to request an update to the asset data of the first object.
11. A data processing method, characterized in that, Applied to an instant messaging server, the method includes: A receiving terminal device sends a first request. The first request is sent by the terminal device based on the social operation of a first object on the application interface of a target application, by calling the social relationship chain managed data interface in the base library container through the open data container. The target application includes an application container and the open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer. Based on the first request, obtain the social relationship chain managed data of the first object; The social relationship chain hosted data is sent to the terminal device, so that the terminal device stores the social relationship chain hosted data in the open data container, and processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
12. The method according to claim 11, characterized in that, The social operation includes either a leaderboard operation or an interactive operation. Correspondingly, the data processing result of the target application includes either the leaderboard of the first object or the first object gifting virtual assets to the second object, where the second object is one of the N social objects.
13. The method according to claim 12, characterized in that, The method further includes: The terminal device receives a second request, which is sent by the terminal device through the open data container to call the self-relationship data acquisition interface in the basic library container. The second request is used to request the object data and application data of the first object. Based on the second request, obtain the object data and application data of the first object; The object data and application data of the first object are sent to the terminal device so that the terminal device stores the object data and application data of the first object in the open data container.
14. The method according to claim 12, characterized in that, The method further includes: The terminal device receives a third request, which is sent by the terminal device through the open data container by calling the interactive interface in the basic library container. The third request is used to request that M virtual assets of the first object be given to the second object, where M is a positive integer. Based on the third request, modify the virtual asset information of the second object; Send a first response message to the terminal device. The first response message is used to indicate whether the M virtual assets of the first object have been successfully gifted to the second object.
15. The method according to claim 14, characterized in that, Before modifying the virtual asset information of the second object based on the third request, the method further includes: Based on the third request, at least one of the following is obtained: object information of the first object, object information of the second object, virtual asset data of the first object, and virtual asset data of the second object; Based on at least one of the object information of the first object, the object information of the second object, the virtual asset data of the first object, and the virtual asset data of the second object, as well as the asset information of the M virtual assets, the third request is verified using the verification rules corresponding to the target application. The modification of the virtual asset information of the second object based on the third request includes: After the third request is verified, the virtual asset information of the second object is modified based on the asset information of the M virtual assets of the first object.
16. The method according to claim 11, characterized in that, The method further includes: The terminal device receives a virtual asset query request, which is sent by the terminal device through the application container by calling the interactive data query interface in the basic library container. The virtual asset query request is used to query the current virtual asset information of a target object, which includes a first object or a second object. Based on the virtual asset query request, obtain the current virtual asset information of the target object; The current virtual asset information of the target object is sent to the terminal device.
17. A data processing apparatus, characterized in that, Applied to terminal devices, including: A receiving unit is configured to receive social operations performed by a first object on the application interface of a target application. The target application includes an application container and an open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively connected to the base library container of the instant messaging application. The application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer. The sending unit is used to send a first request to the instant messaging server based on the social operation by calling the social relationship chain managed data acquisition interface in the basic library container through the open data container. The first request is used to request the social relationship chain managed data of the first object. The receiving unit is also configured to receive the social relationship chain hosted data of the first object sent by the instant messaging server in the open data container; The processing unit is used to process the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
18. A data processing apparatus, characterized in that, Applications in instant messaging servers include: A receiving unit is configured to receive a first request sent by a terminal device. The first request is sent by the terminal device based on the social operation of a first object on the application interface of a target application, by calling the social relationship chain managed data interface in the base library container through an open data container. The target application includes an application container and the open data container. The application container is used to process the front-end data of the target application, and the open data container is used to process the social relationship chain managed data of the first object. The application container and the open data container are respectively communicatively connected to the base library container of the instant messaging application, and the application container cannot read the social relationship chain managed data from the open data container. The base library container is used to process the front-end data of the instant messaging application. The first request is used to request the social relationship chain managed data of the first object. The social relationship chain managed data includes object information and application data of N social objects in the instant messaging application that have social relationships with the first object and consume the target application together, where N is a positive integer. The processing unit is configured to obtain the social relationship chain managed data of the first object based on the first request; The sending unit is used to send the social relationship chain hosted data to the terminal device, so that the terminal device stores the social relationship chain hosted data in the open data container, and processes the social relationship chain hosted data in the open data container through the application container and the basic library container to obtain the data processing result of the target application.
19. An electronic device, comprising a processor and a memory; The memory is used to store computer programs; The processor is configured to execute the computer program to implement the method as described in any one of claims 1 to 10 or 11 to 16.
20. A computer-readable storage medium, characterized in that, Used to store computer programs; The computer program causes the computer to perform the method as described in any one of claims 1 to 10 or 11 to 16.