A data sharing method and system-level electronic device

By introducing a unified data definition standard and management framework across devices and applications, the cumbersome problem of data sharing under different paths is solved, and the convenience and format uniformity of data transmission are achieved.

CN119003194BActive Publication Date: 2025-11-07HUAWEI TECH CO LTD

Patent Information

Application Number
CN202310555908.8
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2023-05-16
Publication Date
2025-11-07
Estimated Expiration
2043-05-16

AI Technical Summary

Technical Problem

The data sharing process between different devices and applications is cumbersome, requiring the definition and parsing of data according to different sharing paths, lacking uniformity and resulting in inconvenient transmission.

Method used

By adopting a unified data definition standard, data is transmitted between different devices and applications through a data management framework, ensuring the consistency and uniformity of data definitions.

Benefits of technology

It simplifies the data transmission process, improves the convenience of data transmission between devices and applications, and reduces operational complexity.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119003194B_ABST
    Figure CN119003194B_ABST
Patent Text Reader

Abstract

The application provides a data sharing method and a system-level electronic device. Whether the data sharing is between two applications on the same device or between two applications on different devices, a sender application can obtain a specified data definition standard from a unified data management framework and share data to generate redefined sharing data based on the specified data definition standard. A receiver application can also obtain the same specified data definition standard from the unified data management framework and analyze the redefined sharing data to obtain sharing data. The data definition standard is unified for different applications and different sharing paths, and the definition of the sharing data is unified, and the data processing process is simplified.
Need to check novelty before this filing date? Find Prior Art

Description

TECHNICAL FIELD

[0001] The present application relates to the technical field of data processing, and particularly relates to a data sharing method and a system-level electronic device. BACKGROUND

[0002] With the upgrading of consumption, the number of smart terminal devices owned by users is increasing. In some scenarios, users can share data between different terminal devices, for example, terminal devices can share data through "dragging", "clipboard" and other sharing paths. In other scenarios, users can also share data between different applications on the same terminal device, and different applications on the same terminal device can also share data through "dragging", "clipboard" and other sharing paths.

[0003] The different sharing paths of different applications and data have different definitions of standards for sharing data. For different sharing paths, the sender needs to define the sharing data through different sharing paths, and the receiver also needs to parse the data sent by the sender based on multiple different standard definitions, resulting in a relatively cumbersome data transmission process. How to improve the convenience of data transmission between devices and applications needs further research. SUMMARY

[0004] The present application provides a data sharing method and a system-level electronic device, which simplifies the processing flow of data transmission between two applications through a unified data definition standard.

[0005] In a first aspect, the present application provides a data sharing system, the system comprising a first electronic device and a second electronic device, the first electronic device and the second electronic device establishing a communication connection, the first electronic device comprising a first application, and the second electronic device comprising a second application, wherein the first application is configured to acquire first data; the first application is further configured to generate first definition data corresponding to the first data based on a specified data definition standard, the first definition data comprising attributes of the first data and the first data, or the first definition data comprising attributes of the first data and a storage path of the first data; and the first application is further configured to send the first definition data to the second application through a first sharing path and the communication connection; the second application is configured to acquire the first definition data through the first sharing path; the second application is further configured to parse the first data or the storage path of the first data from the first definition data based on the specified data definition standard; the first application is further configured to acquire second data; the first application is further configured to generate second definition data corresponding to the second data based on the specified data definition standard, the second definition data comprising attributes of the second data and the second data, or the second definition data comprising attributes of the second data and a storage path of the second data; and the first application is further configured to send the second definition data to the second application through a second sharing path and the communication connection; the second application is further configured to acquire the second definition data through the second sharing path; and the second application is further configured to parse the second data or the storage path of the second data from the second definition data based on the specified data definition standard; wherein the second sharing path is different from the first sharing path.

[0006] The first sharing path or the second sharing path comprises any one of the following: a drag path, a clipboard path, a cross-device manual path, and a cross-device automatic path.

[0007] Optionally, the first application and the second application can be the same, or the first application and the second application can be different, and the present application does not limit the same.

[0008] Illustratively, the first data can be an image, and when the image is sent to an instant messaging application through the first sharing path and the second sharing path, the type definition of the image through the two paths is “image”.

[0009] Through the data sharing between the two applications on different devices provided by the system, different applications need to define the shared data according to the standard before sharing the data. After receiving the shared data, different applications also need to parse the shared data based on the standard. That is, the data definition standard is uniform for different applications and different sharing paths, and the format of the shared data is unified.

[0010] With reference to the first aspect, in a possible implementation manner, the first electronic device further includes a first data management framework, and the second electronic device further includes a second data management framework; the first application is specifically configured to send the first definition data to the first data management framework through the first sharing path; the first data management framework is configured to send the first definition data to the second data management framework through the communication connection; and the second data management framework is further configured to send the first definition data to the second application through the first sharing path.

[0011] The application provides a data management framework (the first data management framework and the second data management framework) for statistical management of data on a device. The second data management framework can store the first definition data, and the second application can read data from the second data management framework.

[0012] With reference to the first aspect, in a possible implementation manner, the first application is further configured to generate a unified management protocol of the first data based on a unified management protocol standard, where the unified management protocol of the first data includes an identifier of the first sharing path; and send the unified management protocol of the first data to the first data management framework; the first data management framework is further configured to send the unified management protocol of the first data to the second data management framework through the communication connection; and the second data management framework is specifically configured to obtain the identifier of the first sharing path from the unified management protocol of the first data; and send the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

[0013] In this way, the unified data management framework can determine the identifier of the sharing path based on the unified management protocol of the first data, and share the first definition data to the opposite end application through the corresponding path.

[0014] In a possible implementation manner of the first aspect, the first application further includes: generating a usage instruction of the first data based on the specified data definition standard, wherein the usage instruction of the first data includes the personalized permission of the first sharing path; and sending the usage instruction of the first data to the first data management framework; the first data management framework further includes: sending the usage instruction of the first data to the second data management framework through the communication connection; and the second data management framework specifically includes: obtaining the first notification sent by the second application, the first notification being used for reading the first data, and the first notification including the identifier of the second application; obtaining the permission rule of the first sharing path based on the identifier of the first sharing path in the unified management protocol of the first data; obtaining the personalized permission of the first data from the usage instruction of the first data; and based on the usage instruction of the first data, determining that the second application has the capability to access the first data, and when the first data management framework determines that the second application has the permission to access the first data based on the personalized permission of the first data, the permission rule of the first sharing path, the permission rule of the second data management framework and the identifier of the second application, sending the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

[0015] In this way, the unified data management framework can verify whether the second application has the capability to use the data based on the specified data definition standard. After verifying that the second application has the capability to use the data, the unified data management framework determines whether the second application has the permission to use the data based on one or more of the personalized permission of the first data, the permission rule of the first sharing path and the permission rule of the second data management framework. After having the permission to access, the data is sent to the second application.

[0016] Specifically, the usage instruction of the first data includes an application source field, an operating system source field and a type field of the first data.

[0017] When the type field indicates that the first data is basic class data, the unified data management framework can directly determine whether the second application has the permission to use the data, without the need to check the application source field and the operating system source field.

[0018] When the type field indicates that the first data is system self-defined class data, the unified data management framework needs to check the operating system source field first, to determine whether the operating system of the device on which the second application is installed and the operating system source are the same. If they are the same, it indicates that the second application has the capability to access the data, and the unified data management framework further determines whether the second application has the permission to use the data.

[0019] When the type field indicates that the first data is application custom class data, the unified data management framework needs to check the operation application source field first, and determine whether the installation of the second application and the application source are the same. If they are the same, it indicates that the second application has the ability to access the data, and the unified data management framework further determines whether the second application has the permission to use the data.

[0020] In a second aspect, the application provides a data sharing method, which includes: a second application on a second electronic device acquires first definition data sent by a first application on a first electronic device through a first sharing path and a communication connection, wherein the first definition data is generated by the first application based on a specified data definition standard and first data, the first definition data includes attributes of the first data and the first data, or the first definition data includes attributes of the first data and a storage path of the first data, the second electronic device is different from the first electronic device, and the first electronic device and the second electronic device establish a communication connection; the second application parses the first data or the storage path of the first data from the first definition data based on the specified data definition standard; the second application acquires second definition data sent by the first application through a second sharing path and the communication connection, wherein the second definition data is generated by the first application based on the specified data definition standard and second data, the second definition data includes attributes of the second data and the second data, or the second definition data includes attributes of the second data and a storage path of the second data; and the second application parses the second data or the storage path of the second data from the second definition data based on the specified data definition standard, wherein the second sharing path is different from the first sharing path.

[0021] Optionally, when the first data is non-file data, the first definition data includes attributes of the first data and the first data. The non-file data can include, but is not limited to, text data, system custom data and application custom data.

[0022] When the first data is file data, the first definition data includes attributes of the first data and a storage path of the first data.

[0023] In combination with the second aspect, in a possible implementation manner, the second application acquires the first definition data sent by the first application through the second sharing path and the communication connection; and the second application parses the first data or the storage path of the first data from the first definition data based on the specified data definition standard.

[0024] In this way, the same sharing data is shared to a peer application through different sharing paths. The first application can directly reuse the previous first definition data, without generating the first definition data based on the specified data definition standard and the first data again.

[0025] With reference to the second aspect, in a possible implementation manner, the first electronic device further includes a first data management framework, and the second electronic device further includes a second data management framework; the second application obtains the first definition data sent by the first application through the first sharing path and the communication connection, specifically including: the second data management framework receives the first definition data sent by the first data management framework through the communication connection, wherein the first definition data stored in the first data management framework is sent by the first application; and the second data management framework sends the first definition data to the second application through the first sharing path.

[0026] With reference to the second aspect, in a possible implementation manner, the second application obtains the first definition data sent by the first application through the first sharing path, specifically including: the second data management framework receives the unified management protocol of the first data sent by the first data management framework through the communication connection, wherein the unified management protocol of the first data is generated by the first application based on a unified management protocol standard, and the unified management protocol of the first data includes an identifier of the first sharing path; the second data management framework obtains the identifier of the first sharing path from the unified management protocol of the first data; and the second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

[0027] In this way, the unified data management framework can determine the identifier of the sharing path based on the unified management protocol of the first data, and share the data to the opposite application through the corresponding path.

[0028] With reference to the second aspect, in a possible implementation manner, the second application obtains the second definition data sent by the first application through the second sharing path, specifically including: the second data management framework receives the unified management protocol of the second data sent by the first data management framework through the communication connection, wherein the unified management protocol of the second data is generated by the first application based on a unified management protocol standard, and the unified management protocol of the second data includes an identifier of the second sharing path; the second data management framework obtains the identifier of the second sharing path from the unified management protocol of the second data; and the second data management framework sends the second definition data to the second application through the second sharing path based on the identifier of the second sharing path; wherein the unified management protocol of the second data is different from the unified management protocol of the first data.

[0029] In this way, the unified management protocol of the sharing data generated by the first application is different for different sharing paths.

[0030] With reference to the second aspect, in a possible implementation manner, before the second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, the method further includes: receiving, by the second data management framework through the communication connection, the usage specification of the first data sent by the first data management framework, the usage specification of the first data being generated by the first application based on the specified data definition standard and sent to the first data management framework, the usage specification of the first data including the personalized permission of the first data; sending, by the second data management framework, the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, specifically including: obtaining, by the second data management framework, the first notification sent by the second application, the first notification being used to read the first data, and the identifier of the second application being included in the first notification; obtaining, by the second data management framework, the permission rule of the first sharing path based on the identifier of the first sharing path in the unified management protocol of the first data; obtaining, by the second data management framework, the personalized permission of the first data from the usage specification of the first data; and after determining, by the second data management framework based on the usage specification of the first data, that the second application has the capability to access the first data, sending, by the second data management framework, the first definition data to the second application through the first sharing path based on the identifier of the first sharing path in the case that the second application has the permission to access the first data based on the personalized permission of the first data, the permission rule of the first sharing path, the permission rule of the first data management framework and the identifier of the second application.

[0031] With reference to the second aspect, in a possible implementation manner, after the second data management framework receives the first definition data and the unified management protocol of the first data, the method further includes: verifying, by the second data management framework, the first definition data based on the specified data definition standard; and in the case that the verification is passed, storing, by the second data management framework, the first definition data, the unified management protocol of the first data and the usage specification of the first data.

[0032] With reference to the second aspect, in a possible implementation manner, in the case that the verification is not passed, deleting the first definition data, the unified management protocol of the first data and the usage specification of the first data.

[0033] In this way, it is ensured that the redefinition data stored in the second data management framework is defined based on the specified data definition standard.

[0034] With reference to the second aspect, in a possible implementation manner, the specified data definition standard is stored in the second data management framework; and the method further includes: sending, by the second data management framework, the specified data definition standard to the second application.

[0035] In this way, the second application can parse the first definition data based on the specified data definition standard to obtain the first data.

[0036] With reference to the second aspect, in a possible implementation manner, after the second application parses the storage path of the first data from the first definition data based on the specified data definition standard, the method further includes: the second application sends the storage path of the first data to the first application through the communication connection; and the second application receives the first data sent by the first application through the communication connection, the first data being obtained by the first application based on the storage path of the first data.

[0037] With reference to the second aspect, in a possible implementation manner, after the second application parses the storage path of the first data from the first definition data based on the specified data definition standard, the method further includes: the second application sends the storage path of the first data to the first application through the communication connection; and the second application receives the first data sent by the first application through the communication connection, the first data being obtained by the first application based on the storage path of the first data.

[0038] In this way, the second data management framework can clean up the shared data that has been used in time, and avoid data leakage.

[0039] With reference to the third aspect, the present application provides a data sharing method, characterized in that the method is applied to a first electronic device, the first electronic device includes a first application and a second application, and the method includes: the first application obtains first data; the first application generates first definition data corresponding to the first data based on a specified data definition standard, the first definition data including attributes of the first data and the first data, or the first definition data including attributes of the first data and a storage path of the first data; the first application sends the first definition data to the second application through a first sharing path; the second application parses the first data or the storage path of the first data from the first definition data based on the specified data definition standard; the first application obtains second data; the first application generates second definition data corresponding to the second data based on the specified data definition standard, the second definition data including attributes of the second data and the second data, or the second definition data including attributes of the second data and a storage path of the second data; the first application sends the second definition data to the second application through a second sharing path; the second application parses the second data or the storage path of the second data from the second definition data based on the specified data definition standard; and the second sharing path is different from the first sharing path.

[0040] Through the data sharing method between two applications on the same device, different applications need to define the shared data according to the standard before sharing data. After receiving the shared data, different applications also need to parse the shared data based on the standard. That is, the data definition standard is unified for different applications and different sharing paths, and the format of the shared data is unified.

[0041] With reference to the third aspect, in a possible implementation manner, the method further includes: the first application obtaining the first definition data; the first application sending the first definition data to the second application through the second sharing path; and the second application parsing the first data or a storage path of the first data from the first definition data based on the specified data definition standard.

[0042] In this way, the same sharing data is shared to the peer application through different sharing paths. The first application can directly reuse the previous first definition data, and there is no need to generate the first definition data based on the specified data definition standard and the first data.

[0043] With reference to the third aspect, in a possible implementation manner, the first electronic device further includes a first data management framework, and the first application sends the first definition data to the second application through the first sharing path, specifically including: the first application generates a uniform management protocol of the first data based on a uniform management protocol standard, where the uniform management protocol of the first data includes an identifier of the first sharing path; the first application sends the first definition data and the uniform management protocol of the first data to the first data management framework; the first data management framework obtains the identifier of the first sharing path from the uniform management protocol of the first data; and the first data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

[0044] With reference to the third aspect, in a possible implementation manner, the second application sends the second definition data to the second application through the second sharing path, specifically including: the first application generates a uniform management protocol of the second data based on a uniform management protocol standard, where the uniform management protocol of the second data includes an identifier of the second sharing path; the first application sends the second definition data and the uniform management protocol of the second data to the first data management framework; the first data management framework obtains the identifier of the second sharing path from the uniform management protocol of the second data; and the first data management framework sends the second definition data to the second application through the first sharing path based on the identifier of the second sharing path; where the uniform management protocol of the second data is different from the uniform management protocol of the first data.

[0045] With reference to the third aspect, in a possible implementation manner, the method further includes: the first application generates usage description of the first data based on the specified data definition standard, where the usage description of the first data includes personalized permissions of the first data; and the first data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, specifically including: the first data management framework acquires the first notification sent by the second application, where the first notification is used to read the first data, and the identifier of the second application is included in the first notification; the first data management framework acquires the permission rule of the first sharing path based on the identifier of the first sharing path in the unified management protocol of the first data; the first data management framework acquires the personalized permissions of the first data from the usage description of the first data; after the first data management framework determines, based on the usage description of the first data, that the second application has the capability to access the first data, when the first data management framework determines, based on the personalized permissions of the first data, the permission rule of the first sharing path, the permission rule of the first data management framework and the identifier of the second application, that the second application has the permission to access the first data, the first data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

[0046] With reference to the third aspect, in a possible implementation manner, after the first application sends the first definition data and the unified management protocol of the first data to the first data management framework, the method further includes: the first data management framework verifies the first definition data based on the specified data definition standard; and in a case where the verification is passed, the first data management framework stores the first definition data, the unified management protocol of the first data and the usage description of the first data.

[0047] With reference to the third aspect, in a possible implementation manner, the method further includes: in a case where the verification is not passed, deleting the first definition data, the unified management protocol of the first data and the usage description of the first data.

[0048] With reference to the third aspect, in a possible implementation manner, after the second application parses the first data or the storage path of the first data from the first definition data, the method further includes: the first data management framework deletes the first definition data.

[0049] With reference to the third aspect, in a possible implementation manner, the first sharing path or the second sharing path includes any one of the following: a drag path, a clipboard path, a cross-application manual path and a cross-application automatic path.

[0050] With reference to the third aspect, in a possible implementation manner, the attribute of the first data includes one or more of the following: a type of the first data, a size of the first data and a creation time of the first data.

[0051] In a fourth aspect, the present application provides an electronic device, comprising: one or more processors, one or more memories, and one or more cameras; the one or more cameras, the one or more memories, and the one or more processors are coupled, the one or more memories are configured to store computer program codes, the computer program codes comprise computer instructions, and the one or more processors are configured to invoke the computer instructions to enable the electronic device to perform the data sharing method provided in any possible implementation manner of the third aspect.

[0052] In a fifth aspect, the present application provides a computer readable storage medium, configured to store computer instructions, when the computer instructions are run on an electronic device, enable the electronic device to perform the data sharing method provided in any possible implementation manner of the third aspect.

[0053] In a sixth aspect, the present application provides a computer program product, when the computer program product is run on an electronic device, enable the electronic device to perform the data sharing method provided in any possible implementation manner of the third aspect.

[0054] In a seventh aspect, the present application provides an electronic device, comprising: one or more processors, one or more memories, and one or more cameras; the one or more cameras, the one or more memories, and the one or more processors are coupled, the one or more memories are configured to store computer program codes, the computer program codes comprise computer instructions, and the one or more processors are configured to invoke the computer instructions to enable the electronic device to perform the data sharing method provided in any possible implementation manner of the second aspect.

[0055] In an eighth aspect, the present application provides a computer readable storage medium, configured to store computer instructions, when the computer instructions are run on an electronic device, enable the electronic device to perform the data sharing method provided in any possible implementation manner of the second aspect.

[0056] In a ninth aspect, the present application provides a computer program product, when the computer program product is run on an electronic device, enable the electronic device to perform the data sharing method provided in any possible implementation manner of the second aspect.

[0057] The beneficial effects of the third aspect to the ninth aspect can refer to the beneficial effects described in the first aspect and the second aspect, which will not be repeated here. BRIEF DESCRIPTION OF DRAWINGS

[0058] Figures 1A-1J UI schematic diagram of data sharing between two applications is shown;

[0059] Figures 2A-2G UI schematic diagram of data sharing between two applications on different devices is shown;

[0060] Figure 3 An implementation of sharing data between two applications on the same device through different sharing paths is shown;

[0061] Figure 4 An implementation of sharing data between two applications on different devices through different sharing paths is shown;

[0062] Figure 5 An architecture diagram of a system 50 provided by an embodiment of the present application is shown;

[0063] Figure 6A A structure diagram of an electronic device 100 provided by an embodiment of the present application is shown;

[0064] Figure 6B A software structure block diagram of the electronic device 100 provided by an embodiment of the present application is shown;

[0065] Figure 7 An implementation diagram showing how a unified data management framework stores first data shared by an application A on an electronic device 100 is shown;

[0066] Figure 8 An implementation diagram showing how an application B on an electronic device 100 reads the first data shared by the application A from the unified data management framework is shown;

[0067] Figure 9 An implementation diagram showing how a unified data management framework on an electronic device 200 stores the first data shared by the application A on the electronic device 100 is shown;

[0068] Figure 10 An implementation diagram showing how an application B on the electronic device 200 reads the first data shared by the application A on the electronic device 100 from the unified data management framework on the electronic device 200 is shown;

[0069] Figure 11 A method diagram showing how an application A on an electronic device 100 shares data with an application B on the electronic device 100 provided by an embodiment of the present application is shown;

[0070] Figure 12 A method diagram showing how an application A on an electronic device 100 shares data with an application B on an electronic device 200 provided by an embodiment of the present application is shown. DETAILED DESCRIPTION

[0071] The technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the drawings. In the description of the embodiments of the present application, unless otherwise specified, " / " represents the meaning of or, for example, A / B can represent A or B; the "and / or" in the text only describes the association relationship of the associated objects, which means that there can be three relationships, for example, A and / or B, which means that there are three cases of A alone, A and B together, and B alone. In addition, in the description of the embodiments of the present application, "multiple" means two or more than two.

[0072] Hereinafter, the terms "first" and "second" are used only for descriptive purposes and cannot be understood as implying or suggesting relative importance or implicitly indicating the number of indicated technical features. Therefore, the features defined with "first" and "second" can explicitly or implicitly include one or more of the features, and in the description of the embodiments of the present application, unless otherwise specified, "multiple" means two or more than two.

[0073] The term "user interface (UI)" in the following embodiments of the present application is a medium interface for interaction and information exchange between an application or an operating system and a user, which realizes the conversion between the internal form of information and the form that the user can accept. The commonly used form of user interface is graphic user interface (GUI), which refers to a user interface related to computer operation displayed in a graphical manner. It can be a visual interface element such as text, icon, button, menu, tab, text box, dialog box, status bar, navigation bar, Widget, etc. displayed in the display screen of an electronic device.

[0074] First, two application scenarios related to the present application are introduced, data sharing scenarios between two applications on the same device and data sharing scenarios between two applications on different devices.

[0075] The data sharing path between the two applications on the same device can include but is not limited to: drag path, clipboard path and cross-application path, etc. The two applications on the same device can be the same or different.

[0076] Among them, Figures 1A-1J UI schematic diagram of data sharing between two applications is shown.

[0077] Figures 1A-1B UI schematic diagram of sharing data in application A to application B through drag path is shown.

[0078] The drag path on the same device can refer to: after selecting (for example, long pressing selection) the data in application A, it is directly shared to application B through the drag path.

[0079] For example, application A could be a gallery application, and application B could be an instant messaging application.

[0080] like Figure 1A As shown, the electronic device 100 displays a split-screen application interface 110 for a gallery application and an application interface 120 for an instant messaging application. Application interface 110 displays multiple pictures, while application interface 120 displays a dialog box showing the contact "Lily".

[0081] like Figure 1A As shown, the electronic device 100 can receive long-press and drag operations from the user on image 1101 among multiple images, and directly share image 1101 to the contact "Lily" via the drag path.

[0082] like Figure 1B As shown, after the user shares image 1101 to the contact "Lily" by dragging and dropping the image, the electronic device 100 can display the shared image 1101 in the application interface 120.

[0083] This application is not limited to split-screen dragging. It only uses split-screen dragging as an example for illustration. The dragging path can also be applied to other scenarios, and this application does not limit it.

[0084] Figures 1C-1E Another UI illustration shows how to share data from application A to application B via drag-and-drop.

[0085] For example, application A could be a gallery application, and application B could be an instant messaging application.

[0086] like Figure 1C As shown, the electronic device 100 displays an application interface 110 for a gallery application, which shows multiple images. The electronic device 100 can receive long-press and drag operations from the user on image 1101 among the multiple images, and temporarily store image 1101 in the transfer station 130.

[0087] After that, as Figure 1D As shown, the electronic device 100 can open an instant messaging application and display the application interface 120 of the instant messaging application. The electronic device 100 can receive long-press and drag operations from the user on the image 1101 in the relay station 130 and share the image 1101 to the contact "Lily".

[0088] like Figure 1E As shown, after a user shares image 1101 from relay station 130 to contact "Lily", electronic device 100 can display the shared image 1101 in application interface 120.

[0089] Figures 1F-1GThe UI diagram shows how data from application B is shared to application C via a clipboard path.

[0090] The clipboard path on the same device can refer to: a user opening application A, copying or cutting data from application A, and temporarily storing the data from application A in the clipboard of electronic device 100. The user then opening application B, sharing the data from application A temporarily stored in the clipboard of electronic device 100 to application B.

[0091] For example, application B could be an instant messaging application, and application C could be a browser application.

[0092] like Figure 1F As shown, the electronic device 100 displays an application interface 140 for an instant messaging application. The application interface 140 displays a dialog box for the contact "Lily". The dialog box can include multiple chat records, one of which can be a URL link "aaabbbccc".

[0093] Electronic device 100 receives a long-press operation from a user on the URL link, and in response to the user's long-press operation, electronic device 100 can display as follows: Figure 1F The prompt box 1401 shown has multiple options, such as copy, forward, and favorite options.

[0094] like Figure 1F As shown, the electronic device 100 can receive user input (e.g., a click) for the copy option, and in response to the user's input, the electronic device 100 can store the URL link "aaabbbccc" in the clipboard.

[0095] Then, the electronic device 100 opens the browser application. For example... Figure 1G As shown, the electronic device 100 displays a user interface 150 with a browser application. The user interface 150 includes an input field 1501, which is used to receive URLs or text entered by the user.

[0096] The user can long-press the input bar 1501. In response to the user's input, the electronic device 100 can display a prompt message 1502. The prompt message 1502 displays multiple options, such as paste, line break, and full-screen input options. Figure 1G As shown, the electronic device 100 can receive user input (e.g., a click) regarding the paste option. In response to the user's input, the electronic device 100 can display the URL link "aaabbbccc" stored in the clipboard. Figure 1H The input field 1501 shown does not require the user to enter the URL link via the keyboard.

[0097] Figures 1I-1J The diagram shows a UI illustration of sharing data from application B to application C via a cross-application path.

[0098] Cross-application path can refer to: a user opens application A, selects data in application A, and then selects the application icon of application B to share the selected data to application B.

[0099] For example, application A can be an instant messaging application, and application B can be an instant messaging application.

[0100] like Figure 1I As shown, electronic device 100 can display user interface 160 of application A. User interface 160 may include a picture selected by the user and icons of multiple applications. Electronic device 100 can receive user input operations (e.g., clicks) on the icon of the instant messaging application, and in response to the user's input operation, electronic device 100 can share the selected picture to the instant messaging application.

[0101] like Figure 1J As shown, the electronic device 100 displays a user interface 170 for an instant messaging application, which includes pictures shared from a gallery application to the instant messaging application.

[0102] The drag-and-drop paths, clipboard paths, and cross-application paths mentioned above are only used to explain this application. They may also include other data sharing paths between two applications on the same device, and this application does not limit them.

[0103] The drag-and-drop paths, clipboard paths, and cross-application paths within the same device are all determined through user intervention. In some embodiments, two applications on the same device can automatically share data without user intervention. This automatic data sharing path between two applications on the same device can be referred to as a cross-application automatic path.

[0104] Data sharing paths between two applications on different devices can include drag-and-drop paths, clipboard paths, cross-device paths, etc. These two applications on different devices can be the same or different.

[0105] For example, the two devices can be electronic device 100 and electronic device 200, and electronic device 100 and electronic device 200 establish a communication connection.

[0106] in, Figures 2A-2G This diagram illustrates a UI for sharing data between two applications on different devices.

[0107] Figures 2A-2BA UI diagram showing sharing of data in application A to application B through a drag path is shown.

[0108] The drag path between different devices can refer to that a user opens application A on electronic device 100, selects and drags data in application A, and stores the data in application A in a transfer station of electronic device 100. Electronic device 100 and electronic device 200 can synchronize the data stored in the respective transfer stations. Electronic device 200 can receive a user operation to send the data in the transfer station of electronic device 200 to application B on electronic device 200. The data in the transfer station of electronic device 200 can include the data in application A.

[0109] For example, application A can be an instant messaging application on electronic device 100. Application B can also be an instant messaging application on electronic device 200.

[0110] With reference to Figures 1C-1D In the description in the embodiments, electronic device 100 can receive a user operation to temporarily store picture 1101 in gallery application in transfer station 130. Electronic device 100 and electronic device 200 can synchronize the data temporarily stored in the respective transfer stations.

[0111] With reference to Figure 2A Electronic device 200 can receive a user operation to display transfer station 140, and transfer station 140 displays picture 1101. Electronic device 200 can receive a long press and drag operation of picture 1101 in transfer station 140 by the user, and share picture 1101 to contact "group chat".

[0112] As shown in Figure 2B After the user shares picture 1101 in transfer station 140 of electronic device 200 to contact "group chat", electronic device 200 can display picture 1101 in the chat box of contact "group chat". The sharing of data between two applications on different devices through the drag path is achieved.

[0113] Figures 2C-2D A UI diagram showing sharing of data in application A to application B through a clipboard path is shown.

[0114] The clipboard path between different devices can refer to that a user opens application A on electronic device 100, copies or cuts data in application A, and stores the data in application A in a clipboard of electronic device 100. Electronic device 100 and electronic device 200 can synchronize the data stored in the respective clipboards. Electronic device 200 can receive a user operation to send the data in the clipboard of electronic device 200 to application B on electronic device 200. The data in the clipboard of electronic device 200 can include the data in application A.

[0115] For example, the application A can be an instant messaging application on the electronic device 100. The application B can be a browser application on the electronic device 200.

[0116] With reference to Figures 1F-1G According to the description in the embodiments, the electronic device 100 can receive a user operation of storing a URL link “aaabbbccc” in an instant messaging application in a clipboard of the electronic device 100. The electronic device 100 and the electronic device 200 can synchronize the data temporarily stored in the respective clipboards with each other.

[0117] With reference to Figure 2C According to the description in the embodiments, the electronic device 200 can receive a user operation of opening a browser application, and display a user interface 210 of the browser application. The user interface 210 includes an input field 2101 for receiving a URL input by a user or text input by a user.

[0118] The user can long press the input field 2101. In response to the input operation of the user, the electronic device 200 can display a prompt information 2102, and the prompt information 2102 displays a plurality of options, such as a paste option, a line break option, a full screen input option, and the like. As shown in Figure 2C The electronic device 200 can receive an input operation (e.g., a single click) of the user on the paste option. In response to the input operation of the user, the electronic device 200 can display the URL link “aaabbbccc” stored in the clipboard in the input field 2101 as shown in Figure 2D The sharing of data between two applications in different devices through the clipboard path is achieved.

[0119] Figures 2E-2G The UI diagram of sharing the data in the application B to the application C through the cross-device path is shown.

[0120] The cross-device path can refer to that the user opens an application A in the electronic device 100, selects data in the application A, and then selects a device icon of the electronic device 200 to share the selected data to the electronic device 200.

[0121] For example, the application A can be a gallery application on the electronic device 100. The application B can be a gallery application on the electronic device 200.

[0122] As shown in Figure 2EAs shown, electronic device 100 can display the user interface of a gallery application on electronic device 100. The user interface of the gallery application can include the picture selected by the user, icons of multiple nearby devices (e.g., "HUAWEI P50" option, "Alee's Phone" option, "Alee's Tablet" option), and application icons of multiple applications. Electronic device 100 can receive user input (e.g., a click) for the "HUAWEI P50" option, and in response to the user's input, electronic device 100 can share the selected picture to electronic device 200. The device identifier of electronic device 200 can be "HUAWEI P50".

[0123] After receiving the image sent by electronic device 100, electronic device 200 can display it. Figure 2F The receiving window 4130 is shown. This receiving window 4130 may include a thumbnail 4131 of the image shared by electronic device 100 to electronic device 200, a receiving prompt 4132, an open control 4133, and a storage control 4134. The receiving prompt 4132 can be used to notify the user that electronic device 200 has finished receiving the image sent by electronic device 100. The prompt type of receiving prompt 4132 can be any one or more of the following: text prompt (e.g., "Received 1 image sent to you by Daniel"), image prompt, animated image prompt, and video prompt. The open control 4133 can be used to trigger electronic device 200 to display a display interface including the image sent by electronic device 100. The storage control 4134 can be used to trigger electronic device 200 to save the image sent by electronic device 100 to a specified storage path on electronic device 200's local storage.

[0124] Electronic device 200 can receive user input (e.g., a click) to the storage control 4134, and in response to the input, electronic device 200 can display, as shown below. Figure 2G The storage interface shown is 4140.

[0125] like Figure 2G As shown, the storage interface 4140 may include options for one or more storage paths, a "back to previous page" control 4141, etc. Since the electronic device 100 shares images with the electronic device 200, the options for one or more storage paths may include one or more album options (e.g., "All Photos Album" option 4142, "Camera Album" option, "Screenshot Catalog Album" option, "Chat Application Album" option, "Connect Application Album" option, "Other Albums" option, etc.). Optionally, the storage interface 4140 may also include a "Create New" control 4143, which can be used to trigger the electronic device 200 to add a new album option to the storage interface 4140.

[0126] Electronic device 200 can receive user input (e.g., a click) on the "All Photo Albums" option 4142. In response to this input, electronic device 200 can store the images shared by electronic device 100 to electronic device 200 in the storage path corresponding to all photo albums. After electronic device 200 stores the images shared by electronic device 100 to electronic device 200 in the storage path corresponding to all photo albums, when electronic device 200 opens the album interface of all photo albums in the gallery application, the album interface of all photo albums can include thumbnails of the images shared by electronic device 100 to electronic device 200.

[0127] Optionally, electronic device 200 may not display anything. Figure 2F and Figure 2G As shown in the user interface, after electronic device 200 receives an image shared by electronic device 100, electronic device 200 can directly store the received image in its gallery.

[0128] The drag-and-drop paths between different devices, clipboard paths between different devices, and cross-device paths mentioned above are only used to explain this application. They may also include other data sharing paths between two applications on different devices, and this application does not limit them.

[0129] The drag-and-drop paths, clipboard paths, and cross-device paths between different devices are all determined through active user intervention. In some embodiments, devices can automatically share data with other devices without user intervention. Such automatic data sharing paths can be referred to as automatic cross-device paths.

[0130] based on Figures 1A-1J As the description indicates, data can be shared between two applications on the same device via different paths.

[0131] Different applications define data differently, and different sharing paths have different data definition standards. Data shared between applications through various sharing paths needs to meet the data definition standards of each sharing path.

[0132] Before application A sends shared data to application B, application A needs to obtain the data definition standard for the current sharing path and define the shared data based on the data definition standard for the current sharing path, thus obtaining the redefined shared data. Application A then sends the redefined shared data to application B through the current sharing path.

[0133] like Figure 3As shown, the data sharing path between two applications on the same device can include, but is not limited to, any one of a drag path and a clipboard path. The data definition standards corresponding to the drag path and the clipboard path are different.

[0134] For example, when the sharing data is a picture, the type definition of the picture for the drag path can be "image", and the type definition of the picture for the clipboard path can be "picture".

[0135] For example, when the sharing data is a picture, the type definition of the picture for the drag path can be "image", and the type definition of the picture for the clipboard path can be "picture".

[0136] Before application A sends the sharing data to application B through the drag path or the clipboard path, application A needs to obtain the data definition standards corresponding to each path from the drag path model or the clipboard path model. And the sharing data is redefined according to the data definition standards in the drag path or the clipboard path, to obtain the redefined sharing data. Application A sends the redefined sharing data to the drag path or the clipboard path, and the drag path or the clipboard path sends the redefined sharing data to application B.

[0137] After application B receives the redefined sharing data, application B needs to obtain the data definition standards corresponding to each path from the drag path model or the clipboard path model. And the redefined sharing data is parsed according to the data definition standards in the drag path or the clipboard path, to obtain the content of the sharing data, which can be used by the user in application B.

[0138] From the above process, it can be seen that the sender of the sharing data needs to redefine the sharing data based on the data definition standards of different sharing paths. The receiver of the sharing data also needs to parse the sharing data based on the data definition standards of different sharing paths. This leads to a cumbersome process of sending and receiving data.

[0139] Figure 4 The specific implementation of sharing data between two applications on different devices through different sharing paths is shown. Figure 4 Similarly, the difference is Figure 3 For the specific implementation of sharing data between two applications on the same device through different sharing paths, Figure 3 For the specific implementation of sharing data between two applications on different devices through different sharing paths, Figure 4 The specific introduction of the embodiments can refer to the description in Figure 4 From Figure 3 it can be seen that Figure 4 Figure 4 ​Existence and Figure 3 The same problem arises because the data definition standards differ across sharing paths. The sender of the shared data needs to redefine the shared data based on these different standards. Similarly, the receiver also needs to parse the shared data according to these different standards, making the data transmission and reception process cumbersome.

[0140] To address the aforementioned issues, this application provides a data sharing method. The method includes: for different applications and different sharing paths, the electronic device 100 provides a unified data definition standard (which may be referred to as a specified data definition standard). Through this method, the sender of the sharing data does not need to consider the type of sharing path; they only need to define the sharing data based on the specified data definition standard and then send it to the recipient of the sharing data through the sharing path. The recipient of the sharing data also does not need to consider the type of sharing path; they only need to parse the redefined sharing data based on the specified data definition standard to obtain the sharing data, thus simplifying the data transmission process between the sender and recipient.

[0141] The specified data definition standard can include data attribute definitions and data content definitions. Data attribute definitions can include, but are not limited to, data type definitions, size definitions, creation time definitions, and data content definitions. When the data type is file data, the data content definition can include the data's storage path on the device; for example, the storage path can be the data's Uniform Resource Identifier (URI). When the data type is non-file data, the data content definition can include the data's text content. For a detailed description of the specified data definition standard, please refer to the description in the embodiments in Table 1.

[0142] The present application can be applied to data sharing between two applications on the same device. In some embodiments, application A on the electronic device 100 automatically shares data with application B on the electronic device 100 without user operation. Application A can obtain a specified data definition standard, and define data (e.g., first data) in application A based on the specified data definition standard to obtain redefined first data. Application B can obtain the redefined first data. Application B can parse the redefined first data based on the specified data definition standard to obtain the first data and use the first data. In other embodiments, application A on the electronic device 100 can also receive a user operation for selecting the first data in application A and sending the first data to application B on the electronic device 100 through a cross-application manual path. Specifically, application A can obtain the specified data definition standard, and define the first data based on the specified data definition standard to obtain redefined first data. Application A then sends the redefined first data to application B. Application B can also obtain the specified data definition standard, and parse the redefined first data based on the specified data definition standard to obtain the first data. Application B can use the first data. The processing flow of data transmission between two applications on the same device is simplified.

[0143] For example, a user can share a picture in a gallery application to an instant messaging application through any one of a drag path, a clipboard path, or any one of a cross-application manual path or a cross-application automatic path. The data definition standard of the four sharing paths is the same, whether it is the drag path, the clipboard path, the cross-application manual path, or the cross-application automatic path. The gallery application only needs to redefine the picture in the gallery application based on the specified data definition standard to obtain a redefined picture, and then send the redefined picture to the instant messaging application through any one of the selected sharing paths. The instant messaging application does not need to pay attention to which sharing path is used to receive the redefined picture. The instant messaging application only needs to parse the redefined picture based on the specified data definition standard to obtain the picture and use the picture. The processing flow of data transmission between the gallery application and the instant messaging application on the same device is simplified.

[0144] The present application can be applied to data sharing between two applications on different devices. The electronic device 100 and the electronic device 200 establish a communication connection. In some embodiments, the application A on the electronic device 100 automatically shares data with the application B on the electronic device 200 without user operation. In other embodiments, the application A on the electronic device 100 can also share data with the application B on the electronic device 200 based on user operation. Specifically, the application A on the electronic device 100 can obtain a specified data definition standard and data (e.g., first data) in the application A, and define the first data based on the specified data definition standard to obtain redefined first data. The electronic device 100 sends the redefined first data to the electronic device 200 through the communication connection. The application B on the electronic device 200 can obtain the redefined first data through any one of a drag path, a clipboard path, or a cross-device manual path or a cross-device automatic path. And the application B on the electronic device 200 can parse the redefined first data based on the specified data definition standard to obtain the first data and use the first data. The processing flow of data transmission between two applications on different devices is simplified.

[0145] In some embodiments, the redefined first data can also be referred to as first defined data.

[0146] For example, the user can share a picture in the gallery application of the electronic device 100 to the electronic device 200 through any one of a drag path, a clipboard path, or a cross-device manual path or a cross-device automatic path. The data definition standard of the four sharing paths is the same, whether it is a drag path, a clipboard path, or a cross-device manual path or a cross-device automatic path. The gallery application in the electronic device 100 only needs to redefine the picture in the gallery application based on the specified data definition standard to obtain a redefined picture. The gallery application in the electronic device 100 sends the redefined picture to the communication module in the electronic device 100 through any one of the sharing paths. The communication module in the electronic device 200 can receive the redefined picture. The gallery application in the electronic device 200 can obtain the redefined picture through the corresponding sharing path. The gallery application in the electronic device 200 does not need to pay attention to which sharing path the redefined picture is received through. The gallery application in the electronic device 200 only needs to parse the redefined picture based on the specified data definition standard to obtain the picture and use the picture. The processing flow of data transmission between two gallery applications on different devices is simplified.

[0147] Next, a system architecture provided by an embodiment of the present application is introduced.

[0148] Please refer to Figure 5 , Figure 5 A schematic diagram of a system 50 provided by an embodiment of the present application is shown.

[0149] The system 50 can include one electronic device, and the system 50 can also include multiple electronic devices. Figure 5 The system 50 shown includes two electronic devices. For example, the two electronic devices can be the electronic device 100 and the electronic device 200.

[0150] The device type of the electronic device can include, but is not limited to, any one of the following: a mobile phone, a tablet computer, a desktop computer, a laptop computer, a handheld computer, a notebook computer, a smart screen, a wearable device, an augmented reality (AR) device, a virtual reality (VR) device, an artificial intelligence (AI) device, a car machine, a smart earphone, a game machine, and can also include an internet of things (IOT) device or a smart home device such as a smart water heater, a smart lamp, a smart air conditioner, and the like. Without limitation, the multiple devices in the system 10 can also include a laptop with a touch-sensitive surface or a touch panel, a desktop computer with a touch-sensitive surface or a touch panel, and the like, and the like.

[0151] The software operating system (OS) of the electronic device includes, but is not limited to and the like. Among them, is the HarmonyOS of Huawei. Optionally, the multiple electronic devices can all be configured with the same software operating system, for example, can all be configured with

[0152] The electronic device 100 and the electronic device 200 can establish a communication connection in any one of the following ways.

[0153] Method one: The multiple electronic devices can be connected to the same network, for example, the multiple electronic devices can be connected to the same local area network to establish a communication connection.

[0154] Method two: The multiple electronic devices can also log in to the same system account to establish a communication connection. For example, the system account logged in by the multiple electronic devices can all be "HW1234".

[0155] Method three: The system accounts logged in on the multiple electronic devices can all belong to the same account group. For example, the system accounts logged in on the multiple electronic devices include "HW001", "HW002", and "HW003". The system accounts "HW001", "HW002", and "HW003" all belong to the account group "Huawei Family".

[0156] The fourth mode: the plurality of electronic devices can establish a communication connection through near field communication (NFC), bluetooth (BT), wireless local area networks (WLAN), such as wireless fidelity point to point (Wi-Fi P2P), infrared technology (IR), and the like.

[0157] The fifth mode: the plurality of electronic devices can establish a temporary account group by scanning the same two-dimensional code, establish a networking connection, and implement communication.

[0158] Without being limited to the above five modes, the electronic device 100 can also establish a communication connection through other modes, which is not limited in the embodiments of the present application. In addition, the plurality of electronic devices can also establish a communication connection in combination with any of the above modes, which is also not limited in the embodiments of the present application.

[0159] In the case where the system 50 only includes one electronic device (for example, the electronic device 100), the electronic device 100 can share data between two applications on the same device based on the method provided in the present application, and simplify the processing flow of data transmission between two applications on the same device. Specifically, the application A can obtain a specified data definition standard, and define the data (for example, the first data) in the application A based on the specified data definition standard, to obtain the redefined first data. The application B can obtain the redefined first data. The application B can parse the redefined first data based on the specified data definition standard, to obtain the first data and use the first data. In other embodiments, the application A on the electronic device 100 can also receive a user operation, which is used to select the first data in the application A and send the first data to the application B on the electronic device 100 through a cross-application manual path. Specifically, the application A can obtain a specified data definition standard, and define the first data based on the first data, to obtain the redefined first data. The application A sends the redefined first data to the application B. The application B can also obtain the specified data definition standard, and parse the redefined first data based on the first data, to obtain the first data. The application B can use the first data. The processing flow of data transmission between two applications on the same device is simplified.

[0160] In the case that the system 50 comprises a plurality of electronic devices (for example, the electronic device 100 and the electronic device 200), the electronic device 100 and the electronic device 200 can share data between two applications on different devices based on the method provided in the present application, and simplify the processing flow of data transmission between two applications on different devices. Specifically, in some embodiments, the application A on the electronic device 100 automatically shares data with the application B on the electronic device 200 without user operation. In other embodiments, the application A on the electronic device 100 can also share data with the application B on the electronic device 200 based on user operation. Specifically, the application A on the electronic device 100 can obtain a specified data definition standard and data (for example, first data) in the application A, and define the first data based on the specified data definition standard to obtain redefined first data. The electronic device 100 sends the redefined first data to the electronic device 200 through a communication connection. The application B on the electronic device 200 can obtain the redefined first data through any one of a drag path, a clipboard path, or a cross-device manual path or a cross-device automatic path. And the application B on the electronic device 200 can parse the redefined first data based on the specified data definition standard to obtain the first data and use the first data. The processing flow of data transmission between two applications on different devices is simplified.

[0161] In some embodiments, the electronic device 200 can also be a server or the like cloud device to realize data sharing between the electronic device and the server.

[0162] The following embodiments of the present application take the electronic device 100 as a mobile phone as an example for illustration, and the electronic device 200 can also have the same or similar components.

[0163] Figure 6A The structural schematic diagram of the electronic device 100 is shown.

[0164] The electronic device 100 can include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1, an antenna 2, a mobile communication module 150, a wireless communication module 160, an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, a headset interface 170D, a sensor module 180, a key 190, a motor 191, an indicator 192, a camera 193, a display screen 194, and a subscriber identification module (SIM) card interface 195, etc. The sensor module 180 can include a pressure sensor 180A, a gyro sensor 180B, a barometric pressure sensor 180C, a magnetic sensor 180D, an acceleration sensor 180E, a distance sensor 180F, a proximity light sensor 180G, a fingerprint sensor 180H, a temperature sensor 180J, a touch sensor 180K, an ambient light sensor 180L, a bone conduction sensor 180M, etc.

[0165] It can be understood that the structure shown in the embodiments of the present application does not constitute a specific limitation on the electronic device 100. In other embodiments of the present application, the electronic device 100 can include more or fewer components than shown, or combine certain components, or split certain components, or different arrangement of components. The components shown can be implemented in hardware, software, or a combination of software and hardware.

[0166] The processor 110 can include one or more processing units, for example: the processor 110 can include an application processor (AP), a modem processor, a graphics processing unit (GPU), an image signal processor (ISP), a controller, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Different processing units can be independent devices, or can be integrated in one or more processors.

[0167] The controller can generate operation control signals according to instruction operation codes and timing signals, and complete the control of fetching and executing instructions.

[0168] The processor 110 can also have a memory for storing instructions and data. In some embodiments, the memory in the processor 110 is a cache memory. The memory can hold instructions or data that the processor 110 has just used or is using repeatedly. If the processor 110 needs to use the instructions or data again, it can call them directly from the memory. This avoids repeated access and reduces the waiting time of the processor 110, thus improving the efficiency of the system.

[0169] In some embodiments, the processor 110 can include one or more interfaces. The interfaces can include an inter-integrated circuit (I2C) interface, an inter-integrated circuit sound (I2S) interface, a pulse code modulation (PCM) interface, a universal asynchronous receiver / transmitter (UART) interface, a mobile industry processor interface (MIPI), a general-purpose input / output (GPIO) interface, a subscriber identity module (SIM) interface, and / or a universal serial bus (USB) interface, etc.

[0170] It can be understood that the interface connection relationship between the modules shown in the embodiments of the present application is only illustrative and does not constitute a limitation on the structure of the electronic device 100. In other embodiments of the present application, the electronic device 100 can also use different interface connection methods or combinations of multiple interface connection methods in the above embodiments.

[0171] The charging management module 140 is configured to receive a charging input from a charger.

[0172] The power management module 141 is configured to connect the battery 142 and the charging management module 140 to the processor 110.

[0173] The wireless communication function of the electronic device 100 can be realized by the antenna 1, the antenna 2, the mobile communication module 150, the wireless communication module 160, the modem processor, and the baseband processor, etc.

[0174] Antennas 1 and 2 are used for transmitting and receiving electromagnetic wave signals. Each antenna in electronic device 100 can be used to cover a single or multiple communication frequency bands. Different antennas can also be multiplexed to improve the utilization of antennas. For example, antenna 1 can be multiplexed as a diversity antenna for wireless local area networks. In some other embodiments, antennas can be used in combination with tuning switches.

[0175] Mobile communication module 150 can provide solutions for wireless communication including 2G / 3G / 4G / 5G, etc. applied on electronic device 100. Mobile communication module 150 can include at least one filter, switch, power amplifier, low noise amplifier (LNA), etc. Mobile communication module 150 can receive electromagnetic waves by antenna 1, and perform filtering, amplification, etc. on the received electromagnetic waves, and transmit the processed electromagnetic waves to a modem processor for demodulation. Mobile communication module 150 can also amplify signals modulated by the modem processor, and convert the amplified signals into electromagnetic waves radiated by antenna 1. In some embodiments, at least part of the functional modules of mobile communication module 150 can be arranged in processor 110. In some embodiments, at least part of the functional modules of mobile communication module 150 can be arranged in the same device as at least part of the modules of processor 110.

[0176] The modem processor can include a modulator and a demodulator. The modulator is used to modulate a low-frequency baseband signal to be transmitted into a medium-high frequency signal. The demodulator is used to demodulate a received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to a baseband processor for processing. The low-frequency baseband signal processed by the baseband processor is transmitted to an application processor. The application processor outputs a sound signal through an audio device (not limited to loudspeaker 170A, microphone 170B, etc.), or displays an image or video through display screen 194. In some embodiments, the modem processor can be a separate device. In some other embodiments, the modem processor can be independent of processor 110, and arranged in the same device as mobile communication module 150 or other functional modules.

[0177] The wireless communication module 160 can provide a solution for wireless communication including wireless local area networks (WLAN) (e.g., wireless fidelity (Wi-Fi) network), Bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR) technology, etc. applied to the electronic device 100. The wireless communication module 160 can be one or more devices that integrate at least one communication processing module. The wireless communication module 160 receives an electromagnetic wave via the antenna 2, frequency-modulates and filters the electromagnetic wave signal, and transmits the processed signal to the processor 110. The wireless communication module 160 can also receive a signal to be transmitted from the processor 110, frequency-modulate it, amplify it, and radiate it as an electromagnetic wave via the antenna 2.

[0178] In some embodiments, the antenna 1 and the mobile communication module 150 of the electronic device 100 are coupled, and the antenna 2 and the wireless communication module 160 are coupled, so that the electronic device 100 can communicate with a network and other devices through wireless communication technology. The wireless communication technology can include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, and / or IR technology, etc. The GNSS can include a global positioning system (GPS), a global navigation satellite system (GLONASS), a beidu navigation satellite system (BDS), a quasi-zenith satellite system (QZSS), and / or a satellite based augmentation systems (SBAS).

[0179] The electronic device 100 implements a display function through a GPU, a display 194, and an application processor, etc. The GPU is a microprocessor for image processing, connected to the display 194 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 110 can include one or more GPUs that execute program instructions to generate or change display information.

[0180] The display 194 is used to display images, videos, etc.

[0181] The electronic device 100 can implement a photographing function through an ISP, a camera 193, a video codec, a GPU, a display 194, and an application processor, etc.

[0182] The ISP is used to process data fed back by the camera 193.

[0183] The camera 193 is used to capture still images or videos.

[0184] The digital signal processor is used to process digital signals, in addition to being able to process digital image signals, it can also process other digital signals. For example, when the electronic device 100 is in frequency point selection, the digital signal processor is used to perform Fourier transform on the frequency point energy, etc.

[0185] The video codec is used to compress or decompress digital videos. The electronic device 100 can support one or more video codecs. In this way, the electronic device 100 can play or record videos in multiple encoding formats, such as: moving picture experts group (MPEG) 1, MPEG 2, MPEG 3, MPEG 4, etc.

[0186] The NPU is a neural-network (NN) computing processor, which can quickly process input information by drawing on the structure of biological neural networks, such as drawing on the transmission mode between human brain neurons, and can also constantly self-learn. Through the NPU, the electronic device 100 can realize intelligent cognitive applications, such as: image recognition, face recognition, voice recognition, text understanding, etc.

[0187] The internal memory 121 can include one or more random access memories (RAMs) and one or more non-volatile memories (NVMs).

[0188] The random access memory can include static random-access memory (SRAM), dynamic random access memory (DRAM), synchronous dynamic random access memory (SDRAM), double data rate synchronous dynamic random access memory (DDR SDRAM, such as the fifth generation DDR SDRAM commonly referred to as DDR5 SDRAM), etc.

[0189] The non-volatile memory can include magnetic disk storage devices, flash memories.

[0190] The external memory interface 120 can be used to connect an external nonvolatile memory, to extend the storage capacity of the electronic device 100. The external nonvolatile memory communicates with the processor 110 through the external memory interface 120, to implement a data storage function. For example, files such as music, video, and the like are saved in the external nonvolatile memory.

[0191] The electronic device 100 can implement an audio function through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, an application processor, and the like. For example, music playback, recording, and the like.

[0192] The audio module 170 is used to convert digital audio information into an analog audio signal output, and is also used to convert an analog audio input into a digital audio signal. The audio module 170 can also be used to encode and decode an audio signal. In some embodiments, the audio module 170 can be disposed in the processor 110, or part of the functions of the audio module 170 can be disposed in the processor 110.

[0193] The speaker 170A, also called a "loudspeaker", is used to convert an audio electrical signal into a sound signal.

[0194] The receiver 170B, also called an "earpiece", is used to convert an audio electrical signal into a sound signal.

[0195] The microphone 170C, also called a "microphone", "sound transducer", is used to convert a sound signal into an electrical signal.

[0196] The earphone interface 170D is used to connect a wired earphone.

[0197] The pressure sensor 180A is used to sense a pressure signal, and can convert the pressure signal into an electrical signal. The gyroscope sensor 180B can be used to determine the motion posture of the electronic device 100. The barometric sensor 180C is used to measure air pressure. The magnetic sensor 180D includes a Hall sensor. The acceleration sensor 180E can detect the magnitude of acceleration of the electronic device 100 in various directions (generally three axes). The distance sensor 180F is used to measure distance. The proximity light sensor 180G can include, for example, a light emitting diode (LED) and a light detector, such as a photodiode. The ambient light sensor 180L is used to sense ambient light brightness. The fingerprint sensor 180H is used to collect a fingerprint. The temperature sensor 180J is used to detect temperature. The touch sensor 180K, also called a "touch device". The bone conduction sensor 180M can acquire a vibration signal.

[0198] The key 190 includes a power-on key, a volume key, and the like. The key 190 can be a mechanical key. It can also be a touch key.

[0199] The motor 191 can generate a vibration prompt. The motor 191 can be used for incoming call vibration prompt, and can also be used for touch vibration feedback. For example, touch operations acting on different applications (such as taking pictures, playing audio, etc.) can correspond to different vibration feedback effects. Touch operations acting on different regions of the display screen 194 can also correspond to different vibration feedback effects of the motor 191.

[0200] The indicator 192 can be an indicator light, which can be used to indicate a charging state, a power change, and can also be used to indicate a message, a missed call, a notification, etc.

[0201] The SIM card interface 195 is used to connect a SIM card.

[0202] The software system of the electronic device 100 can adopt a layered architecture, an event-driven architecture, a microkernel architecture, a microservice architecture, or a cloud architecture. Embodiments of the present application take an Android system with a layered architecture as an example to exemplarily illustrate the software structure of the electronic device 100.

[0203] Figure 6B is a software structure block diagram of the electronic device 100 of embodiments of the present application.

[0204] The layered architecture divides software into several layers, each layer has a clear role and division of labor. Layers communicate with each other through software interfaces. In some embodiments, the Android system is divided into four layers, from top to bottom, the application layer, the application framework layer, the Android runtime and the system library, and the kernel layer.

[0205] The application layer can include a series of application packages.

[0206] As shown in Figure 6B , the application package can include camera, gallery, calendar, call, map, navigation, WLAN, Bluetooth, music, video, short message, etc.

[0207] The application framework layer provides application programming interfaces (APIs) for the applications of the application layer. The application framework layer includes some pre-defined functions.

[0208] As shown in Figure 6B , the application framework layer can include a unified data management framework (UDMF), a plurality of types of data sharing paths, etc.

[0209] The unified data management framework includes a plurality of functional modules, which include but are not limited to a data definition standard model, a data access / access module, a data life cycle management module, a data security module, a data permission management module, a storage management module, and the like.

[0210] The types of data sharing paths include but are not limited to a drag path, a clipboard path, a cross-application manual path, a cross-device manual path, a cross-application automatic path, and a cross-device automatic path, and the like. The drag path, the clipboard path, the cross-application manual path, and the cross-application automatic path can be used for data sharing paths between two applications on the same device. The drag path, the clipboard path, the cross-device manual path, and the cross-device automatic path can be used for data sharing paths between two applications on different devices. The data sharing paths are not limited to the above. In some embodiments, data sharing between two applications on the same device or between two applications on different devices can also be achieved without the above data sharing paths, and the above data sharing paths are only used to introduce the present application, which is not limited in the present application.

[0211] Optionally, in some embodiments, the data sharing paths between two applications on the same device, such as the drag path and the clipboard path, and the data sharing paths between two applications on different devices, such as the drag path and the clipboard path, can be the same path or different paths, which is not limited in the present application.

[0212] The data definition standard model stores a specified data definition standard. The specified data definition standard is used by each application to define the shared data according to the standard.

[0213] The data access / access module is configured to receive the redefined shared data sent by the application and temporarily store the redefined shared data in the unified data management framework.

[0214] The data access / access module is further configured to read the redefined shared data from the unified data management framework by the application.

[0215] The data life cycle management module is configured to manage the life cycle of the redefined shared data stored in the unified data management framework, such as deleting the redefined shared data or continuing to store the redefined shared data, and the like.

[0216] The data security module is configured to protect the security of the redefined shared data stored in the unified data management framework, such as security protection by encryption storage and the like.

[0217] The data permission management module is configured to verify whether the application has the ability and the permission to access the redefined shared data before the application reads the redefined shared data from the unified data management framework.

[0218] A storage management module is configured to temporarily store the redefined shared data.

[0219] For the introduction of the various functional modules in the unified data management framework, please refer to the detailed description in the embodiments. Figures 7-10 The present application will not be described here again.

[0220] The Android Runtime includes a core library and a virtual machine. The Android runtime is responsible for the scheduling and management of the Android system.

[0221] The core library includes two parts: one part is the function function called by the java language, and the other part is the core library of Android.

[0222] The application layer and the application framework layer run in the virtual machine. The virtual machine executes the java file of the application layer and the application framework layer into a binary file. The virtual machine is used to execute the management of the object life cycle, the stack management, the thread management, the security and the exception management, and the garbage collection and the like.

[0223] The system library can include a plurality of functional modules. For example: a surface manager, media libraries, a three-dimensional graphics processing library (for example: OpenGL ES), a 2D graphics engine (for example: SGL) and the like.

[0224] The surface manager is used for managing the display subsystem, and provides a plurality of applications with the fusion of 2D and 3D layers.

[0225] The media library supports a plurality of commonly used audio, video format playback and recording, and static image files and the like. The media library can support a plurality of audio and video coding formats, for example: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG and the like.

[0226] The three-dimensional graphics processing library is used to realize three-dimensional graphics drawing, image rendering, synthesis, and layer processing and the like.

[0227] The 2D graphics engine is a drawing engine for 2D drawing.

[0228] The kernel layer is a layer between hardware and software. The kernel layer at least includes a display driver, a camera driver, an audio driver, and a sensor driver.

[0229] The introduction of the specified data definition standard and the definition of the shared data based on the specified data definition standard.

[0230] First, the specified data definition standard stored in the data definition standard model in the unified data management framework is introduced.

[0231] The specified data definition standard can include attribute definition of the data, which can include but is not limited to type definition, size definition, creation time definition, content definition, etc. of the data. Thus, the attribute definition of the shared data is the same for the sender and the receiver, and the processing flow of the data is reduced.

[0232] The application provides a data definition standard. Before data sharing, different applications need to define the shared data according to the standard. After receiving the shared data, different applications also need to parse the shared data based on the standard. That is, the data definition standard is uniform for different applications and different sharing paths, and the format of the shared data is unified.

[0233] The type of the data can include but is not limited to pure text data, formatted text data, rich text data, link data, picture data, file data, media file data, folder data, application program project data, table data, etc. In other embodiments, other data can also be included, which is not limited in the application.

[0234] The following embodiments of the application take the attribute definition of the data including the type definition and the content definition of the data as an example for illustration.

[0235] Table 1

[0236]

[0237] As shown in Table 1, the text data and the file data can be referred to as basic data, which can realize cross-application, cross-device and cross-operating system flow. Or, the data capable of realizing cross-application, cross-device and cross-operating system flow is referred to as basic data.

[0238] The system self-defined data can realize cross-application and cross-device flow within the operating system. Or, the data capable of realizing cross-application and cross-device flow within the operating system is referred to as system self-defined data.

[0239] The application self-defined data can realize cross-device and cross-operating system flow within the application. Or, the data capable of realizing cross-device and cross-operating system flow within the application is referred to as system self-defined data.

[0240] As shown in Table 1, the type definition of the pure text data defined in the specified data definition standard is “plain-text”, and the content definition of the pure text data is pure text content. The type definition of the pure text data can be represented as text.plain-text.

[0241] The type definition of the styled text data defined in the data definition standard is designated as "styled text", and the content definition of the styled text data is defined as plain text content. The type definition of the styled text data can be expressed as text.styled text.

[0242] The type definition of the rich text data defined in the data definition standard is designated as "HTML", and the content definition of the rich text data is defined as plain text content. The type definition of the rich text data can be expressed as text.HTML.

[0243] The type definition of the link data defined in the data definition standard is designated as "link", and the content definition of the link data is defined as plain text content. The type definition of the link data can be expressed as text.link.

[0244] The type definition of the picture data defined in the data definition standard is designated as "image", and the content definition of the picture data is defined as URI. The URI of the picture data is used to indicate the storage path of the picture data on the device. The type definition of the picture data can be expressed as file.image.

[0245] The type definition of the video data defined in the data definition standard is designated as "video", and the content definition of the video data is defined as URI. The URI of the video data is used to indicate the storage path of the video data on the device. The type definition of the video data can be expressed as file.video.

[0246] The type definition of the audio data defined in the data definition standard is designated as "audio", and the content definition of the audio data is defined as URI. The URI of the audio data is used to indicate the storage path of the audio data on the device. The type definition of the audio data can be expressed as file.audio.

[0247] The type definition of the document data defined in the data definition standard is designated as "word", and the content definition of the document data is defined as URI. The URI of the document data is used to indicate the storage path of the document data on the device. The type definition of the document data can be expressed as file.word.

[0248] The type definition of the presentation file data defined in the data definition standard is designated as "powerpoint", and the content definition of the presentation file data is defined as URI. The URI of the presentation file data is used to indicate the storage path of the presentation file data on the device. The type definition of the presentation file data can be expressed as file.powerpoint.

[0249] The type definition of the table data defined in the data definition standard is specified as "excel", and the content of the table is defined as a URI. The URI of the table data is used to indicate the storage path of the table data on the device. The type definition of the table data can be represented as file.excel.

[0250] The type definition of the portable file format data defined in the data definition standard is specified as "pdf", and the content of the portable file format data is defined as a URI. The URI of the portable file format data is used to indicate the storage path of the portable file format data on the device. The type definition of the portable file format data can be represented as file.pdf.

[0251] The type definition of the desktop icon control defined in the data definition standard is specified as "appItem", and the content of the application item data is defined as plain text content. The type definition of the desktop icon control can be represented as SDT.appItem.

[0252] The type definition of the data card defined in the data definition standard is specified as "form", and the content of the window data is defined as plain text content. The type definition of the data card can be represented as SDT.form.

[0253] The type definition of the high-performance bitmap data defined in the data definition standard is specified as "pixelmap", and the content of the high-performance bitmap data is defined as plain text content. The type definition of the high-performance bitmap data can be represented as SDT.pixelmap.

[0254] The type definition of the application custom graphics data defined in the data definition standard is specified as "custom shape", and the content of the high-performance bitmap data is defined as plain text content. The type definition of the application custom graphics data can be represented as ADT.custom shape.

[0255] That is, for the same type of data, different applications have the same type definition for the type of data. For example, for picture data, different applications have the type definition of "image" for the picture data.

[0256] In the case of file data, the content definition of the data can include the URI of the data, and the URI of the data indicates the storage path of the data on the device. That is, when the content definition of the data is a URI, the application can send the storage path of the data to another application, rather than directly sending the content of the data to another application. Another application can obtain the content of the data based on the URI of the data when using the data.

[0257] In the case that the type of the data is non-file data, the content definition of the data can include text content of the data. That is, when the content definition of the data is pure text content, the application can directly send the content of the data to another application.

[0258] It should be noted that Table 1 only exemplarily shows the standard type definition and the standard content definition of part of the data. There can be many other standard type definitions and standard content definitions of the data, which are not limited by the present application.

[0259] Optionally, before the application A sends the redefined sharing data to the sharing path, a uniform management protocol of the sharing data is generated, and the uniform management protocol of the sharing data is used to describe the sharing path of the sharing data.

[0260] The application A can obtain a uniform management protocol standard from the uniform data management framework, and generate the uniform management protocol of the sharing data based on the uniform management protocol standard. The uniform management protocol standard can include a preset field.

[0261] Exemplarily, the uniform management protocol standard can be as follows: udmf: / / intension / bundleName / groupName / guid.

[0262] The "udmf" field can be a protocol name, which is an abbreviation of the uniform data management framework.

[0263] The "intension" field can be the name of the sharing path. When the sharing data is determined by non-user operation, the "intension" field can be the name of the cross-application automatic channel or the cross-device automatic path. For example, the name of the cross-application automatic channel can be automatic 1, and the name of the cross-device automatic path can be automatic 2. When the sharing data is determined by user operation, the "intension" field can be the name of the drag path, the name of the clipboard path, the name of the cross-application manual path, and the name of the cross-device manual path. For example, the name of the drag path can be drag, the name of the clipboard path can be clipboard, the name of the cross-application manual path can be manual 1, and the name of the cross-device manual path can be manual 2.

[0264] It should be noted that the "intension" field can also include the names of other sharing paths, and the above-mentioned names of the sharing paths are only used to explain the present application, which are not limited by the present application.

[0265] It should be noted that the name of the drag path and the name of the clipboard path between two applications on the same device can be the same as or different from the name of the drag path and the name of the clipboard path between two applications on different devices.

[0266] The "bundleName" field can be a data source industry name, for example, the name of an application.

[0267] The "groupName" field can be a group name. An application can share multiple data at a time, and the multiple data belong to a group. The group names of the grouped data are different.

[0268] The "guid" field can be a system-generated data ID. The data ID of each data is different, and is used to identify different data in the same group.

[0269] The unified management protocol standard can also include other fields or other formats, which are not limited by the present application.

[0270] Application A can generate a unified management protocol of shared data based on the unified management protocol standard. Application A can also generate a usage instruction of the shared data based on the specified data definition standard, and application A sends the unified management protocol of the shared data and the usage instruction of the shared data to the unified data management framework. The unified data management framework can bind and store the unified management protocol of the shared data and the usage instruction of the shared data. For example, the unified management protocol of the shared data and the usage instruction of the shared data can be stored in the format of key-value, and the unified data management framework can obtain the usage instruction of the shared data based on the unified management protocol of the shared data.

[0271] Optionally, the usage instruction of the shared data can also be generated by application A based on the specified data definition standard. That is, the multiple fields in the usage instruction of the shared data are limited in the specified data definition standard.

[0272] The usage instruction of the shared data can include multiple fields, such as the "peimission" field, the "sourceapp" field, the "source os" field, and the "data type" field.

[0273] The "permission" field can be a personalized permission instruction of the data. The personalized permission of the data can include public permission, system permission, and application permission.

[0274] The public permission can mean that the data is a permission-free data, and any application, any device, and any operating system can use the data with public permission. The identifier of the public permission can be public.

[0275] System permissions refer to the ability of devices with a fixed operating system installed to use the data. A fixed operating system can include, but is not limited to: Etc. System permission identifiers can be... Any one of them.

[0276] Application permissions specify which data a target application on the device can use. The identifier for application permissions can be the name of the target application.

[0277] The `sourceapp` field is used to specify which application the shared data originates from. The `sourceapp` field can include the application identifier of the application from which the shared data originates. For example, when the data is application-defined, such as application-defined graphics, application A can fill in the application identifier of the application from which this application-defined data originates in the `sourceapp` field.

[0278] The `source os` field specifies the operating system from which the shared data originates. This field can include the operating system identifier of the source operating system. For example, when the data is system-defined, such as desktop icon controls, data cards, and high-performance bitmaps, application A can enter the operating system identifier installed on the electronic device on which application A is installed in the `source os` field.

[0279] For example, when the data is basic data such as text data and file data, application A can also fill in the application identifier of the source application in the sourceapp field and the operating system identifier of the source operating system in the source os field.

[0280] The `sourceapp` and `sourceos` fields, managed by the unified user data framework, determine whether application B has the ability to access the data. For specific judgment rules, please refer to [link / reference needed]. Figure 8 The description of step 2 is omitted here.

[0281] The data type field is used to describe the type of data being shared. For example, when sharing images, the data type field can include the image type "file.image".

[0282] Optionally, the user manual for sharing data may also include a life field, which describes the lifecycle of the data.

[0283] Optionally, in other embodiments, one or more fields in the usage description of the sharing data can also be incorporated in the unified management protocol of the sharing data, and the personalized permission of the sharing data, the application from which the sharing data originates, the operating system from which the sharing data originates, and the type of the sharing data can be described by the unified management protocol of the sharing data. The present application does not limit this.

[0284] Different applications on the device can set different personalized permissions for different data within the application. The personalized permission of the sharing data can be described based on the "permission" field.

[0285] For example, the personalized permission of the pure text data, the formatted text data, the rich text data, the link data, the picture data, the video data, the audio data, the document data, the presentation file data, the table data, and the portable file format data can be set as public permission.

[0286] The personalized permission of the application program item data, the window data, and the high-performance bitmap data can be set as system permission.

[0287] The personalized permission of the application custom data can be set as application permission.

[0288] For example, before the first data in the application A on the electronic device 100 is shared to the application B on the electronic device 200 or the application B on the electronic device 100, the application A needs to define the first data based on the specified data definition standard to obtain the redefined first data. The application A also needs to generate the unified management protocol of the first data based on the unified management protocol standard and the usage description of the first data based on the specified data definition standard, so that the receiver can obtain the sharing path of the first data based on the unified management protocol of the first data, and the receiver can obtain the personalized permission of the first data based on the usage description of the first data.

[0289] For example, when the first data is a picture, the redefined first data can include the type definition of the first data and the content definition of the first data. The type definition of the first data can be "image", the content definition of the first data can be "the URI of the first data", the unified management protocol of the first data can be "udmf: / / drag / library application / 123 / 123456". The usage description of the first data can be "The first data is a picture, and the URI of the first data is / library application / / file.image".

[0290] For example, when the first data is plain text, redefining the first data can include defining its type and content. The type definition of the first data could be "plain-text," and the content definition could be "Department meeting at 4 PM." The sharing protocol for the first data could be "udmf: / / drag / wechatapplication / 123 / 123456 / ". The instructions for using the first data can be: / wechatapplication / / text.plain-text.

[0291] Based on the unified management protocol of First Data, the sharing path of First Data can be determined as a drag-and-drop path.

[0292] Based on the user manual for First Data, it can be seen that the personalized permissions for First Data are limited to those of devices that have been installed. The operating system's devices can use the first data.

[0293] Optionally, in other embodiments, one or more fields in the usage instructions of the first data may also be incorporated into the unified management protocol of the first data. The unified management protocol of the first data can then be used to describe the personalized permissions of the first data, the application from which the first data originates, the operating system from which the first data originates, and the type of the first data. This application does not limit this aspect.

[0294] The following sections will introduce the specific implementation of data sharing scenarios between two applications on the same device and between two applications on different devices.

[0295] Data sharing between two applications on the same device Figure 7 and Figure 8 )

[0296] For example, these two applications can be application A on electronic device 100 and application B on electronic device 100. In some embodiments, application A can receive a user's operation to share first data in application A to application B. In other embodiments, application A can also automatically share the first data in application A to application B.

[0297] Figure 7 This diagram illustrates a specific implementation of a unified data management framework for storing first data shared by application A on electronic device 100.

[0298] The steps for storing the first data shared by application A using the unified data management framework are as follows (steps 1-18):

[0299] 1. Application A obtains the unified management protocol standard and the specified data definition standard from the data definition standard model.

[0300] Application A can obtain the unified management protocol standard and the specified data definition standard from the data definition standard model after being installed on the electronic device 100. Application A can also obtain the unified management protocol standard and the specified data definition standard from the data definition standard model when data needs to be shared. The present application does not limit this.

[0301] In some embodiments, the unified management protocol standard and the specified data definition standard can also be one protocol standard.

[0302] 2. Application A determines the first data to be shared.

[0303] In some embodiments, application A can determine the first data to be shared based on user operation. In this case, application A can share data with other applications on the electronic device 100 under the operation of the user.

[0304] In other embodiments, application A can also automatically determine the first data to be shared without user operation. In this case, application A can automatically share data with other applications on the electronic device 100.

[0305] 3. Application A defines the first data based on the specified data definition standard to obtain the redefined first data.

[0306] For the introduction of the specified data definition standard, please refer to the description in Table 1.

[0307] The present application provides a set of data definition standards. Different applications can define shared data based on the unified data definition standard before the application shares data, and the receiver of the shared data can also parse the shared data based on the unified data definition standard. This reduces the processing flow of data transmission and reception.

[0308] In other embodiments, it is not limited to defining shared data according to the unified data definition standard, but can also instruct the application to define data within the application according to the unified data definition standard when generating application data. In this way, after the application determines the shared data, the shared data has already been defined according to the unified data definition standard, and the application does not need to be defined again.

[0309] Application A defines the first data based on the specified data definition standard, which can be that application A defines the properties of the first data based on the specified data definition standard, including but not limited to the type definition of the first data, the size definition of the first data, the creation time definition of the first data, the content definition of the first data, etc.

[0310] For example, when the first data is non-text data (or file data), such as a picture, redefining the first data can include a type definition of the first data and a content definition of the first data. The type definition of the first data can be "image", and the content definition of the first data can be "URI of the first data".

[0311] For another example, when the first data is text data, redefining the first data can include a type definition of the first data and a content definition of the first data. The type definition of the first data can be "plain-text", and the content definition of the first data can be "department meeting at 4 pm".

[0312] 4. Application A generates a unified management protocol of the first data and a usage instruction of the first data.

[0313] Application A can generate the unified management protocol of the first data based on a unified management protocol standard and generate the usage instruction of the first data based on a specified data definition standard. The unified management protocol of the first data describes a sharing path of the first data, and the usage instruction of the first data describes a personalized right of the first data. For introduction of the unified management protocol standard, reference can be made to the description in Table 1, which will not be repeated here.

[0314] For example, if the sharing path of the first data is a drag path, and the personalized right of the first data is an application installed on a device running an operating system can use the first data. Then the unified management protocol of the first data can be "udmf: / / drag / library application / 123 / 123456". The usage instruction of the first data can be "library application / 123 / 123456". / library application / / file.image".

[0315] It should be noted that step 4 can also be performed before step 3, and step 4 can also be performed simultaneously with step 3. Step 1 can also be performed after step 2, which is not limited in the present application.

[0316] 5. Application A sends the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data to the data access / access module.

[0317] After obtaining the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data, application A sends the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data to the data access / access module in the unified data management framework, so that the data access / access module can check the redefined first data.​

[0318] 6、The data access / access module obtains the specified data definition standard from the data definition standard model.

[0319] 7、The data access / access module checks the redefined first data based on the specified data definition standard, and determines that the definition of the redefined first data meets the requirements.

[0320] After obtaining the redefined first data sent by the application A, the application A can obtain the specified data definition standard from the data definition standard model, and check the redefined first data based on the specified data definition standard. The main purpose is to check whether the redefined first data is defined according to the unified data management framework. Only the data that passes the check can be shared to other applications through the unified data management framework, so as to avoid the situation that the application A does not define the first data according to the specified data definition standard.

[0321] The rules for the data access / access module to check the redefined first data based on the specified data definition standard are as follows:

[0322] Whether the redefined first data is defined according to the data attribute definition and data content definition specified in the specified data definition standard. For example, when the first data is picture data, the type definition of the picture data included in the redefined first data is “image” instead of “picture”. The content definition of the picture data included in the redefined first data is the URI of the picture data, instead of including the picture file. According to this rule, the data access / access module can determine that the definition of the first data meets the requirements.

[0323] In other embodiments, the data access / access module can also check the unified management protocol of the first data and the usage description of the first data. Specifically, the data access / access module can obtain the unified management protocol standard from the data definition standard model, and check the unified management protocol of the first data and the usage description of the first data based on the unified management protocol standard.

[0324] The rules for the data access / access module to check the unified management protocol of the first data and the usage description of the first data based on the unified management protocol standard are as follows:

[0325] Whether the unified management protocol of the first data and the usage description of the first data include the preset fields included in the unified management protocol standard and the specified data definition standard. Whether the content is filled in each preset field, and the like.

[0326] 8、The data access / access module sends the redefined first data to the data security module.

[0327] In case that the data access / access module determines that the redefined definition of the first data meets the requirement, the data access / access module sends the redefined first data to the data security module. In case that the requirement is not met, the data access / access module can not perform step 8, step 13 and step 15, and the data access / access module can prompt the application A that the data sharing fails. The data access / access module can also prompt the application A to redefine the first data according to the specified data definition standard.

[0328] 9、The data security module encrypts the redefined first data to obtain encrypted redefined first data.

[0329] 10、The data security module sends the encrypted redefined first data to the storage management module.

[0330] 11、The storage management module stores the encrypted redefined first data.

[0331] After the data access / access module passes the verification of the redefined first data, or the unified management protocol of the first data also passes the verification, the data access / access module can send the redefined first data to the data security module, so that the data security module encrypts the redefined first data to ensure the security of the data stored in the unified data management framework.

[0332] After receiving the redefined first data, the data security module can encrypt the redefined first data to obtain encrypted redefined first data.

[0333] The data security module sends the encrypted redefined first data to the storage management module.

[0334] The storage management module can store the encrypted redefined first data.

[0335] Optionally, the data access / access module can also store the unified management protocol of the first data and the usage instruction of the first data in the storage management module, or store them in the storage management module after encryption by the data security module.

[0336] Optionally, the unified data management framework can also not include the data security module. After the data access / access module passes the verification of the redefined first data, the data access / access module can directly send the redefined first data to the storage management module, and the storage management module only needs to store the redefined first data.

[0337] 12、The data access / access module sends the unified management protocol of the first data and the usage instruction of the first data to the data authority management module.

[0338] 13、The data permission management module obtains the personalized permission of the first data based on the usage instruction of the first data.

[0339] The data access / access module can also send the unified management protocol of the first data and the usage instruction of the first data to the data permission management module,

[0340] The data permission management module can obtain the personalized permission of the first data based on the usage instruction of the first data. Subsequently, the personalized permission of the first data can be used to verify whether the application using the first data has the permission.

[0341] Optionally, the "peimission" field of the usage instruction of the first data describes the personalized permission of the first data. The personalized permission of the first data includes but is not limited to public permission, system permission, application permission, etc.

[0342] The data permission management module can obtain the personalized permission of the first data from the usage instruction of the first data.

[0343] 14、The data permission management module can determine the usage permission of the first data based on the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework.

[0344] The personalized permission of the first data includes but is not limited to public permission, system permission, application permission, etc.

[0345] The permission rule of the sharing path of the first data includes but is not limited to that the target application can use the first data.

[0346] The permission rule of the unified data management framework includes but is not limited to that all or part of the applications on the device can use the first data.

[0347] The priority of the personalized permission of the first data is higher than that of the permission rule of the sharing path of the first data, and the priority of the permission rule of the sharing path of the first data is higher than that of the permission rule of the unified data management framework.

[0348] The data permission management module can determine the usage permission of the first data based on the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework.

[0349] The usage permission of the first data can be that one or more applications on the electronic device 100 can use the first data.

[0350] Specifically, when the personalized permission of the first data is limited to be a public permission in the usage instruction of the first data, the usage permission of the first data is the personalized permission of the first data in the usage instruction of the first data.

[0351] When the personalized permission of the first data is limited to be a public permission in the usage instruction of the first data, the permission rule of the sharing path of the first data is further queried. As described above, the sharing path between two applications on the same device includes but is not limited to a drag path, a clipboard path, a cross-application manual path and a cross-application automatic path. The drag path, the clipboard path and the cross-application manual path limit that the first data can only be used by the target application. For example, the user shares the first data in application A to application B through the drag path, and the drag path limits that the first data can only be used by application B. The clipboard path and the cross-application manual path are similar to the drag path. The cross-application automatic path limits that the first data can be used by all or part of the applications on the device, that is, the permission of the cross-application automatic path is a public permission without usage permission limitation.

[0352] When the sharing path of the first data is not the cross-application automatic path, the permission specified by the sharing path of the first data is used as the usage permission of the first data.

[0353] When the sharing path of the first data is the cross-application automatic path, the permission rule of the unified data management framework is further queried. The usage permission of the first data is the permission rule of the unified data management framework. If the permission rule of the unified data management framework is a public permission without usage permission limitation, the first data can be used by all applications on the electronic device 100. If the permission rule of the unified data management framework is that the first data can be used by part of the applications on the electronic device 100.

[0354] It should be noted that the personalized permission of the first data, the permission rule of the sharing path of the first data and the permission rule of the unified data management framework can be preset or customized by the user, and the present application does not limit this.

[0355] It should be noted that steps 12-14 can be executed before, after or at the same time as step 8, and the present application does not limit this.

[0356] 15、The data access / access module sends the unified management protocol of the first data and the usage instruction of the first data to the data life cycle management module.

[0357] 16. The data lifecycle management module determines the lifecycle of the first data based on the lifecycle rule of the first data, the lifecycle rule of the sharing path of the first data, and the lifecycle rule of the unified data management framework.

[0358] 17. The data lifecycle management module sends a notification to the storage management module based on the lifecycle of the first data.

[0359] 18. The storage management module continues to store or delete the encrypted redefined first data.

[0360] The data lifecycle management module can determine whether the storage management module continues to save the encrypted redefined first data or deletes the encrypted redefined first data based on the determined lifecycle of the first data.

[0361] The lifecycle rule of the first data includes but is not limited to immediate deletion or permanent saving. The lifecycle of the first data that is not used is permanent saving. The lifecycle of the first data that is used is immediate deletion.

[0362] The lifecycle rule of the sharing path of the first data includes but is not limited to periodic cleaning or permanent saving.

[0363] The permission rule of the unified data management framework includes but is not limited to periodic cleaning or permanent saving.

[0364] The priority of the lifecycle rule of the first data is higher than the priority of the lifecycle rule of the sharing path of the first data, and the priority of the lifecycle rule of the sharing path of the first data is higher than the priority of the lifecycle rule of the unified data management framework.

[0365] The data lifecycle management module can determine the lifecycle of the first data based on the lifecycle rule of the first data, the lifecycle rule of the sharing path of the first data, and the lifecycle rule of the unified data management framework.

[0366] Specifically, when the first data has been used, the lifecycle rule of the first data is immediate deletion. The data lifecycle management module can not need to query the lifecycle rule of the sharing path of the first data and the lifecycle rule of the unified data management framework. The data lifecycle management module can send a message to the storage management module, and the storage management module can delete the encrypted redefined first data.

[0367] When the first data is not used, the lifecycle rule of the first data is to continue to save. Then the data lifecycle management module can continue to query the lifecycle rule of the sharing path of the first data.

[0368] When the life cycle rule of the sharing path of the first data is periodic cleaning, the data life cycle management module can send a message to the storage management module when the time period of storing the encrypted redefined first data reaches the preset time period and the first data is not used, and the storage management module can delete the encrypted redefined first data.

[0369] Optionally, the periodic cleaning rules of different sharing paths are different or can be the same. For example, the preset time period of the drag path is 1 hour, and the preset time period of the clipboard path is 2 hours.

[0370] Optionally, the life cycle rules of different sharing paths are different or can be the same. For example, the life cycle rule of the drag path includes but is not limited to periodic cleaning or permanent storage, and the life cycle rule of the clipboard path includes but is not limited to one or more of write-time overwrite, periodic cleaning, or permanent storage.

[0371] When the life cycle rule of the sharing path of the first data is permanent storage, the data life cycle management module can continue to query the life cycle rule of the unified data management framework.

[0372] When the life cycle rule of the unified data management framework is permanent storage, the storage management module can continue to store the encrypted redefined first data. When the life cycle rule of the unified data management framework is periodic cleaning, the data life cycle management module can send a message to the storage management module when the time period of storing the encrypted redefined first data reaches the preset time period and the first data is not used, and the storage management module can delete the encrypted redefined first data.

[0373] It should be noted that the life cycle rule of the first data, the life cycle rule of the sharing path of the first data, and the life cycle rule of the unified data management framework can be preset or user-defined, and the present application does not limit the same.

[0374] It should be noted that steps 15-18 can be executed before, after, or at the same time as step 8, and the present application does not limit the same.

[0375] Through the data life cycle management module, the data stored in the storage management module can be managed. On the one hand, the data that has been used can be cleaned periodically to release memory. On the other hand, the data that has not been used for a long time can be cleaned in time to ensure the safety of the data and avoid data leakage.

[0376] Figure 7 The steps in the method are only used to describe the specific implementation of how the unified data management framework stores the first data shared by the application A, but should not limit the execution steps of the steps.

[0377] Figure 8 A specific implementation diagram is shown to illustrate how application B on the electronic device 100 reads the first data shared by application A from the unified data management framework.

[0378] For example, after application A on the electronic device 100 stores the first data to be shared in the storage management module of the unified data management framework, application B on the electronic device 100 can obtain the first data from the storage management module of the unified data management framework, thereby realizing data sharing between two applications on the same device.

[0379] The method steps in which application B reads the first data shared by application A from the unified data management framework are as follows (step 1-step 11):

[0380] 1. Application B sends a read notification to the data permission management module.

[0381] The read notification is used to read the first data shared by application A from the unified data management framework.

[0382] Optionally, the read notification can carry the application identifier of application B, so that the data permission management module verifies whether application B has the permission to access the first data shared by application A.

[0383] 2. The data permission management module verifies whether application B has the permission to use the first data.

[0384] In the case where application B has the permission to use the first data, step 4 is performed.

[0385] In the case where application B does not have the permission to use the first data, the process ends.

[0386] From step 14 in the embodiment, Figure 7 As can be known from step 14 in the embodiment, the data permission management module can determine the permission to use the first data based on the individualized permission of the first data, the permission rules of the sharing path of the first data, and the permission rules of the unified data management framework. Specifically, reference can be made to the description of step 14 in the embodiment. Figure 7 As can be known from step 14 in the embodiment, the data permission management module can determine the permission to use the first data based on the individualized permission of the first data, the permission rules of the sharing path of the first data, and the permission rules of the unified data management framework. Specifically, reference can be made to the description of step 14 in the embodiment.

[0387] First, the data permission management module can determine whether application B has the ability to use the first data based on the usage specification of the first data. In the case where application B has the ability to use the first data, the data permission management module determines whether application B has the permission to use the first data based on the permission to use the first data. In the case where application B has the permission to use the first data, the data permission management module sends a notification to the data access / access module, which is used to instruct the data access / access module to send the redefined first data to application B.

[0388] The data permission management module determines whether the application B has the ability to use the first data, and specifically includes:

[0389] The data permission management module obtains the type of the first data from the usage description of the first data. The type of the first data includes but is not limited to a basic class, a system custom class, and an application custom class.

[0390] The data permission management module further obtains the application source or the operating system source of the first data based on the type of the first data.

[0391] In the case of the data permission management module being the basic class, it is indicated that the first data is available to any operating system, any application, and any device. At this time, the data permission management module does not need to determine the application source or the operating system source of the first data, and directly determines whether the application B has the permission to use the first data based on the usage permission of the first data.

[0392] In the case of the data permission management module being the system custom class, the data permission management module further obtains the operating system source of the first data, and only the application on the device installed with the same operating system as the operating system source can use the first data. For example, the operating system source is If the device on which the application B is installed is also installed with the operating system, the application B has the ability to use the first data, and the data permission management module further determines whether the application B has the permission to use the first data based on the usage permission of the first data. If the device on which the application B is installed is not installed with the operating system, the application B does not have the ability to use the first data. The data permission management module also does not need to determine whether the application B has the permission to use the first data based on the usage permission of the first data, and determines that the application B cannot use the first data.

[0393] In the case of the data permission management module being the application custom class, the data permission management module further obtains the application source of the first data, and only the application with the same application source can use the first data. In the case of the application B being the same as the application source or the application B being a family application with the application source, the application B has the ability to use the first data, and the data permission management module further determines whether the application B has the permission to use the first data based on the usage permission of the first data. If the application B is different from the application source or the application B is not a family application with the application source, the application B does not have the ability to use the first data. The data permission management module also does not need to determine whether the application B has the permission to use the first data based on the usage permission of the first data, and determines that the application B cannot use the first data.

[0394] In the case that the application B has the ability to use the first data, it is determined whether the application B has the permission to use the first data based on the usage permission of the first data. The usage permission of the first data includes one or more applications that can use the first data. When the one or more applications include the application B, it indicates that the application B has the permission to use the first data.

[0395] For example, when the usage permission of the first data is a public permission, the application B has the permission to use the first data.

[0396] When the usage permission of the first data is a channel permission (i.e., the target application sent through the sharing channel has the permission to use the first data). When the application B is the target application, the application B has the permission to use the first data. When the application B is not the target application, the application B does not have the permission to use the first data.

[0397] 3. The data permission management module sends a notification to the data access / access module.

[0398] The notification is used to instruct the data access / access module to select a corresponding sharing path to send the first data to the application B.

[0399] Optionally, the notification can include an identifier of the application B, so that the data access / access module can send the redefined first data based on the identifier of the application B to the application B through the corresponding sharing path after determining the sharing path.

[0400] 4. The data access / access module obtains the redefined first data from the storage management module.

[0401] Optionally, the data access / access module can obtain the redefined first data from the storage management module after receiving the first notification sent by the data permission management module.

[0402] 5. The data access / access module obtains the sharing path of the first data from the unified management protocol of the first data.

[0403] 6. The data access / access module selects a corresponding sharing path based on the sharing path of the first data.

[0404] Optionally, the data access / access module can obtain the unified management protocol of the first data from the storage management module.

[0405] Optionally, the data access / access module can obtain the unified management protocol of the first data from the storage management module after receiving the first notification sent by the data permission management module.

[0406] Optionally, the first data unified management protocol includes an "intension" field, and the "intension" field is used to fill in the name of the sharing path. Therefore, the data access / access module obtains the sharing path of the first data from the first data unified management protocol.

[0407] Specifically, when the name of the sharing path filled in the "intension" field is automatic1, the sharing path of the first data can be a cross-application automatic path.

[0408] When the name of the sharing path filled in the "intension" field is clipboard, the sharing path of the first data can be a clipboard path.

[0409] When the name of the sharing path filled in the "intension" field is drag, the sharing path of the first data can be a drag path.

[0410] When the name of the sharing path filled in the "intension" field is manual 1, the sharing path of the first data can be a cross-application manual path.

[0411] After the data access / access module obtains the sharing path of the first data from the first data unified management protocol, the data access / access module can select the corresponding sharing path based on the sharing path of the first data, and send the first data to the target application through the corresponding sharing path.

[0412] Optionally, step 4 can also be executed before or after step 5 and step 6, or simultaneously, which is not limited in the present application. Step 4 can be executed before step 7.

[0413] For example, the data access / access module obtains the sharing path of the first data from the first data unified management protocol, which can be a drag path. Then the data access / access module can select the drag path.

[0414] 7、The data access / access module sends the redefined first data to the drag path in the drag channel.

[0415] For example, after the data access / access module selects the drag path, the data access / access module can send the redefined first data to the drag path in the drag channel.

[0416] Optionally, the data access / access module can also send the identifier of application B to the drag channel, so that the drag channel can send the redefined first data to application B based on the identifier of application B.

[0417] 8、The drag path sends the redefined first data to application B.

[0418] The drag path can send the redefined first data to the application B based on the identification of the application B after receiving the identification of the application B and the redefined first data sent by the data access / access module.

[0419] 9. The application B obtains the specified data definition standard from the data definition standard model.

[0420] 10. The application B parses the redefined first data based on the specified data definition standard to obtain the first data.

[0421] 11. The application B uses the first data.

[0422] After obtaining the redefined first data sent by the drag path, the application B can obtain the specified data definition standard from the data definition standard model.

[0423] That is, no matter whether it is a drag path, a cross-application manual path, or a cross-application automatic path, the application B only needs to obtain one data definition standard, that is, the specified data definition standard, and parse the redefined first data based on the specified data definition standard to obtain the first data. The application B can use the first data. The data sharing between two applications on the same device is realized.

[0424] The application B can use the first data, specifically including: in the case where the first data is text data, the application B on the electronic device 100 can directly obtain the text content of the first data from the first data and use the text content of the first data.

[0425] In the case where the first data is non-text data (or referred to as file data), when the application B on the electronic device 100 needs to use the first data, the application B on the electronic device 100 can obtain the URI of the first data from the first data, obtain the file data of the first data based on the URI of the first data, and use the file data of the first data.

[0426] Through Figure 11 The data sharing method between two applications on the same device provided by the embodiment is that different applications need to define the shared data according to the standard before sharing the data. After receiving the shared data, different applications also need to parse the shared data based on the standard. That is, the data definition standard is unified for different applications and different sharing paths, and the format of the shared data is unified.

[0427] 12. The data lifecycle management module determines that the redefined first data needs to be deleted.

[0428] 13. The data lifecycle management module sends a notification to the storage management module.

[0429] 14. The storage management module deletes the stored redefined first data.

[0430] Optionally, after the application B uses the first data, the data lifecycle management module can determine to delete the used redefined first data in time to avoid data leakage.

[0431] Specifically, after the application B uses the first data, the data lifecycle management module can send a notification to the storage management module. After receiving the notification, the storage management module can delete the stored redefined first data in response to the notification. In this way, the storage management module can delete the used redefined first data in time, which can avoid data leakage on the one hand, and can also release the memory occupied by the used redefined first data in time on the other hand.

[0432] It should be noted that, Figure 8 the steps are only used to describe the specific implementation of how the application B reads the first data from the unified data management framework, but should not limit the execution steps of the steps.

[0433] Data sharing between two applications on different devices Figure 9 and Figure 10

[0434] Illustratively, the different devices can be the electronic device 100 and the electronic device 200, and the two applications can be the application A on the electronic device 100 and the application B on the electronic device 200. In some embodiments, the application A on the electronic device 100 can receive the user's operation to share the first data in the application A to the application B on the electronic device 200. In other embodiments, the application A on the electronic device 100 can also automatically share the first data in the application A to the application B on the electronic device 200.

[0435] Figure 9 shows a specific implementation diagram of how the unified data management framework on the electronic device 200 stores the first data shared by the application A on the electronic device 100.

[0436] The method steps of how the unified data management framework on the electronic device 200 stores the first data shared by the application A are as follows (steps 1-20):

[0437] The electronic device 100 sends the first data in the application A to the electronic device 200 (steps 1-8).

[0438] The description of steps 1-6 can be referred to Figure 7 ​The description of steps 1-6 in the embodiment is not repeated herein.

[0439] Alternatively, the electronic device 100 can not perform steps 5 and 6, and steps 5 and 6 can be performed by the electronic device 200, which is not limited in the present application.

[0440] 7. The unified data management framework on the electronic device 100 sends the redefined first data, the unified management protocol of the first data, and the usage specification of the first data to the communication module on the electronic device 100.

[0441] 8. The communication module on the electronic device 100 is configured to send the redefined first data, the unified management protocol of the first data, and the usage specification of the first data to the communication module on the electronic device 200.

[0442] In this way, cross-device data sharing can be achieved.

[0443] 9. The communication module on the electronic device 200 sends the redefined first data, the unified management protocol of the first data, and the usage specification of the first data to the data access / access module in the unified data management framework on the electronic device 200.

[0444] 10. The data access / access module on the electronic device 200 sends the redefined first data to the data security module on the electronic device 200.

[0445] 11. The data security module on the electronic device 200 encrypts the redefined first data to obtain encrypted redefined first data.

[0446] 12. The data security module on the electronic device 200 sends the encrypted redefined first data to the storage management module on the electronic device 200.

[0447] 13. The storage management module on the electronic device 200 stores the encrypted redefined first data.

[0448] After receiving the redefined first data, the data security module on the electronic device 200 can encrypt the redefined first data to obtain encrypted redefined first data.

[0449] The data security module on the electronic device 200 sends the encrypted redefined first data to the storage management module.

[0450] The storage management module on the electronic device 200 can store the encrypted redefined first data.

[0451] Optionally, the data access / access module on the electronic device 200 can also store the unified management protocol of the first data and the usage specification of the first data in the storage management module on the electronic device 200, or store in the storage management module on the electronic device 200 after encryption by the data security module on the electronic device 200.

[0452] Optionally, the data security module on the electronic device 200 can also not be included in the unified data management framework on the electronic device 200. After the data access / access module on the electronic device 200 checks and passes the redefined first data, the data access / access module on the electronic device 200 can directly send the redefined first data to the storage management module on the electronic device 200, and the storage management module on the electronic device 200 only needs to store the redefined first data.

[0453] 14、The data access / access module on the electronic device 200 sends the unified management protocol of the first data and the usage specification of the first data to the data permission management module on the electronic device 200.

[0454] 15、The data permission management module on the electronic device 200 obtains the personalized permission of the first data based on the usage specification of the first data.

[0455] The data access / access module on the electronic device 200 can also send the usage specification of the first data to the data permission management module on the electronic device 200,

[0456] The data permission management module on the electronic device 200 can obtain the personalized permission of the first data based on the usage specification of the first data. In order to subsequently check whether the application that needs to use the first data has the permission to use based on the personalized permission of the first data.

[0457] Optionally, the "peimission" field in the usage specification of the first data specifies the personalized permission of the first data. The personalized permission of the first data includes but is not limited to public permission, system permission, application permission, etc.

[0458] The data permission management module on the electronic device 200 can obtain the personalized permission of the first data from the usage specification of the first data.

[0459] 16、The data permission management module on the electronic device 200 can determine the usage permission of the first data based on the personalized permission of the first data, the permission rules of the sharing path of the first data, and the permission rules of the unified data management framework.

[0460] Step 16 is similar to step 14 in the embodiment, and the difference is that, Figure 7 Step 14 in the embodiment is similar, and the difference is that, Figure 7The usage permission of the first data obtained in step 14 in the embodiment can be that one or more applications on the electronic device 100 can use the first data.

[0461] Figure 9 The usage permission of the first data obtained in step 16 in the embodiment can be that one or more applications on the electronic device 200 can use the first data.

[0462] For a detailed introduction to step 16, please refer to Figure 7 The introduction to step 14 in the embodiment is not repeated here.

[0463] 17. The data access / access module on the electronic device 200 sends the unified management protocol of the first data and the usage description of the first data to the data lifecycle management module on the electronic device 200.

[0464] 18. The data lifecycle management module on the electronic device 200 determines the lifecycle of the first data based on the lifecycle rule of the first data, the lifecycle rule of the sharing path of the first data, and the lifecycle rule of the unified data management framework on the electronic device 200.

[0465] 19. The data lifecycle management module on the electronic device 200 sends a notification to the storage management module on the electronic device 200 based on the lifecycle of the first data.

[0466] 20. The storage management module on the electronic device 200 continues to store or delete the encrypted redefined first data.

[0467] The data lifecycle management module on the electronic device 200 can determine whether the storage management module continues to save the encrypted redefined first data or deletes the encrypted redefined first data based on the determined lifecycle of the first data.

[0468] For a detailed introduction to steps 16-20, and Figure 7 The implementation of steps 15-18 in the embodiment is similar, and for reference can be made to Figure 7 The introduction to steps 15-18 in the embodiment is not repeated here.

[0469] Figure 10 A specific implementation schematic diagram is shown to illustrate how the application B on the electronic device 200 reads the first data shared by the application A on the electronic device 100 from the unified data management framework on the electronic device 200.

[0470] Exemplarily, after the application A on the electronic device 100 stores the first data to be shared in the storage management module of the unified data management framework on the electronic device 200, the application B on the electronic device 200 can obtain the first data from the storage management module of the unified data management framework on the electronic device 200, so as to realize data sharing between the two applications on different devices.

[0471] The method steps of the application B on the electronic device 200 reading the first data shared by the application A on the electronic device 100 from the unified data management framework on the electronic device 200 are as follows (step 1-step 14):

[0472] 1. The application B on the electronic device 200 sends a reading notification to the data authority management module on the electronic device 200.

[0473] 2. The data authority management module on the electronic device 200 verifies whether the application B has the use authority of the first data.

[0474] 3. The data authority management module on the electronic device 200 sends a notification to the data access / access module on the electronic device 200.

[0475] 4. The data access / access module on the electronic device 200 obtains the redefined first data from the storage management module on the electronic device 200.

[0476] 5. The data access / access module on the electronic device 200 obtains the sharing path of the first data from the unified management protocol of the first data.

[0477] 6. The data access / access module on the electronic device 200 selects the corresponding sharing path based on the sharing path of the first data.

[0478] For Figure 10 For the introduction of steps 1-6 in the embodiment, reference can be made to Figure 8 For the introduction of steps 1-6 in the embodiment, the difference is that, for Figure 10 Steps 1-6 in the embodiment are about the specific implementation of how the application B on the electronic device 200 reads the first data from the unified data management framework on the electronic device 200, Figure 8 For the introduction of steps 1-6 in the embodiment, the difference is that, for

[0479] 7. The data access / access module on the electronic device 200 sends the redefined first data to the drag path in the drag channel on the electronic device 200.

[0480] Exemplarily, after the data access / access module on the electronic device 200 selects the drag path on the electronic device 200, the data access / access module on the electronic device 200 can send the redefined first data to the drag path in the drag channel on the electronic device 200.

[0481] Optionally, the data access / access module on the electronic device 200 can also send the identifier of the application B to the drag channel on the electronic device 200, so that the drag channel on the electronic device 200 can send the redefined first data to the application B based on the identifier of the application B.

[0482] 8、The drag path on the electronic device 200 sends the redefined first data to the application B.

[0483] After receiving the identifier of the application B and the redefined first data sent by the data access / access module on the electronic device 200, the drag path on the electronic device 200 can send the redefined first data to the application B based on the identifier of the application B.

[0484] 9、The application B on the electronic device 200 obtains the specified data definition standard from the data definition standard model on the electronic device 200.

[0485] 10、The application B on the electronic device 200 parses the redefined first data based on the specified data definition standard, and obtains the first data.

[0486] 11、The application B on the electronic device 200 uses the first data.

[0487] After obtaining the redefined first data sent by the drag path on the electronic device 200, the application B on the electronic device 200 can obtain the specified data definition standard from the data definition standard model.

[0488] That is, no matter whether it is a drag path, a clipboard path, a cross-device manual path or a cross-device automatic path, the application B on the electronic device 200 only needs to obtain one data definition standard, that is, the specified data definition standard, and parse the redefined first data based on the specified data definition standard to obtain the first data. The application B on the electronic device 200 can use the first data. The data sharing between two applications on different devices is realized.

[0489] The application B on the electronic device 200 can use the first data, which specifically includes;

[0490] In the case that the first data is text data, the application B on the electronic device 200 can directly obtain the text content of the first data from the first data, and use the text content of the first data.

[0491] In the case that the first data is non-text data (or referred to as file data), when the application B on the electronic device 200 needs to use the first data, the application B on the electronic device 200 can obtain the URI of the first data from the first data, and obtain the file data of the first data based on the URI of the first data. Specifically, the application B on the electronic device 200 can send the URI of the first data to the communication module on the electronic device 100 through the communication module. After receiving the notification, the communication module on the electronic device 100 can obtain the file data of the first data based on the URI of the first data, and then send the file data of the first data to the communication module on the electronic device 200. The communication module on the electronic device 200 sends the file data of the first data to the application B on the electronic device 200, and the application B on the electronic device 200 can use the file data of the first data.

[0492] 12、The data lifecycle management module on the electronic device 200 determines that the redefined first data needs to be deleted.

[0493] 13、The data lifecycle management module on the electronic device 200 sends a notification to the storage management module on the electronic device 200.

[0494] 14、The storage management module on the electronic device 200 deletes the stored redefined first data.

[0495] Optionally, after the application B on the electronic device 200 uses the first data, the data lifecycle management module on the electronic device 200 can determine to delete the used redefined first data in time to avoid data leakage.

[0496] Specifically, after the application B on the electronic device 200 uses the first data, the data lifecycle management module on the electronic device 200 can send a notification to the storage management module on the electronic device 200. After receiving the notification, the storage management module on the electronic device 200 can delete the stored redefined first data in response to the notification. In this way, the storage management module on the electronic device 200 can delete the used redefined first data in time, which can avoid data leakage on the one hand, and can also release the memory occupied by the used redefined first data in time on the other hand.

[0497] It should be noted that, Figure 10 The steps in the above are only used to illustrate the specific implementation of how the application B on the electronic device 200 reads the first data from the unified data management framework, but should not limit the execution steps of the steps.

[0498] Figure 11 FIG. 1 shows a schematic diagram of a method for sharing data by an application A on an electronic device 100 to an application B on the electronic device 100 according to an embodiment of the present application.

[0499] S1101, the application A obtains first data, which is data to be shared to the application B.

[0500] In some embodiments, the application A can receive an operation of a user to share the first data in the application A to the application B. For example, the application A can share the first data in the application A to the application B through a drag-and-drop path between the same device, a clipboard path between the same device, or a cross-application path between the same device. Figures 1A-1J For example, the application A can share the first data in the application A to the application B through the drag-and-drop path between the same device, the clipboard path between the same device, or the cross-application path between the same device.

[0501] In other embodiments, the application A can also automatically share the first data in the application A to the application B. For example, the application A can share the first data in the application A to the application B through a cross-application automatic path.

[0502] The first data in the application A can also be shared to the application B through other sharing paths. The present application does not limit this.

[0503] S1102, the application A obtains a specified data definition standard and a unified management protocol standard from a unified data management framework.

[0504] Optionally, S1102 can also be performed before S1101, which is not limited in the present application.

[0505] For the introduction of the specified data definition standard and the unified management protocol standard, reference can be made to the description in Table 1, which is not repeated here.

[0506] It should be noted that different sharing paths on the electronic device 100 all need to adapt to the specified data definition standard and the unified management protocol standard. When the applications on the electronic device 100 share data through different sharing paths, the data only needs to be defined according to this standard. When other applications on the electronic device 100 use the shared data, the data also only needs to be redefined according to the standard to obtain the shared data. The definition standards of the shared data by different paths are unified.

[0507] S1103, the application A defines the first data based on the specified data definition standard to obtain redefined first data.

[0508] The application provides a set of data definition standards (specified data definition standards). Before an application shares data, the application can define the shared data based on the specified data definition standards, and a receiver of the shared data can also parse the shared data based on the specified data definition standards. The processing flow of data transmission and reception is reduced.

[0509] In other embodiments, the shared data is not only defined according to the specified data definition standards, but also the application can be instructed to define data in the application according to the specified data definition standards when the application generates application data. In this way, after the application determines the shared data, the shared data has been defined according to the specified data definition standards, and the application does not need to be defined again.

[0510] The application A defines the first data based on the specified data definition standards. The application A can define the attributes of the first data based on the specified data definition standards, including but not limited to the type definition of the first data, the size definition of the first data, the creation time definition of the first data, the content definition of the first data, and the like.

[0511] For example, when the first data is non-text data (or file data), such as a picture, redefining the first data can include the type definition of the first data and the content definition of the first data. The type definition of the first data can be "image", and the content definition of the first data can be "the URI of the first data".

[0512] For another example, when the first data is text data, redefining the first data can include the type definition of the first data and the content definition of the first data. The type definition of the first data can be "plain-text", and the content definition of the first data can be "department meeting at 4 pm".

[0513] S1104, the application A generates a unified management protocol of the first data based on the unified management protocol standard and generates a usage instruction of the first data based on the specified data definition standard.

[0514] The application A can generate a unified management protocol of the first data based on the unified management protocol standard and generate a usage instruction of the first data based on the specified data definition standard. The unified management protocol of the first data describes the sharing path of the first data, and the usage instruction of the first data describes the personalized rights of the first data.

[0515] For example, if the sharing path of the first data is a drag path, the personalized rights of the first data are to install the application A on a device, and the usage instruction of the first data is "click the first data to install the application A on the device". The application on the device of the operating system can use the first data. Then the unified management protocol of the first data can be "udmf: / / drag / library application / 123 / 123456". The usage instruction of the first data can be "wechat application / text.plain-text". / wechat application / / text.plain-text”.

[0516] It should be noted that S1104 can also be executed before S1103, and S1104 can also be executed simultaneously with S1103, and the present application does not limit this.

[0517] S1105, the application A sends the redefined first data, the unified management protocol of the first data and the usage instruction of the first data to the unified data management framework.

[0518] After obtaining the redefined first data, the unified management protocol of the first data and the usage instruction of the first data, the application A sends the redefined first data, the unified management protocol of the first data and the usage instruction of the first data to the unified data management framework. So that the unified data management framework can check the redefined first data, or check the redefined first data, the unified management protocol of the first data and the usage instruction of the first data.

[0519] S1106, the unified data management framework checks the redefined first data based on the specified data definition standard, and determines whether the definition of the redefined first data meets the requirements.

[0520] In the case where the definition of the redefined first data does not meet the requirements, S1107 is executed.

[0521] In the case where the definition of the redefined first data meets the requirements, S1108 is executed.

[0522] The unified data management framework checks the redefined first data, mainly to check whether the redefined first data is defined according to the unified data management framework. Only the data that passes the check can be shared to other applications through the unified data management framework, to avoid the case where the application A does not define the first data according to the specified data definition standard.

[0523] The rules for the unified data management framework to check the redefined first data based on the specified data definition standard are as follows:

[0524] The first data is redefined whether the first data is defined according to the data attribute definition and the data content definition specified in the specified data definition standard. For example, when the first data is picture data, the type definition of the picture data included in the first data is redefined as "image" instead of "picture". The content definition of the picture data included in the first data is redefined as the URI of the picture data instead of including the picture file. The content definition of the text data included in the first data is redefined as the pure text content of the text data instead of including other content. According to this rule, the unified data management framework can determine that the definition of the first data meets the requirements.

[0525] Optionally, the unified data management framework can also verify the unified management protocol of the first data based on the unified management protocol standard and the usage instruction of the first data based on the specified data definition standard, and determine whether the unified management protocol of the first data and the usage instruction of the first data meet the requirements.

[0526] The unified data management framework verifies the unified management protocol of the first data based on the unified management protocol standard and verifies the usage instruction of the first data based on the specified data definition standard according to the following rules:

[0527] Whether the unified management protocol standard and the preset field included in the specified data definition standard are included in the unified management protocol of the first data and the usage instruction of the first data. Whether the content is filled in each preset field.

[0528] The listing verification rule can also be other manners, which are not limited by the present application.

[0529] S1107, the process ends.

[0530] In the case where it is determined that the definition of the redefined first data meets the requirements, it is indicated that the first data cannot continue to be shared, and the process ends.

[0531] Optionally, the unified data management framework can also send a notification to the application A, and the application A can prompt that the requirements of the unified data management framework are not met and sharing cannot be performed.

[0532] S1108, the unified data management framework stores the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data.

[0533] Optionally, in order to ensure the security of the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data, the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data can be stored in an encrypted manner.

[0534] Optionally, the unified data management framework can also manage the stored redefined first data, the unified management agreement of the first data, and the usage description of the first data. For example, continue to store the redefined first data, the unified management agreement of the first data, and the usage description of the first data, or delete the redefined first data, the unified management agreement of the first data, and the usage description of the first data. For details, please refer to Figure 7 The description of step 18 in the embodiment will not be repeated here.

[0535] S1109, the unified data management framework determines the usage permission of the first data based on the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework.

[0536] The usage permission of the first data can be that one or more applications on the electronic device 100 can use the first data.

[0537] The personalized permission of the first data and the permission rule of the sharing path of the first data can be determined by the unified data management framework based on the unified management agreement of the first data and the usage description of the first data.

[0538] Optionally, the "peimission" field in the usage description of the first data describes the personalized permission of the first data. The personalized permission of the first data includes but is not limited to public permission, system permission, application permission, etc. The unified data management framework can obtain the personalized permission of the first data from the unified management agreement of the first data.

[0539] Optionally, the "intension" field in the unified management agreement of the first data describes the sharing path of the first data. The unified data management framework can obtain the permission rules of different sharing paths, then obtain the sharing path of the first data from the "intension" field, and determine the permission rule of the sharing path of the first data from the permission rules of multiple different sharing paths.

[0540] The permission rule of the unified data management framework can be preset by the unified data management framework, and the unified data management framework can obtain the permission rule of the unified data management framework.

[0541] The unified data management framework can determine the usage permission of the first data based on the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework.

[0542] The personalized permission of the first data includes but is not limited to public permission, system permission, application permission, etc.

[0543] The permission rule of the sharing path of the first data includes but is not limited to that the target application can use the first data.

[0544] The permission rule of the unified data management framework includes but is not limited to that all or part of the applications on the device can use the first data.

[0545] The priority of the personalized permission of the first data is higher than that of the permission rule of the sharing path of the first data, and the priority of the permission rule of the sharing path of the first data is higher than that of the permission rule of the unified data management framework.

[0546] Specifically, when the personalized permission of the first data is not public in the unified management protocol of the first data, the use permission of the first data is the personalized permission of the first data in the unified management protocol of the first data.

[0547] When the personalized permission of the first data is public in the unified management protocol of the first data, the permission rule of the sharing path of the first data is further queried. As described above, the sharing path between two applications on the device includes but is not limited to a drag path, a clipboard path, a cross-application manual path, and a cross-application automatic path. Among them, the drag path, the clipboard path, the cross-application manual path all limit that the first data is only available to the target application, for example, the user shares the first data in application A to application B through the drag path, and the drag path limits that the first data is only available to application B. The clipboard path and the cross-application manual path are similar to the drag path. The cross-application automatic path limits that the first data is available to all or part of the applications on the device, that is, the permission of the cross-application automatic path is public permission, and there is no use permission limit.

[0548] When the sharing path of the first data is not the cross-application automatic path, the permission specified by the sharing path of the first data is used as the criterion, and the use permission of the first data is the permission specified by the sharing path of the first data.

[0549] When the sharing path of the first data is the cross-application automatic path, the permission rule of the unified data management framework is further queried. The use permission of the first data is the permission rule of the unified data management framework. If the permission rule of the unified data management framework is public permission, there is no use permission limit, and then the first data is available to all applications on the electronic pen 100. If the permission rule of the unified data management framework is that part of the applications can use, then the first data is available to the part of the applications on the electronic pen 100.

[0550] It should be noted that the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework can be preset or customized by the user. The personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework are used to explain the present application, and the present application is not limited in this regard.

[0551] Optionally, S1109 can be performed before S1109, after S1109, or simultaneously with S1109, which is not limited in the present application.

[0552] S1110, the application B on the electronic device 100 sends a read notification to the unified data management framework.

[0553] When the application (for example, the application B) on the electronic device 100 needs to read the data shared by the application A on the electronic device 100 from the unified data management framework, the application B can send a read notification to the unified data management framework.

[0554] In some embodiments, the read notification can carry the identifier of the application B. In other embodiments, the identifier of the application B can also be sent to the unified data management framework separately from the read notification.

[0555] S1111, the unified data management framework determines whether the application B has the use permission of the first data based on the use permission of the first data.

[0556] As can be seen from S1109, the unified data management framework has determined the use permission of the first data based on the personalized permission of the first data, the permission rule of the sharing path of the first data, and the permission rule of the unified data management framework.

[0557] The use permission of the first data can be that one or more applications on the electronic device 100 can use the first data.

[0558] The unified data management framework can first determine whether the application B has the ability to use the first data based on the use instruction of the first data. In the case of having the ability to use the first data, the unified data management framework can further determine whether the identifier of the application B is included in the one or more applications that can use the first data.

[0559] In the case where the identifier of the application B is not included in the one or more applications that can use the first data, it indicates that the application B has the use permission of the first data, and S1112 is performed.

[0560] In the case where the identifier of the application B is included in the one or more applications that can use the first data, it indicates that the application B has the use permission of the first data, and S1113 is performed.

[0561] S1112, the flow ends.

[0562] In the case that the identification of application B is not included in the one or more applications that can use the first data, it is indicated that application B has the usage right of the first data, and the flow ends.

[0563] Optionally, the unified data management framework can also send a notification to application B, and application B can prompt that the first data cannot be used.

[0564] S1113, the unified data management framework obtains the sharing path of the first data from the unified management protocol of the first data.

[0565] Optionally, the unified management protocol of the first data includes an “intension” field, and the “intension” field is used to fill in the name of the sharing path. Therefore, the unified data management framework can obtain the sharing path of the first data from the unified management protocol of the first data.

[0566] Specifically, when the name of the sharing path filled in the “intension” field is automatic1, the sharing path of the first data can be a cross-application automatic path.

[0567] When the name of the sharing path filled in the “intension” field is clipboard, the sharing path of the first data can be a clipboard path.

[0568] When the name of the sharing path filled in the “intension” field is drag, the sharing path of the first data can be a drag path.

[0569] When the name of the sharing path filled in the “intension” field is manual 1, the sharing path of the first data can be a cross-application manual path.

[0570] For example, the unified data management framework obtains the sharing path of the first data from the unified management protocol of the first data, which can be a drag path.

[0571] S1114, the unified data management framework sends the redefined first data to the drag path.

[0572] S1115, the drag path sends the redefined first data to application B.

[0573] S1116, application B obtains the specified data definition standard from the unified data management framework.

[0574] Optionally, S1116 is not limited to being executed after S1115, and S1116 can also be executed at any step before S1117.

[0575] S1117, the application B parses the redefined first data based on the specified data definition standard to obtain the first data.

[0576] S1118, the application B uses the first data.

[0577] Optionally, the unified data management framework can also manage the stored redefined first data. For example, after the unified data management framework sends the redefined first data to the application B or the application B uses the first data, the unified data management framework can determine to delete the redefined first data in time. In this way, the unified data management framework can delete the used redefined first data in time, on the one hand, to avoid data leakage, and on the other hand, to release the memory occupied by the used redefined first data in time.

[0578] After determining the sharing path (for example, the drag path), the unified data management framework can send the redefined first data to the application B through the drag path.

[0579] The application B can obtain the specified data definition standard from the unified data management framework, and parse the redefined first data based on the specified data definition standard to obtain the first data.

[0580] Then, the application B can use the first data.

[0581] The application B can use the first data, specifically including: in the case that the first data is non-file data, the application B on the electronic device 100 can directly obtain the text content of the first data from the first data, and use the text content of the first data.

[0582] In the case that the first data is file data, when the application B on the electronic device 100 needs to use the first data, the application B on the electronic device 100 can obtain the URI of the first data from the first data, obtain the file data of the first data based on the URI of the first data, and use the file data of the first data.

[0583] Through Figure 11 The data sharing method between two applications on the same device provided by the embodiment is that, before data sharing, different applications need to define the sharing data according to the standard. After receiving the sharing data, different applications also need to parse the sharing data based on the standard. That is, for different applications and different sharing paths, the data definition standard is unified, and the format of the sharing data is unified.

[0584] Figure 12A method for sharing data by an application A on an electronic device 100 to an application B on an electronic device 200 is provided in the embodiments of the present application.

[0585] In S1201, the application A on the electronic device 100 acquires first data, which is data to be shared to the application B on the electronic device 200.

[0586] In some embodiments, the application A can receive an operation of a user to share the first data in the application A to the application B. For example, the application A can share the first data in the application A to the application B through a drag path between different devices, a clipboard path between different devices, or a cross-device path between different devices. Figures 2A-2G In some embodiments, the application A can receive an operation of a user to share the first data in the application A to the application B. For example, the application A can share the first data in the application A to the application B through a drag path between different devices, a clipboard path between different devices, or a cross-device path between different devices.

[0587] In other embodiments, the application A can also automatically share the first data in the application A to the application B. For example, the application A can share the first data in the application A to the application B through a cross-device automatic path.

[0588] The first data in the application A on the electronic device 100 can also be shared to the application B on the electronic device 200 through other sharing paths. The present application does not limit this.

[0589] In S1202-S1207, after acquiring the first data, the application A on the electronic device 100 can generate redefined first data based on a specified data definition standard, or generate a unified management protocol of the first data based on a unified management protocol standard and a usage instruction of the first data based on the specified data definition standard. The application A on the electronic device 100 then sends the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data to a unified data management framework on the electronic device 100. The unified data management framework on the electronic device 100 checks whether the redefined first data meets the requirements.

[0590] Figure 12 The description of S1202-S1207 in the embodiments can refer to the description of S1102-S1107. Figure 11 The description of S1102-S1107 in the embodiments can refer to the description of S1102-S1107.

[0591] In S1208, the unified data management framework on the electronic device 100 sends the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data to a communication module on the electronic device 100.

[0592] In S1209, the communication module on the electronic device 100 sends the redefined first data, the unified management protocol of the first data, and the usage instruction of the first data to a communication module on the electronic device 200.

[0593] S1210, the communication module on the electronic device 200 sends the redefined first data, the unified management protocol of the first data and the usage instruction of the first data to the unified data management framework on the electronic device 200.

[0594] After the unified data management framework on the electronic device 100 checks that the redefined first data meets the requirements, the unified data management framework on the electronic device 100 can send the redefined first data, the unified management protocol of the first data and the usage instruction of the first data to the communication module on the electronic device 200 through the communication module on the electronic device 100.

[0595] The communication module on the electronic device 200 sends the redefined first data, the unified management protocol of the first data and the usage instruction of the first data to the unified data management framework on the electronic device 200. So that the unified data management framework on the electronic device 200 can save the redefined first data, the unified management protocol of the first data and the usage instruction of the first data, so that the application on the electronic device 200 can obtain and use the first data from the unified data management framework on the electronic device 200.

[0596] Optionally, S1206-S1207 can also be performed by the unified data management framework on the electronic device 200, and the present application does not limit this.

[0597] S1211-S1220: After the unified data management framework on the electronic device 200 obtains the redefined first data, the unified management protocol of the first data and the usage instruction of the first data that meet the requirements, one or more applications on the electronic device 200 can obtain the first data shared by the application A on the electronic device 100 from the unified data management framework on the electronic device 200. The unified data management framework on the electronic device 200 can check whether the one or more applications on the electronic device 200 have the ability and the right to access the first data shared by the application A on the electronic device 100. In the case of having the ability and the right, the unified data management framework on the electronic device 200 can send the redefined first data to the one or more applications on the electronic device 200.

[0598] Figure 12 The description of S1211-S1220 in the embodiment can refer to Figure 11 The description of S1108-S1117 in the embodiment is not repeated here.

[0599] S1221, the application B on the electronic device 200 uses the first data.

[0600] In a case where the first data is text data, the application B on the electronic device 200 can directly obtain the text content of the first data from the first data, and use the text content of the first data.

[0601] In a case where the first data is file data, when the application B on the electronic device 200 needs to use the first data, the application B on the electronic device 200 can obtain the URI of the first data from the first data, and obtain the file data of the first data based on the URI of the first data. Specifically, the application B on the electronic device 200 can send the URI of the first data to the communication module on the electronic device 100 through the communication module. After receiving the obtaining notification, the communication module on the electronic device 100 can obtain the file data of the first data based on the URI of the first data, and then send the file data of the first data to the communication module on the electronic device 200. The communication module on the electronic device 200 sends the file data of the first data to the application B on the electronic device 200, and the application B on the electronic device 200 can use the file data of the first data.

[0602] By Figure 12 The data sharing method between two applications on different devices provided by the embodiments requires that different applications define the sharing data according to the standard before sharing the data. After receiving the sharing data, different applications also need to parse the sharing data based on the standard. That is, the data definition standard is unified for different applications and different sharing paths, and the format of the sharing data is unified.

[0603] The present application provides an electronic device, which comprises one or more processors, one or more memories, and one or more cameras; the one or more cameras, the one or more memories, and the one or more processors are coupled, the one or more memories are used for storing computer program codes, the computer program codes comprise computer instructions, and the one or more processors invoke the computer instructions to enable the electronic device to perform the following steps Figure 11 The present application provides a data sharing method.

[0604] The present application provides a computer readable storage medium, which is used for storing computer instructions, and when the computer instructions are run on an electronic device, the electronic device performs the following steps Figure 11 The present application provides a data sharing method.

[0605] The present application provides a computer program product, and when the computer program product is run on an electronic device, the electronic device performs the following steps Figure 11 The present application provides a data sharing method.

[0606] The application provides an electronic device, which comprises one or more processors, one or more memories, and one or more cameras; the one or more cameras, the one or more memories, and the one or more processors are coupled, the one or more memories are used for storing computer program codes, the computer program codes comprise computer instructions, and the one or more processors invoke the computer instructions to make the electronic device Figure 12 The application provides a data sharing method.

[0607] The application provides a computer readable storage medium, which is used for storing computer instructions, when the computer instructions are run on an electronic device, the electronic device executes Figure 12 The application provides a data sharing method.

[0608] The application provides a computer program product, when the computer program product is run on an electronic device, the electronic device executes Figure 12 The application provides a data sharing method.

[0609] The embodiments of the application can be combined in any manner to achieve different technical effects.

[0610] In the above embodiments, all or part of the embodiments can be realized by software, hardware, firmware or any combination thereof. When realized by software, all or part of the embodiments can be realized in the form of a computer program product. The computer program product comprises one or more computer instructions. When the computer program instructions are loaded and executed on a computer, all or part of the processes or functions described in the embodiments are generated. The computer can be a general-purpose computer, a special-purpose computer, a computer network or other programmable devices. The computer instructions can be stored in a computer readable storage medium or transmitted from one computer readable storage medium to another computer readable storage medium, for example, the computer instructions can be transmitted from one website, computer, server or data center to another website, computer, server or data center through wired (such as coaxial cable, optical fiber, digital subscriber line) or wireless (such as infrared, wireless, microwave, etc.) mode. The computer readable storage medium can be any available medium that can be accessed by a computer or a data storage device such as a server, data center, etc. integrated with one or more available media. The available medium can be a magnetic medium (for example, floppy disk, hard disk, magnetic tape), optical medium (for example, DVD), or semiconductor medium (for example, solid state disk (SSD)) and the like.

[0611] Those skilled in the art can understand that all or part of the processes in the above-mentioned method embodiments can be implemented by a computer program instructing relevant hardware to complete, and the program can be stored in a computer readable storage medium. When the program is executed, it can include the processes of the above-mentioned method embodiments. The aforementioned storage medium includes ROM, random access memory (RAM), magnetic disk or optical disk, and various storage media that can store program codes.

[0612] In summary, the above only describes the embodiments of the technical scheme of the present application, and is not used to limit the protection scope of the present application. Any modification, equivalent replacement, improvement, etc. made according to the disclosure of the present application shall be included in the protection scope of the present application.

Claims

1. A data sharing system, characterized by, The system comprises a first electronic device and a second electronic device, the first electronic device and the second electronic device establish a communication connection, the first electronic device comprises a first application, and the second electronic device comprises a second application, wherein, The first application is configured to acquire first data. The first application is further configured to: generate first definition data corresponding to the first data based on a specified data definition standard, the first definition data comprising attributes of the first data and the first data, or the first definition data comprising attributes of the first data and a storage path of the first data; send the first definition data to the second application through a first sharing path and the communication connection; The second application is configured to acquire the first definition data through the first sharing path. The second application is further configured to parse the first data or the storage path of the first data from the first definition data based on the specified data definition standard. The first application is further configured to: acquire second data; generate second definition data corresponding to the second data based on the specified data definition standard, the second definition data comprising attributes of the second data and the second data, or the second definition data comprising attributes of the second data and a storage path of the second data; send the second definition data to the second application through a second sharing path and the communication connection; The second application is further configured to: acquire the second definition data through the second sharing path; parse the second data or the storage path of the second data from the second definition data based on the specified data definition standard. The second sharing path and the first sharing path are different.

2. The system of claim 1, wherein, The first electronic device further comprises a first data management framework, and the second electronic device further comprises a second data management framework; The first application is specifically configured to send the first definition data to the first data management framework through the first sharing path. The first data management framework is configured to send the first definition data to the second data management framework through the communication connection. The second data management framework is further configured to send the first definition data to the second application through the first sharing path.

3. The system of claim 2, wherein, The first application is further configured to generate a uniform management protocol of the first data based on a uniform management protocol standard, wherein the uniform management protocol of the first data comprises an identifier of the first sharing path; send the uniform management protocol of the first data to the first data management framework; The first data management framework is further configured to send the uniform management protocol of the first data to the second data management framework through the communication connection; The second data management framework is specifically configured to: acquire the identifier of the first sharing path from the uniform management protocol of the first data; send the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

4. The system of claim 2 or 3, wherein, The first application is further configured to generate usage instructions of the first data based on the specified data definition standard, wherein the usage instructions of the first data include personalized permissions of the first sharing path; send the usage instructions of the first data to the first data management framework; The first data management framework is further configured to send the usage instructions of the first data to the second data management framework through the communication connection; The second data management framework is specifically configured to: obtain a first notification sent by the second application, the first notification being used to read the first data, and the first notification including an identifier of the second application; obtain permissions of the first sharing path based on an identifier of the first sharing path in the unified management protocol of the first data; obtain personalized permissions of the first data from the usage instructions of the first data; after determining that the second application has the capability to access the first data based on the usage instructions of the first data, send the first definition data to the second application through the first sharing path based on the identifier of the first sharing path when it is determined that the second application has the permission to access the first data based on the personalized permissions of the first data, the permissions of the first sharing path, permissions of the second data management framework, and the identifier of the second application.

5. The system of claim 4, wherein, The second data management framework is further configured to: verify the first definition data based on the specified data definition standard; in a case where the verification is passed, store the first definition data, the unified management protocol of the first data, and the usage instructions of the first data.

6. A data sharing method, comprising: The method comprises: a second application on a second electronic device obtains first definition data sent by a first application on a first electronic device through a first sharing path and a communication connection, wherein the first definition data is generated by the first application based on a specified data definition standard and first data, the first definition data includes attributes of the first data and the first data, or the first definition data includes attributes of the first data and a storage path of the first data, the second electronic device is different from the first electronic device, and the first electronic device and the second electronic device establish the communication connection; the second application parses the first data or the storage path of the first data from the first definition data based on the specified data definition standard; the second application obtains second definition data sent by the first application through a second sharing path and the communication connection, wherein the second definition data is generated by the first application based on a specified data definition standard and second data, the second definition data includes attributes of the second data and the second data, or the second definition data includes attributes of the second data and a storage path of the second data; the second application parses the second data or the storage path of the second data from the second definition data based on the specified data definition standard; The second sharing path is different from the first sharing path.

7. The method of claim 6, wherein, The first electronic device further comprises a first data management framework, and the second electronic device further comprises a second data management framework. The second application acquires the first definition data sent by the first application through the first sharing path and the communication connection, and specifically includes: The second data management framework receives the first definition data sent by the first data management framework through the communication connection, wherein the first definition data stored in the first data management framework is sent by the first application. The second data management framework sends the first definition data to the second application through the first sharing path.

8. The method of claim 7, wherein, The second application acquires the first definition data sent by the first application through the first sharing path, and specifically includes: The second data management framework receives the first data unified management protocol sent by the first data management framework through the communication connection, wherein the first data unified management protocol is generated by the first application based on a unified management protocol standard, and the first data unified management protocol includes an identifier of the first sharing path. The second data management framework acquires the identifier of the first sharing path from the first data unified management protocol. The second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

9. The method of claim 8, wherein, The second application acquires the second definition data sent by the first application through the second sharing path, and specifically includes: The second data management framework receives the second data unified management protocol sent by the first data management framework through the communication connection, wherein the second data unified management protocol is generated by the first application based on a unified management protocol standard, and the second data unified management protocol includes an identifier of the second sharing path. The second data management framework acquires the identifier of the second sharing path from the second data unified management protocol. The second data management framework sends the second definition data to the second application through the second sharing path based on the identifier of the second sharing path. The second data unified management protocol is different from the first data unified management protocol.

10. The method according to claim 8 or 9, characterized in that, Before the second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, the method further includes: The second data management framework receives the first data usage specification sent by the first data management framework through the communication connection, wherein the first data usage specification is generated by the first application based on the specified data definition standard and sent to the first data management framework, and the first data usage specification includes personalized permissions of the first data. The second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, and specifically includes: The second data management framework obtains a first notification sent by the second application, the first notification being used to read the first data, and the first notification including an identifier of the second application; The second data management framework obtains the permission rule of the first sharing path based on the identifier of the first sharing path in the unified management protocol of the first data; The second data management framework obtains the personalized permission of the first data from the usage specification of the first data; After the second data management framework determines that the second application has the capability to access the first data based on the usage specification of the first data, if the second data management framework determines that the second application has the permission to access the first data based on the personalized permission of the first data, the permission rule of the first sharing path, the permission rule of the first data management framework, and the identifier of the second application, the second data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

11. The method of claim 10, wherein, After the second data management framework receives the first definition data and the unified management protocol of the first data, the method further includes: The second data management framework verifies the first definition data based on the specified data definition standard; If the verification is passed, the second data management framework stores the first definition data, the unified management protocol of the first data, and the usage specification of the first data.

12. The method according to any one of claims 6-9, characterized in that, The specified data definition standard is stored in the second data management framework; the method further includes: The second data management framework sends the specified data definition standard to the second application.

13. The method according to any one of claims 6-9, characterized in that, After the second application parses the storage path of the first data from the first definition data based on the specified data definition standard, the method further includes: The second application sends the storage path of the first data to the first application through the communication connection; The second application receives the first data sent by the first application through the communication connection, the first data being obtained by the first application based on the storage path of the first data.

14. The method according to any one of claims 6-9, characterized in that, The attribute of the first data includes one or more of the following: the type of the first data, the size of the first data, and the creation time of the first data.

15. A data sharing method, comprising: The method is applied to a first electronic device including a first application and a second application, and includes: The first application obtains first data; The first application generates first definition data corresponding to the first data based on a specified data definition standard, the first definition data including the attribute of the first data and the first data, or the first definition data including the attribute of the first data and the storage path of the first data; The first application sends the first definition data to the second application through a first sharing path; The second application parses the first data or the storage path of the first data from the first definition data based on the specified data definition standard; The first application obtains second data; The first application generates second definition data corresponding to the second data based on the specified data definition standard, and the second definition data includes attributes of the second data and the second data, or the second definition data includes attributes of the second data and a storage path of the second data; The first application sends the second definition data to the second application through a second sharing path; The second application parses the second data or a storage path of the second data from the second definition data based on the specified data definition standard; The second sharing path and the first sharing path are different.

16. The method of claim 15, wherein, The method further includes: The first application acquires the first definition data; The first application sends the first definition data to the second application through the second sharing path; The second application parses the first data or a storage path of the first data from the first definition data based on the specified data definition standard.

17. The method according to claim 15 or 16, characterized in that, The first electronic device further includes a first data management framework, and the first application sends the first definition data to the second application through a first sharing path, specifically including: The first application generates a uniform management protocol of the first data based on a uniform management protocol standard, and the uniform management protocol of the first data includes an identifier of the first sharing path; The first application sends the first definition data and the uniform management protocol of the first data to the first data management framework; The first data management framework acquires the identifier of the first sharing path from the uniform management protocol of the first data; The first data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path.

18. The method of claim 17, wherein, The second application sends the second definition data to the second application through a second sharing path, specifically including: The first application generates a uniform management protocol of the second data based on the uniform management protocol standard, and the uniform management protocol of the second data includes an identifier of the second sharing path; The first application sends the second definition data and the uniform management protocol of the second data to the first data management framework; The first data management framework acquires the identifier of the second sharing path from the uniform management protocol of the second data; The first data management framework sends the second definition data to the second application through the first sharing path based on the identifier of the second sharing path; The uniform management protocol of the second data is different from the uniform management protocol of the first data.

19. The method of claim 18, wherein, The method further includes: The first application generates usage instructions of the first data based on the specified data definition standard, and the usage instructions of the first data include personalized permissions of the first data; The first data management framework sends the first definition data to the second application through the first sharing path based on the identifier of the first sharing path, specifically including: The first data management framework obtains a first notification sent by the second application, the first notification being used to read the first data, and the first notification including an identifier of the second application; The first data management framework obtains the permission rule of the first sharing path based on the identifier of the first sharing path in the unified management protocol of the first data; The first data management framework obtains the personalized permission of the first data from the usage instruction of the first data; After the first data management framework determines that the second application has the capability to access the first data based on the usage instruction of the first data, when the first data management framework determines that the second application has the permission to access the first data based on the personalized permission of the first data, the permission rule of the first sharing path, the permission rule of the first data management framework and the identifier of the second application, the first data management framework sends the first defined data to the second application through the first sharing path based on the identifier of the first sharing path.

20. The method of claim 19, wherein, After the first application sends the first defined data and the unified management protocol of the first data to the first data management framework, the method further includes: The first data management framework verifies the first defined data based on the specified data definition standard; When the verification is passed, the first data management framework stores the first defined data, the unified management protocol of the first data and the usage instruction of the first data.

21. The method of claim 20, wherein, When the verification is not passed, the method further includes deleting the first defined data, the unified management protocol of the first data and the usage instruction of the first data.

22. The method according to any one of claims 18-21, characterized by, The specified data definition standard and the unified management protocol standard are stored in the first data management framework; the method further includes: The first data management framework sends the specified data definition standard and the unified management protocol standard to the first application; The first data management framework sends the specified data definition standard to the second application.

23. The method of any one of claims 15-16 or claims 18-21, wherein, After the second application parses the first data or the storage path of the first data from the first defined data, the method further includes: The first data management framework deletes the first defined data.

24. The method of any one of claims 15-16 or claims 18-21, wherein, The first sharing path or the second sharing path includes any one of the following: a drag path, a clipboard path, a cross-application manual path and a cross-application automatic path.

25. The method of any one of claims 15-16 or claims 18-21, wherein, The attribute of the first data includes one or more of the following: the type of the first data, the size of the first data and the creation time of the first data.

26. An electronic device, comprising: The electronic device comprises one or more processors, one or more memories, one or more cameras; the one or more cameras, the one or more memories and the one or more processors are coupled, the one or more memories are configured to store computer program codes, the computer program codes comprise computer instructions, and the one or more processors invoke the computer instructions to enable the electronic device to perform the method in any one of claims 15-25.

27. A computer-readable storage medium, characterized in that, A computer program product for storing computer instructions, which, when executed on an electronic device, enable the electronic device to perform the method in any one of claims 15-25.

28. A computer program product, characterised in that, A computer program product, which, when executed on an electronic device, enable the electronic device to perform the method in any one of claims 15-25.

Citation Information

Patent Citations

  • Cross-device data sharing method and related device

    CN114356870A

  • Sharing method, intelligent terminal and storage medium

    CN115696306A

Cited By

  • Data sharing method and system, and electronic device

    WO2024235232A1