Application connection method and terminal equipment

CN119948448APending Publication Date: 2025-05-06HONOR DEVICE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202380061555.4
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Priority Date
2022-09-28
Filing Date
2023-09-18
Publication Date
2025-05-06

AI Technical Summary

Technical Problem

In a multi-device scenario, during the application connection process, content may be transmitted to an application whose trust source is unreliable, resulting in leakage of user information. Existing technologies cannot effectively solve this security problem.

Method used

By receiving the broadcast connection notification on the terminal device, the connection application is determined and legality authentication and matching relationship verification are performed to ensure that only legal and trustworthy applications can connect the content, thus improving the security of application connection.

Benefits of technology

This effectively avoids content transmission to applications with unreliable trust sources, improves application connection security and enhances user experience.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119948448A_ABST
    Figure CN119948448A_ABST
Patent Text Reader

Abstract

The embodiment of the invention provides an application connection method and terminal equipment, which can prevent the content of an application from being connected to an application with an unreliable trust source, and improve the safety of application connection, thereby improving the user experience. The method comprises the following steps: a second terminal device receives a broadcast connection notification from a first terminal device, wherein the broadcast connection notification is used for requesting to connect a first connection application of the first terminal device to the second terminal device; the second terminal device determines a second continuing application according to the broadcast continuing notification, and performs legality authentication and matching relationship verification on the second continuing application to obtain a legality authentication result and a matching relationship verification result; and under the condition that the legality authentication result is that the legality authentication is passed and the matching relation verification result is that the matching relation verification is passed, the second terminal device displays a connection contact of the second connection application.
Need to check novelty before this filing date? Find Prior Art

Description

Application connection method and terminal equipment

[0001] This application claims priority to the Chinese patent application filed with the State Intellectual Property Office of China on September 28, 2022, with application number 202211193576.5 and application name “Application Connection Method and Terminal Device”, the entire contents of which are incorporated by reference into this application. Technical Field

[0002] The present application relates to the field of terminal technology, and in particular to an application connection method and terminal device. Background Art

[0003] In a multi-device scenario, terminal devices are divided into source devices and peer devices. The source device is the sending device, and the peer device is the receiving device. When the source device and the peer device are logged in with the same account and are in the same local area network, the applications on the source device and the peer device can be connected by the user triggering the connection conditions. For example, the source device is a computer and the peer device is a mobile phone. The user has logged in with the same account on the computer and the mobile phone, and the computer and the mobile phone are in the same local area network. If the user plays a video using the video player software on the computer, the video player software on the user's mobile phone can play the video synchronously. If the user is editing text on the computer, the text being edited can be displayed synchronously on the user's mobile phone.

[0004] However, during the application transfer process, for a particular application, the content of the application on the source device may be transferred to an application on the peer device whose trusted source is unreliable, resulting in user information leakage. For example, if a mobile phone transfers the contents of a memo to a memo on a tablet, if the memo on the tablet is a fake application, the user's edited information will be stolen by the fake application. Therefore, there is a need to provide an application transfer method that can prevent application content from being transferred to an application with an unreliable trusted source and improve the security of application transfer.

[0005] Summary of the Invention

[0006] The embodiments of the present application provide an application connection method and a terminal device, which can avoid connecting the content of an application to an application with an unreliable trust source, improve the security of the application connection, and thus improve the user experience.

[0007] In a first aspect, an application connection method is provided, which is applied to a system including a first terminal device, a second terminal device, and a cloud server, wherein a user logs in to the same account on the first terminal device and the second terminal device, and the first terminal device and the second terminal device are in the same local area network, the method comprising: the second terminal device receives a broadcast connection notification from the first terminal device, the broadcast connection notification being used to request that the first connection application of the first terminal device be connected to the second terminal device; the second terminal device determines the second connection application based on the broadcast connection notification, and performs legitimacy authentication and matching relationship verification on the second connection application to obtain a legitimacy authentication result and a matching relationship verification result; when the legitimacy authentication result is legitimacy authentication passed and the matching relationship verification result is matching relationship verification passed, the second terminal device displays the connection contact of the second connection application.

[0008] The application continuation method of the embodiment of the present application performs legitimacy authentication and matching relationship verification on the second continuation application on the second terminal device. When the legitimacy authentication and matching relationship verification are passed, the continuation contact of the second continuation application is displayed on the second terminal device. This can avoid connecting the content of the application to an application with an unreliable trust source, improve the security of the application continuation, and thus improve the user experience.

[0009] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned broadcast connection notification includes: an application identifier APPID and a connection policy of the first connection application; wherein the connection policy includes at least one of the following: a connection status identifier, a package name or process name of at least one target connection application, a device type of at least one target connection application, an application market listing policy of at least one target connection application, and a minimum version supporting the connection; at least one target connection application includes a second connection application.

[0010] It should be understood that the connection status identifier can be a flag bit used to identify the connection policy status. For example, a flag bit of 0 can indicate that the connection is not supported, a flag bit of 1 can indicate application connection, and a flag bit of 3 can indicate browser connection. It is understood that the specific value of the flag bit can be set arbitrarily, as long as it can distinguish different states, and this embodiment of the application does not specifically limit it.

[0011] It should also be understood that if the first continuation application is an application on the Android platform, the continuation policy includes the package name of the first continuation application on the Android platform; if the first continuation application is an application on the Windows platform, the continuation policy includes the continuable process name of the first continuation application on the Windows platform.

[0012] The app market listing strategy can be any of the following: Not listed, Overseas app market 1, Domestic app market 1, Domestic app market 2, Overseas app market 2.

[0013] The minimum version of the application that supports the subsequent connection can be represented by the minimum version number of the application that supports the subsequent connection, which is used to represent the minimum version when the second subsequent application can be connected.

[0014] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned second terminal device determines the second connection application based on the broadcast connection notification, including: the second terminal device determines the application with the same device type as the second terminal device in at least one target connection application as the second connection application based on the device type of at least one target connection application.

[0015] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned legitimacy authentication of the second subsequent application includes: the second terminal device sends a legitimacy authentication request to the cloud server, and the legitimacy authentication request carries the APPID of the second subsequent application; the second terminal device receives cloud identification information of the second subsequent application from the cloud server, and the cloud identification information includes the package name and / or signature of the second subsequent application stored by the cloud server; the second terminal device compares the cloud identification information with the local identification information of the second subsequent application to obtain a legitimacy authentication result, and the local identification information is the package name and / or signature of the second subsequent application stored locally on the second terminal device.

[0016] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned matching relationship verification of the second connection application includes: the second terminal device sends a matching relationship query request to the cloud server, and the matching relationship query request carries the APPID of the second connection application; the second terminal device receives a first matching relationship from the cloud server, and the first matching relationship is used to represent at least one application that can be connected with the second connection application; the second terminal device determines whether at least one application includes the first connection application based on the first matching relationship, and obtains a matching relationship verification result.

[0017] It should be understood that when at least one application that has a matching relationship with the second connection application includes the first connection application, it is considered that there is a matching relationship between the first connection application and the second connection application, and the matching relationship verification passes; otherwise, it is considered that there is no matching relationship between the first connection application and the second connection application, and the matching relationship verification fails.

[0018] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned matching relationship verification of the second connection application includes: the second terminal device sends a matching relationship query request to the cloud server, and the matching relationship query request carries the APPID of the first connection application; the second terminal device receives the first matching relationship from the cloud server, and the first matching relationship is used to represent at least one application that can be connected with the first connection application; the second terminal device determines whether the at least one application includes the second connection application based on the first matching relationship, and obtains a matching relationship verification result.

[0019] It should be understood that when at least one application that has a matching relationship with the first succession application includes the second succession application, it is considered that there is a matching relationship between the first succession application and the second succession application, and the matching relationship verification passes; otherwise, it is considered that there is no matching relationship between the first succession application and the second succession application, and the matching relationship verification fails.

[0020] In combination with the first aspect, in certain implementations of the first aspect, the above-mentioned matching relationship verification of the second connection application includes: the second terminal device obtains a second matching relationship, the second matching relationship is used to represent at least one application that can be connected with the second connection application, and the second matching relationship is pre-stored locally by the second terminal device when installing the second connection application; the second terminal device determines whether at least one application includes the first connection application based on the second matching relationship, and obtains a matching relationship verification result.

[0021] It should be understood that the application developer has pre-defined the matching relationship between the second continuation application and other applications (i.e., the second matching relationship) in the installation package of the second continuation application. When the second terminal device installs the second continuation application, it parses the installation package of the second continuation application, obtains the second matching relationship, and stores the second matching relationship in the system registration manager.

[0022] Specifically, when at least one application that has a matching relationship with the second connection application includes the first connection application, it is considered that there is a matching relationship between the first connection application and the second connection application, and the matching relationship verification passes; otherwise, it is considered that there is no matching relationship between the first connection application and the second connection application, and the matching relationship verification fails.

[0023] In combination with the first aspect, in certain implementations of the first aspect, the above method also includes: the second terminal device sends a connection data request message to the first terminal device in response to the user's click operation on the connection contact; the second terminal device receives the connection data from the first terminal device and displays the connection data.

[0024] In a second aspect, a terminal device is provided, configured to execute the method in any possible implementation of the first aspect. Specifically, the terminal device includes a module configured to execute the method in any possible implementation of the first aspect.

[0025] In one design, the terminal device may include a module that executes the methods / operations / steps / actions described in each of the above aspects. The module may be a hardware circuit, software, or a combination of hardware circuit and software.

[0026] In another design, the terminal device is a communication chip, which may include an input circuit or interface for sending information or data, and an output circuit or interface for receiving information or data.

[0027] In another design, the terminal device is a communication device, which may include a transmitter for sending information or data and a receiver for receiving information or data.

[0028] In a third aspect, a terminal device is provided, comprising a processor and a memory. The processor is configured to read instructions stored in the memory and receive signals via a receiver and transmit signals via a transmitter to execute the method of any possible implementation of the first aspect.

[0029] Optionally, there are one or more processors and one or more memories.

[0030] Optionally, the memory may be integrated with the processor, or the memory may be provided separately from the processor.

[0031] In the specific implementation process, the memory can be a non-transitory memory, such as a read-only memory (ROM), which can be integrated with the processor on the same chip or can be set on different chips. The embodiments of the present application do not limit the type of memory and the setting method of the memory and the processor.

[0032] It should be understood that related data interaction processes, such as sending a connection data request message, can be the process of outputting instruction information from the processor, and receiving capability information can be the process of receiving input capability information from the processor. Specifically, the output data of the processor can be output to the transmitter, and the input data received by the processor can come from the receiver. The transmitter and receiver can be collectively referred to as a transceiver.

[0033] The terminal device in the third aspect mentioned above can be a chip, and the processor can be implemented by hardware or by software. When implemented by hardware, the processor can be a logic circuit, an integrated circuit, etc.; when implemented by software, the processor can be a general-purpose processor, which is implemented by reading the software code stored in the memory. The memory can be integrated in the processor or can be located outside the processor and exist independently.

[0034] In a fourth aspect, a computer program product is provided, which includes: a computer program (also referred to as code, or instructions), which, when executed, enables a computer to execute the method in any possible implementation of the first aspect.

[0035] In a fifth aspect, a computer-readable storage medium is provided, which stores a computer program (also referred to as code, or instructions), which, when run on a computer, enables the computer to execute the method in any possible implementation of the first aspect above. BRIEF DESCRIPTION OF THE DRAWINGS

[0036] FIG1 is a schematic diagram of an application scenario of an embodiment of the present application;

[0037] FIG2 is a schematic diagram of the structure of a terminal device provided in an embodiment of the present application;

[0038] FIG3 is a schematic diagram of the software structure of a terminal device provided in an embodiment of the present application;

[0039] FIG4 is a schematic diagram of another software structure of a terminal device provided in an embodiment of the present application;

[0040] FIG5 is a schematic flow chart of an application connection method provided in an embodiment of the present application;

[0041] FIG6 is a schematic diagram of a developer interface of an open platform provided in an embodiment of the present application;

[0042] 7 is a schematic flowchart of a method for continuing application registration and applying for connection permissions according to an embodiment of the present application;

[0043] FIG8 is a schematic flow chart of establishing a matching relationship by applying for a subsequent application according to an embodiment of the present application;

[0044] FIG9 is a schematic flow chart of a method for registering and binding a subsequent application according to an embodiment of the present application;

[0045] FIG10 is a schematic flowchart of a method for displaying a connection notification according to an embodiment of the present application;

[0046] FIG11 is a schematic flowchart of another method for displaying a connection notification according to an embodiment of the present application;

[0047] FIG12 is a schematic flow chart of a method for acquiring and loading connection data provided in an embodiment of the present application;

[0048] FIG13 is a schematic diagram of the source device interface in the application connection method provided by this application;

[0049] FIG14 is a schematic diagram of the interface of the peer device in the application connection method provided by the present application;

[0050] FIG15 is a schematic block diagram of a terminal device provided in an embodiment of the present application;

[0051] Figure 16 is a schematic block diagram of another terminal device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0052] The technical solution in this application will be described below with reference to the accompanying drawings.

[0053] In the embodiments of the present application, words such as "first" and "second" are used to distinguish identical or similar items with substantially the same functions and effects. Those skilled in the art will understand that words such as "first" and "second" do not limit the quantity or execution order, and words such as "first" and "second" do not necessarily mean different.

[0054] It should be noted that in the embodiments of this application, words such as "exemplary" or "for example" are used to indicate examples, illustrations, or descriptions. Any embodiment or design described in this application as "exemplary" or "for example" should not be construed as being preferred or advantageous over other embodiments or designs. Rather, the use of words such as "exemplary" or "for example" is intended to present the relevant concepts in a concrete manner.

[0055] In the embodiments of the present application, "at least one" refers to one or more, and "more" refers to two or more. "And / or" describes the association relationship of associated objects, indicating that three relationships may exist. For example, A and / or B can represent: the existence of A alone, the existence of A and B at the same time, and the existence of B alone, where A and B can be singular or plural. The character " / " generally indicates that the previous and next associated objects are in an "or" relationship. "At least one of the following items" or similar expressions refers to any combination of these items, including any combination of single items or plural items. For example, at least one of a, b, or c can represent: a, b, c, ab, a--c, bc, or abc, where a, b, c can be single or multiple.

[0056] In a multi-device scenario, terminal devices are divided into source devices and peer devices. The source device is the sending device, and the peer device is the receiving device. When the source device and the peer device are logged in with the same account and are in the same local area network, the applications on the source device and the peer device can be connected by the user triggering the connection conditions. For example, the source device is a computer and the peer device is a mobile phone. The user has logged in with the same account on the computer and the mobile phone, and the computer and the mobile phone are in the same local area network. If the user plays a video using the video player software on the computer, the video player software on the user's mobile phone can play the video synchronously. If the user is editing text on the computer, the text being edited can be displayed synchronously on the user's mobile phone.

[0057] To facilitate understanding of the present application, the application scenarios involved in the embodiments of the present application are introduced below in conjunction with FIG1 .

[0058] FIG1 is a schematic diagram of an application scenario 100 according to an embodiment of the present application. The application scenario includes a first terminal device 101 and a second terminal device 102, wherein the first terminal device 101 can serve as a source device and the second terminal device 102 can serve as a peer device. A user has logged into the same account on the first terminal device 101 and the second terminal device 102, and the first terminal device 101 and the second terminal device 102 are in the same local area network. The first terminal device 101 can transfer the content of an application to the second terminal device 102.

[0059] Optionally, the application scenario 100 further includes a third terminal device 103. The third terminal device 103 can also serve as a peer device. If the user logs in to the same account on the third terminal device 103 and the first terminal device 101 and the third terminal device 103 are in the same local area network, the first terminal device 101 can connect the content of the application to the third terminal device 103.

[0060] It should be understood that in a scenario where multiple devices are connected, the number of opposite-end devices (ie, receiving ends) may be one or more, and this embodiment of the present application does not limit this.

[0061] It should also be understood that this application does not require that the above-mentioned multiple terminal devices are all in the same local area network as the source device. For example, the above-mentioned first terminal device 101 and the second terminal device 102 can be in one local area network (such as WiFi), and the first terminal device 101 and the third terminal device 103 can be in another local area network (such as Bluetooth). The first terminal device 101 can connect the content on the application to the second terminal device 102 and the third terminal device 103 respectively.

[0062] In order to better understand the terminal device in the embodiment of the present application, the hardware structure of the terminal device in the embodiment of the present application is introduced below.

[0063] FIG2 shows a schematic structural diagram of a terminal device 200 .

[0064] The terminal device may include a processor 210, an external memory interface 220, an internal memory 221, a universal serial bus (USB) interface 230, a charging management module 240, a power management module 241, a battery 242, an antenna 1, an antenna 2, a mobile communication module 250, a wireless communication module 260, an audio module 270, a speaker 270A, a receiver 270B, a microphone 270C, an earphone interface 270D, a sensor module 280, a button 290, a motor 291, an indicator 292, a camera 293, a display screen 294, and a subscriber identification module (SIM) card interface 295, etc. The sensor module 280 may include a pressure sensor 280A, a gyroscope sensor 280B, an air pressure sensor 280C, a magnetic sensor 280D, an acceleration sensor 280E, a distance sensor 280F, a proximity light sensor 280G, a fingerprint sensor 280H, a temperature sensor 280J, a touch sensor 280K, an ambient light sensor 280L, a bone conduction sensor 280M, etc.

[0065] It is understood that the structures illustrated in the embodiments of the present application do not constitute specific limitations on the terminal device. In other embodiments of the present application, the terminal device may include more or fewer components than shown, or may combine or separate certain components, or arrange the components differently. The illustrated components may be implemented in hardware, software, or a combination of software and hardware.

[0066] The processor 210 may include one or more processing units. For example, the processor 210 may 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). Different processing units may be independent devices or integrated into one or more processors.

[0067] The controller can generate operation control signals according to the instruction operation code and timing signal to complete the control of instruction fetching and execution.

[0068] Processor 210 may also include a memory for storing instructions and data. In some embodiments, the memory in processor 210 is a cache memory. This memory can store instructions or data that have just been used or are being recycled by processor 210. If processor 210 needs to use the same instruction or data again, it can directly access the memory. This avoids duplicate accesses, reduces processor 210 latency, and thus improves system efficiency.

[0069] In some embodiments, the processor 210 may include one or more interfaces. The interfaces may 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.

[0070] It is understood that the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration and does not constitute a structural limitation on the terminal device. In other embodiments of the present application, the terminal device may also adopt a different interface connection method from the above embodiments, or a combination of multiple interface connection methods.

[0071] The terminal device implements display functionality through a GPU, display screen 294, and an application processor. The GPU is a microprocessor for image processing that connects the display screen 294 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 210 may include one or more GPUs that execute program instructions to generate or modify display information.

[0072] The terminal device can realize the shooting function through the ISP, camera 293, video codec, GPU, display 294 and application processor.

[0073] The external memory interface 220 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the terminal device. The external memory card communicates with the processor 210 via the external memory interface 220 to implement data storage functions. For example, files such as music and videos can be stored on the external memory card.

[0074] The internal memory 221 can be used to store computer executable program code, and the executable program code includes instructions. The internal memory 221 may include a program storage area and a data storage area. Among them, the program storage area may store an operating system, an application required for at least one function (such as a sound playback function, an image playback function, etc.), etc. The data storage area may store data created during the use of the terminal device (such as audio data, a phone book, etc.), etc. In addition, the internal memory 221 may include a high-speed random access memory, and may also include a non-volatile memory, such as at least one disk storage device, a flash memory device, a universal flash storage (UFS), etc. The processor 210 executes various functional applications and data processing of the terminal device by running instructions stored in the internal memory 221, and / or instructions stored in a memory provided in the processor. For example, the application connection method of an embodiment of the present application may be executed.

[0075] The terminal device of the present application can be used as a source device or as a peer device. The source device can also be called a sender, and the peer device can also be called a receiver. The software system of the terminal device can adopt a layered architecture, an event-driven architecture, a micro-kernel architecture, a microservice architecture, or a cloud architecture. Figure 3 of the embodiment of the present application takes the Android system with a layered architecture as an example to illustrate the software structure of the sender and the receiver.

[0076] As shown in Figure 3, using the sending end as an example, the layered architecture divides the software into several layers, each with clear roles and divisions of labor. Data transmission and communication between layers are achieved through software interfaces. In some embodiments, the Android system is divided into five layers: from top to bottom: the application layer, the application framework layer, the Android runtime and system libraries, the hardware abstraction layer (HAL), and the kernel layer.

[0077] The application layer can include a series of application packages. As shown in Figure 3, the application package can include third-party applications, software development kits (SDKs), Bluetooth, Wi-Fi, memos, videos, games, and other applications. For example, in the embodiment of the present application, in the application layer, the connection application can access the connection service SDK. The connection application can be a system application in the terminal device or a third-party application. Applications such as memos, videos, and games can also be system applications or third-party applications.

[0078] The application framework layer provides an application programming interface (API) and programming framework for applications in the application layer. The application framework layer includes some predefined functions.

[0079] As shown in Figure 3, the application framework layer may include a connection service manager, a communication service manager, an authentication service manager, a notification manager, a window manager, a resource manager, a content provider, and a view system, etc. In some application scenarios, the manager may also be called a module.

[0080] The connection service manager can be responsible for the management of connection tasks and can be the core of the entire connection service framework. For example, in the embodiment of the present application, the connection service manager can be responsible for the access of connection applications, the authentication of connection applications, the management of connection application icons, and the transmission of connection data across devices.

[0081] The communication service manager can be used to realize data transmission across devices. For example, in the embodiment of the present application, the communication service manager can realize security authentication and account authentication of devices with the same account, self-discovery and self-organizing networking of devices, data transmission between devices, and access to communication services.

[0082] The authentication service manager may be responsible for verifying the legitimacy of the application. For example, in an embodiment of the present application, the application may be allowed to access the connection service after the authentication service manager passes the verification.

[0083] The notification manager enables applications to display notification information in the status bar, which can be used to convey notification-type messages and can disappear automatically after a short stay without user interaction. For example, the notification manager is used to notify the completion of downloads, message reminders, etc. The notification manager can also be a notification that appears in the status bar at the top of the system in the form of a chart or scroll bar text, such as a notification of an application running in the background, or a notification that appears on the screen in the form of a dialog window. For example, a text message is prompted in the status bar, a prompt sound is emitted, the terminal device vibrates, the indicator light flashes, etc. For example, in an embodiment of the present application, when the terminal device receives a broadcast connection notification, the notification manager can display the broadcast connection notification in the taskbar.

[0084] The window manager is used to manage window programs. The window manager can obtain the display size, determine whether there is a status bar, lock the screen, touch the screen, drag the screen, take screenshots, etc.

[0085] The resource manager provides various resources for applications, such as localized strings, icons, images, layout files, video files, and so on.

[0086] Content providers are used to implement data sharing between different applications, allowing one program to access data in another while ensuring the security of the accessed data.

[0087] The view system can be responsible for the interface drawing and event processing of the application. For example, in the embodiment of the present application, the view system can be used to handle the event processing after the user clicks the notification icon of the subsequent application.

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

[0089] The core library consists of two parts: one is the function that needs to be called by the Java language, and the other is the Android core library.

[0090] The application layer and application framework layer run in a virtual machine. The virtual machine executes Java files in the application layer and application framework layer as binary files. The virtual machine manages object lifecycles, stack management, thread management, security and exception management, and garbage collection.

[0091] The system library can include multiple functional modules, such as media libraries, function libraries, and graphics processing libraries (such as OpenGL ES).

[0092] The media library supports playback and recording of a variety of common audio and video formats, as well as static image files. The media library can support a variety of audio and video encoding formats, such as: MPEG4, H.264, MP3, AAC, AMR, JPG, PNG, etc.

[0093] The function library provides developers with API interfaces for multiple services, making it easy for developers to quickly integrate and implement various functions.

[0094] The graphics processing library is used to implement graphics drawing, image rendering, compositing, and layer processing.

[0095] The Hardware Abstraction Layer (HAL) is an abstracted layer between the kernel layer and the Android runtime. The HAL encapsulates hardware drivers, providing a unified interface for upper-layer applications. The HAL may include a Bluetooth module, a Wi-Fi module, a hardware configuration module, and the like. For example, in an embodiment of the present application, the Bluetooth and Wi-Fi modules in the HAL can shield the kernel layer's Bluetooth and Wi-Fi drivers from specific hardware implementation details. This allows upper-layer applications to implement Bluetooth and Wi-Fi functionality by calling the interface without having to know the kernel layer's hardware driver implementation details.

[0096] The kernel layer is the layer between hardware and software. The kernel layer may include display drivers, camera drivers, audio drivers, Bluetooth drivers, WiFi drivers, CPU drivers, etc. For example, in the embodiment of the present application, the communication service manager can connect across devices through related modules such as Bluetooth drivers and WiFi drivers, enabling self-discovery and ad hoc networking of devices.

[0097] The following describes the transmission process of connection data in the Android system layered framework by example, combining the scenario of broadcasting connection notification display between terminal devices during the application connection process.

[0098] As shown in Figure 3, at the application layer on the sending end, applications can access the connection service SDK to implement data transmission with the connection service. The connection service SDK can send connection service binding and application registration connection service requests to the connection service manager, thereby implementing the connection application registration and binding data transmission between the application layer and the application framework layer.

[0099] In the application framework layer, the connection service manager can complete the binding of communication services by performing signaling and data transmission with the communication service manager. The connection service manager can also bind authentication services and apply authentication with the authentication service manager.

[0100] After the application is successfully registered, the communication service manager can call the Bluetooth module interface and the WIFI module interface provided by the hardware abstraction layer to realize the self-discovery and self-organizing network of the device, and realize the session connection, message transmission, and transmission of the connection content between terminal devices through the Bluetooth driver and WIFI driver in the kernel layer.

[0101] After the receiving end receives connection-related data from the sending end at the kernel layer, it can transmit the data to the relevant modules in the hardware abstraction layer. In the receiving end's application framework layer, the communication service manager can obtain the transmitted connection data through the interface provided in the hardware abstraction layer and perform signaling and data transmission with the connection service manager. After receiving the connection-related data, the connection service manager can bind the authentication service and apply authentication with the authentication service manager. Furthermore, the connection service manager can instruct the desktop launcher to display the broadcast connection notification in the form of an icon.

[0102] It can be understood that the sending end or receiving end of the embodiment of the present application can also adopt the Windows system. As shown in Figure 4, the difference from the Android system is that the layered architecture of the Windows system is mainly divided into user state and kernel state. The user state can include user application processes, system processes and service processes, etc.; the kernel state can include the kernel and device driver layer, as well as the hardware abstraction layer, etc.

[0103] The user application process can execute a series of applications. The specific executable application types can be the same as the application types in the application layer of the Android system, which will not be repeated here.

[0104] System processes and service processes may include a connection service manager, a communication service manager, an authentication service manager, a system process, a notification manager, a window manager, and the like, which can provide corresponding services for the execution of user application processes. The specific functions of processes such as the connection service manager, the communication service manager, and the authentication service manager related to the embodiments of this application can be found in the description of the relevant managers in Android and will not be repeated here.

[0105] The kernel layer and device driver layer may include Bluetooth drivers, WiFi drivers, display drivers, etc. The hardware abstraction layer may include Bluetooth modules, WiFi modules, hardware configuration modules, etc. The functions of the specific functional modules can be found in the relevant descriptions in Android and will not be repeated here.

[0106] The following describes in detail the application connection method of the embodiment of the present application. The following embodiments can be combined with each other or implemented independently. For the same or similar concepts or processes, some embodiments may not be repeated. In the embodiment of the present application, the application program is referred to as "application".

[0107] Figure 5 is a schematic flow chart of an application connection method 500 provided in an embodiment of the present application. This method 500 can be applied to the aforementioned scenario 100. The hardware structure of the terminal device involved in this method 500 can be as described in Figure 2, and the software structure can be as shown in Figure 3 or Figure 4. The first terminal device can correspond to the transmitting end in Figure 3 or Figure 4, and the second terminal device can correspond to the receiving end in Figure 3 or Figure 4.

[0108] S501: A first terminal device sends a broadcast connection notification to a second terminal device. Correspondingly, the second terminal device receives the broadcast connection notification from the first terminal device.

[0109] Specifically, the broadcast connection notification is used to request that the first connection application of the first terminal device be connected to the second terminal device.

[0110] S502: The second terminal device determines a second connection application according to the broadcast connection notification.

[0111] Specifically, the broadcast connection notification carries a device type of at least one target connection application, and the second terminal device determines a target connection application having the same device type as the second terminal device as the second connection application.

[0112] S503: The second terminal device performs a legitimacy authentication and a matching relationship verification on the second subsequent application to obtain a legitimacy authentication result and a matching relationship verification result.

[0113] S504: When the legality authentication result is legality authentication passed and the matching relationship verification result is matching relationship verification passed, the second terminal device displays a connection contact point of the second connection application.

[0114] The application continuation method of the embodiment of the present application performs legitimacy authentication and matching relationship verification on the second continuation application on the second terminal device. When the legitimacy authentication and matching relationship verification are passed, the continuation contact of the second continuation application is displayed on the second terminal device. This can avoid connecting the content of the application to an application with an unreliable trust source, improve the security of the application continuation, and thus improve the user experience.

[0115] The following describes in detail the application connection method of the embodiment of the present application.

[0116] After the application is developed, it needs to be registered with the cloud server and apply for connection permissions from the cloud server.

[0117] It should be understood that application developers can register and apply for continued permissions through the open platform. The open platform can be understood as a web page or client of the open platform that can communicate with the cloud server. Specifically, application developers can log in to their developer accounts through their own devices (such as tablets, computers, laptops, etc.), enter the developer interface of the open platform, register the application by filling in the relevant information of the application, and apply for continued permissions for the application. The administrator of the open platform can log in to his administrator account through his own device (such as tablets, computers, laptops, etc.), enter the administrator interface of the open platform, review the information submitted by the application developer, and assign an application identifier (application identification, APPID) and continued permissions to the application.

[0118] Figure 6 is a schematic diagram of a developer interface for an open platform provided in an embodiment of the present application. Figure 7 is a schematic flow chart of a method 700 for continuing application registration and applying for continued permissions provided in an embodiment of the present application. The following, in conjunction with Figures 6 and 7, details the process of application developers registering on the open platform and applying for continued permissions.

[0119] As shown in Figure 6, in interface a of Figure 6, the application developer selects the platform type of the application to be registered as "Android", the device type of the application to be registered as "tablet", and the application type of the application to be registered as a tool class, enters the application package name of the application to be registered as "Com.Beiwanglu", the user identification (UID) of the application to be registered as "5256XX1", and the application signature of the application to be registered as "0e 56 46 74 4a", and uploads the application icon of the application to be registered (that is, the six-pointed star-shaped icon shown in Figure 6). Then, the application developer clicks the "Create" button. As shown in Figure 7, in response to the application developer's click operation, the open platform sends a registration instruction to the cloud server, and the registration instruction carries the relevant information selected and input by the above application developer. The cloud server receives the registration instruction and sends an audit task generation instruction to the open platform based on the relevant information selected and input by the above application developer. The audit task generation instruction is used to generate an audit task for the administrator account of the open platform. The open platform receives the audit task generation instruction and, based on the audit task generation instruction, displays a button with an audit task prompt message on the open platform's administrator interface. The open platform administrator clicks this button to view the audit task and conducts a qualification review of the relevant information selected and entered by the application developer. If the qualification review passes, the open platform administrator clicks the "Apply" button, and the open platform sends the audit approval instruction to the cloud server. The cloud server receives the audit approval instruction, assigns an APPID to the application to be registered, and sends it to the open platform. After receiving the APPID of the application to be registered, the open platform jumps from interface a shown in Figure 6 to interface b shown in Figure 6.

[0120] In interface b shown in Figure 6, the application developer clicks the "Apply for Continuation Permissions" button, and the interface jumps to interface c shown in Figure 6. Interface c shown in Figure 6 displays registration information such as the memo application's platform type "Android", application name "Memo", APPID "123456", application package name "Com.Beiwanglu", application signature "0e 56 46 74 4a", and application icon "hexagonal star-style icon", as well as permission setting options. Among them, the permission settings include three options: 1. Basic Continuation Permissions; 2. Domestic Application Market Continuation; 3. Foreign Application Market Continuation. The application developer clicks to select "Basic Continuation Permissions" and "Domestic Application Market Continuation" and clicks the "Submit" button. As shown in Figure 7, in response to the application developer's click operation, the open platform sends a permission application instruction to the cloud server, applying for basic Continuation Permissions and domestic application market Continuation Permissions from the cloud server. The cloud server receives a permission request instruction, which includes the platform type, application name, APPID, application package name, application signature, application icon, and related information selected by the application developer. Based on the permission request instruction, the cloud server sends a permission approval task generation instruction to the open platform. This permission approval task generation instruction is used to generate a permission approval task for the open platform administrator account. The open platform receives the permission approval task generation instruction and displays a button with a permission approval task prompt message on the open platform administrator interface. The open platform administrator clicks this button to view the permission approval task and approves the subsequent permissions selected by the application developer. If the permission is approved, the open platform administrator clicks the Approve button, and the open platform sends a permission approval instruction to the cloud server. The cloud server receives the permission approval instruction, establishes an association between the platform type, application name, APPID, application package name, application signature, application icon, and the subsequent permissions, and stores it. The open platform transitions from interface c shown in Figure 6 to interface d shown in Figure 6. In interface d shown in Figure 6, the open platform displays a pop-up window on the application developer's interface stating "Permission Approval Successful."

[0121] It should be understood that, with respect to qualification review, the above description only uses the case where the qualification review is passed as an example. If the qualification review of the application to be registered fails, the cloud server will not assign an APPID to the application to be registered, and the interface a shown in FIG6 will not jump to the interface b shown in FIG6 , but will directly display a prompt message to indicate that the application developer's qualification review has failed. With respect to continued permission approval, the above description only uses the case where the approval is passed as an example. If the continued permission approval of the application to be registered fails, the cloud server will not establish and store the above-mentioned association relationship, and the open platform will display a prompt message of the approval result (i.e., approval failed) to the application developer on the developer interface.

[0122] It should be noted that the APPID is the identification information assigned by the cloud server during the application registration process, and the UID is the identification information assigned during the application development process. For registered applications, their installation packages will contain the APPID. The terminal device can parse and save the application's APPID by installing the application.

[0123] In the embodiment of the present application, applications on different platforms or different types of devices need to go through the registration process shown in Figure 6 above, so that applications on different platforms or different types of devices can be connected. For example, the developer of Memo A for an Android platform phone needs to register Memo A on the cloud server, apply for connection permission for Memo A for the Android platform phone, and obtain APPID 1 of Memo A for the Android platform phone; the developer of Memo B for an Android platform tablet needs to register Memo B on the cloud server, apply for connection permission for Memo B for the Android platform tablet, and obtain APPID 2 of Memo B for the Android platform tablet; the developer of Memo C for a Windows platform computer also needs to register Memo C on the cloud server, apply for connection permission for Memo C for the Windows platform computer, and obtain APPID 3 of Memo C for the Windows platform computer.

[0124] For applications on the Android platform, application developers need to enter the application's package name, signature, icon, and developer information on the Android platform when registering; for applications on the Windows platform, application developers need to enter the application's process name, registry information and installation directory, signature, icon, and developer information on the Windows platform when registering.

[0125] For example, Table 1 shows descriptions and examples of various information for the Android platform and the Windows platform.

[0126] Table 1

[0127] After applications on different platforms or different categories of devices are registered on the cloud server and apply for connection permissions, a matching relationship can be established between the applications. For example, a matching relationship can be established between Memo A on an Android phone and Memo B on an Android tablet. In this way, subsequent applications on different platforms or different categories of devices can be connected based on this matching relationship.

[0128] In the embodiment of the present application, the above matching relationship can be established in a variety of different ways.

[0129] In one possible implementation, an application developer can apply to a cloud server to establish a matching relationship between applications on different platforms or different types of devices. For example, the developer of Memo A can apply to a cloud server to establish a matching relationship between Memo A and Memo B. FIG8 shows a schematic flow chart of a method 800 for establishing a matching relationship through subsequent application applications, provided in an embodiment of the present application.

[0130] As shown in Figure 8, the developer of Memo A logs in to their developer account on the Open Platform. On the Open Platform's developer interface, Memo A enters the target Memo B's platform type, APP ID, package name, signature, and developer information, and then clicks the "Apply" button. In response to this click, the Open Platform sends an application instruction to the cloud server, which carries information such as Memo A's APP ID, Memo B's APP ID, package name, and signature. The cloud server receives this application instruction and authenticates Memo B's legitimacy. Specifically, it queries the cloud server for Memo B's package name and signature based on Memo B's APP ID in the application instruction and compares them with the package name and signature in the application instruction. If the package name and signature in the cloud server's storage match the package name and signature in the application instruction, the cloud server deems Memo B legitimate, authenticates it, and sends a matching request to the Open Platform, which carries Memo A's platform type, APP ID, package name, signature, and developer information. The platform type, package name, signature, and developer information of Memo A can be obtained by querying the cloud server based on the previous process of continuing the application registration and applying for continued permissions. The open platform receives the matching relationship establishment request and displays the matching relationship establishment request message on the developer interface of Memo B. The developer of Memo B logs in to his or her developer account on the open platform and agrees or rejects the matching relationship establishment request by clicking. In response to the user's click operation, the open platform sends a notification of approval or rejection of the matching relationship establishment to the cloud server. The cloud server receives the notification of approval or rejection of the matching relationship establishment. If the notification is for approval of the matching relationship establishment, the cloud server establishes and stores the matching relationship between Memo A and Memo B, and sends a notification of successful matching relationship establishment to the open platform. The open platform receives the notification of successful matching relationship establishment and displays a notification reminder of successful matching relationship establishment on the developer interface of Memo A. Otherwise, the cloud server does not establish a matching relationship between Memo A and Memo B, and displays a notification reminder of failed matching relationship establishment on the developer interface of Memo A.

[0131] In another possible implementation, the application developer can pre-define the matching relationship of the application in the application installation package. When the user installs the application on the terminal device, the terminal device can directly store the matching relationship of the application. For example, the application developer can pre-describe the APPID of other applications trusted by the application (hereinafter referred to as target connection applications) in the application's related files, and establish a matching relationship between the application and the target connection application.

[0132] For example, for Android applications, the application developer may describe the target application through the Metadata in the AndroidManifest.xml manifest file. For Windows applications, the application developer may describe the target application through the registry value item of the application.

[0133] For example, both Memo A and Memo B are Android applications, the APPID of Memo A is 123456, and the APPID of Memo B is 654321. The developer of Memo A describes the metadata in the AndroidManifest.xml manifest file of Memo A as follows:

[0134] <meta-data android:name=“com.xxx.xxx.client.appid”android:value=“123456” / >

[0135] <meta-data android:name=“com.xxx.xxx.allowstart.appids”android:value=“654321” / >.

[0136] This description indicates that the target successor application trusted by memo A includes memo B, that is, there is a matching relationship between memo A and memo B.

[0137] When the user installs memo A on the mobile phone, the mobile phone can parse the installation package of application A, obtain the matching relationship between memo A and memo B, and store the matching relationship in the system registration module on the mobile phone.

[0138] The above describes the process of applying for application permissions and establishing matching relationships. The following will describe the application connection method of this application in detail in conjunction with the interaction process between the modules.

[0139] The application continuation method of the present application can be divided into three stages: the first stage is the registration and binding of the continuation application, the second stage is the display of the continuation notification, and the third stage is the acquisition and loading of the continuation data.

[0140] A system for implementing a method for cross-device application connection may include a first terminal device, a second terminal device, and a cloud server. The first terminal device may correspond to the transmitting end in Figure 3 or Figure 4, and the second terminal device may correspond to the receiving end in Figure 3 or Figure 4. Both the first and second terminal devices may include various functional modules for implementing connection services, such as a connection service SDK, a connection service manager, a communication service manager, and an authentication service manager. The cloud server may include functional modules for implementing connection services, such as a communication service manager, an authentication service module, and a matching verification module.

[0141] For the sake of convenience of description, the connection application of the first terminal device will be referred to as the first connection application, the connection service SDK of the first terminal device will be referred to as the first connection service SDK, the connection service manager of the first terminal device will be referred to as the first connection service manager, the communication service manager of the first terminal device will be referred to as the first communication service manager, and the authentication service manager of the first terminal device will be referred to as the first authentication service manager.

[0142] The connection application of the second terminal device is called the second connection application, the connection service SDK of the second terminal device is called the second connection service SDK, the connection service manager of the second terminal device is called the second connection service manager, the communication service manager of the second terminal device is called the second communication service manager, the authentication service manager of the second terminal device is called the second authentication service manager, and the desktop launcher of the second terminal device is called the desktop launcher.

[0143] The communication service manager of the cloud server is referred to as a third communication service manager, the authentication service module of the cloud server is referred to as a third authentication service module, and the matching verification module of the cloud server is referred to as a matching verification module.

[0144] First, the first stage: continuing the registration and binding of the application will be described with reference to Figure 9. Figure 9 is a schematic flow chart of a method 900 for continuing the registration and binding of the application provided in an embodiment of the present application. The method 900 may include the following steps.

[0145] S901: A first connection application determines whether a current connection scenario is a first valid connection scenario.

[0146] S902, when the current connection scenario is the first valid connection scenario, the first connection application sends a registration connection service request to the first connection service SDK, and the registration connection service request carries the UID and APPID of the first connection application; correspondingly, the first connection service SDK receives the registration connection service request.

[0147] Specifically, the first effective continuation scenario is determined based on the user behavior on the first continuation application. The first continuation service SDK is integrated into the first continuation application. When the first continuation application of the first terminal device monitors some user behaviors, the first continuation application can access the continuation service by calling the registration interface of the first continuation service SDK. The user behavior can be the user clicking the first continuation application icon to start the application, or the user performing editing and other operations in the first continuation application, or the user clicking the play button in the first continuation application to perform operations such as video playback, music playback or other media playback. The specific monitored user behavior can be customized by the continuation application, and the embodiments of the present application are not limited here.

[0148] Exemplarily, when the first continuation application is a memo, in one possible implementation, the first valid continuation scenario of the memo may be: in response to a user's click operation on the application icon of the memo, the memo application is in the startup state; in another possible implementation, the first valid continuation scenario of the memo may also be: in response to a user's input operation on the memo, the memo is currently in the editing state.

[0149] S903: The first connection service SDK sends a registration connection service request to the first connection service manager. Correspondingly, the first connection service manager receives the registration connection service request.

[0150] S904: The first connection service manager sends a first legitimacy authentication request to the first authentication service manager. Correspondingly, the first authentication service manager receives the first legitimacy authentication request.

[0151] Specifically, the first legitimacy authentication request is used to request authentication of the first subsequent application, and the first legitimacy authentication request carries the UID (or process information) and APPID of the first subsequent application.

[0152] S905: The first authentication service manager determines the local identification information of the first subsequent application based on the first legitimacy authentication request.

[0153] Specifically, the first authentication service manager may determine the local identification information of the first subsequent application according to the UID (or process information) of the first subsequent application in the first legitimacy authentication request. The local identification information includes the package name (or process name) and signature of the first subsequent application.

[0154] For example, when the first connection application is an Android platform application, the first authentication service manager may determine the local identification information of the first connection application based on the UID of the first connection application. The local identification information includes the package name and signature of the first connection application. When the first connection application is a Windows platform application, the first authentication service manager may determine the local identification information of the first connection application based on the process information of the first connection application. The local identification information includes the process name and signature of the first connection application.

[0155] S906: The first authentication service manager sends a first legitimacy authentication request to the first communication service manager. Correspondingly, the first communication manager receives the first legitimacy authentication request.

[0156] S907: The first communication service manager sends a first legitimacy authentication request to the third communication service manager. Correspondingly, the third communication service manager receives the first legitimacy authentication request.

[0157] S908: The third communication service manager sends a first legitimacy authentication request to the third authentication service module. Correspondingly, the third authentication service module receives the first legitimacy authentication request.

[0158] S909: The third authentication service module obtains the cloud identification information of the first subsequent application based on the first legitimacy authentication request.

[0159] Specifically, the third authentication service module can obtain the cloud identification information of the first subsequent application according to the APPID of the first subsequent application in the first legitimacy authentication request, where the cloud identification information includes the package name (or process name) and signature of the first subsequent application.

[0160] It should be understood that the cloud identification information is stored by the cloud server during the application process of the above-mentioned succession authority by the first succession application.

[0161] S910: The third authentication service module sends the cloud identification information of the first connection application to the third communication service manager. Correspondingly, the third communication service manager receives the cloud identification information of the first connection application.

[0162] S911. The third communication service manager sends the cloud identification information of the first connection application to the first communication service manager. Correspondingly, the first communication service manager receives the cloud identification information of the first connection application.

[0163] S912: The first communication service manager sends the cloud identification information of the first connection application to the first authentication service manager. Correspondingly, the first authentication service manager receives the cloud identification information of the first connection application.

[0164] S913: The first authentication service manager compares the cloud identification information and the local identification information of the first subsequent application, and determines a legitimacy authentication result of the first subsequent application based on whether the cloud identification information and the local identification information match.

[0165] It should be understood that the legitimacy authentication results may include authentication passed and authentication failed. The match here can be the same. When the cloud identification information and the local identification information are the same, the first authentication service manager determines that the legitimacy authentication of the first subsequent application is passed. Otherwise, the first authentication service manager determines that the legitimacy authentication of the first subsequent application is failed.

[0166] S914: The first authentication service manager sends the validity authentication result of the first connection application to the first connection service manager. Correspondingly, the first connection service manager receives the validity authentication result of the first connection application.

[0167] S915: The first connection service manager sends the legitimacy authentication result of the first connection application to the first connection application. Correspondingly, the first connection application receives the legitimacy authentication result of the first connection application.

[0168] It should be understood that when the legitimacy authentication result of the first continuation application is authentication passed, the continuation service registration of the first continuation application is successful, and the first continuation application has the ability to send broadcast continuation notifications; otherwise, the continuation service registration of the first continuation application fails, and the first continuation application does not have the ability to send broadcast continuation notifications.

[0169] It should also be understood that the above-mentioned S905 can be executed in the time period after S904 and before S913, and this application does not limit this.

[0170] After the first connection application connection service is successfully registered, the first communication service manager and the second communication service manager can perform self-discovery and self-networking via Bluetooth or Wi-Fi, as well as account authentication. Furthermore, the first communication service manager can send information indicating that the second terminal device is online to the first connection service manager. For example, the information indicating that the second terminal device is online can include information such as the device identification (DevID) of the second terminal device.

[0171] After the first connection service manager receives the information sent by the first communication service manager indicating that the second terminal device is online, the information of the second terminal device can be stored and managed to execute the subsequent application connection process.

[0172] Next, the second stage: display of the connection notification is described in conjunction with Figure 10 or Figure 11. Figure 10 is a schematic flow chart of a method 1000 for displaying a connection notification provided in an embodiment of the present application. The method 1000 may include the following steps:

[0173] S1001: A first connection application determines whether a current connection scenario is a second valid connection scenario.

[0174] Specifically, the second effective connection scenario is similar to the first effective connection scenario, which will not be described in detail herein. The second effective connection scenario may be the same as or different from the first effective connection scenario, and this application does not limit this.

[0175] In one possible implementation, the second valid connection scenario and the first valid connection scenario may both be that the first connection application is in the startup state. In another possible implementation, the first valid connection scenario may be that the first connection application is in the startup state, and the second valid connection scenario may be that the first connection application is in the editing state.

[0176] S1002: When the current connection scenario is the second valid connection scenario, the first connection application sends a broadcast connection notification to the first connection service SDK. Correspondingly, the first connection service SDK receives the broadcast connection notification.

[0177] Specifically, the broadcast connection notification may carry the APPID and connection policy of the first connection application.

[0178] It should be understood that the connection strategy is used to determine the devices that can be connected, and each application can correspond to its own connection strategy. For example, the connection strategy of an application can be related to one or more of the following fields:

[0179] Connection status identifier, device types supported by the application, APPID of the target connection application, package name or process name of the target connection application, application market listing strategy of the second connection application, browser startup parameters, minimum version supporting connection, etc.

[0180] The connection status identifier may be a flag bit used to identify the connection policy status. For example, a flag bit of 0 may indicate that connection is not supported, a flag bit of 1 may indicate application connection, and a flag bit of 3 may indicate browser connection. It is understood that the specific value of the flag bit can be set arbitrarily as long as it can distinguish different states, and this embodiment of the application does not specifically limit it.

[0181] Exemplarily, when the connection policy includes the device types supported by the application, for example, the connection policy includes that the second connection application can support the implementation of connection services on mobile phones, tablets, TVs, computers, etc., then when the first connection service manager confirms that the second terminal device is a mobile phone, tablet, TV or computer, etc., the first connection service manager can instruct the first communication service manager and the second communication service manager to establish a session path.

[0182] If the target application is an Android platform application, the continuation policy includes the package name of the target application on the Android platform; if the target application is a Windows platform application, the continuation policy includes the name of the target application on the Windows platform.

[0183] The app market listing strategy can be any of the following: Not listed, Overseas app market 1, Domestic app market 1, Domestic app market 2, Overseas app market 2.

[0184] The minimum version of the application supported for the continuation may be represented by the minimum version number of the application supported for the continuation, which is used to indicate the minimum version of the second continuation application at which the continuation can be performed. For example, if the continuation policy includes that the first continuation application can support a minimum version number of V1.5 or a minimum version of 15, then upon confirming that the version number of the second continuation application is greater than or equal to V1.5, or the version number of the second continuation application is greater than or equal to 15, the first continuation service manager may instruct the first communication service manager and the second communication service manager to establish a session path.

[0185] It should be understood that the number of target connection applications can be at least one. For example, when the first terminal device and multiple terminal devices including the second terminal device are in the same local area network and logged in to the same account, there can be multiple target connection applications in the broadcast connection notification.

[0186] For example, a user logs in to the same account on a mobile phone, tablet computer, and computer. If the mobile phone, tablet computer, and computer are in the same local area network, the mobile phone, as the sending end (i.e., the first terminal device mentioned above), can identify that the tablet computer and computer are online. When the memo A on the mobile phone sends the above-mentioned broadcast connection notification to the tablet computer and the computer, the target connection application included in the broadcast connection notification is the memo B on the tablet computer and the memo C on the computer.

[0187] When the target connection applications include the tablet's memo B and the computer's memo C, the connection policy carried in the broadcast connection notification contains the following content:

[0188] S1003: The first connection service SDK sends a broadcast connection notification to the first connection service manager. Correspondingly, the first connection service manager receives the broadcast connection notification.

[0189] S1004: The first connection service manager sends a broadcast connection notification to the first communication service manager. Correspondingly, the first communication service manager receives the broadcast connection notification.

[0190] S1005: The first communication service manager sends the broadcast connection notification to the second communication service manager. Correspondingly, the second communication service manager receives the broadcast connection notification.

[0191] S1006: The second communication service manager sends the broadcast connection notification to the second connection service manager. Correspondingly, the second connection service manager receives the broadcast connection notification.

[0192] S1007: The second connection service manager determines a second connection application based on the broadcast connection notification.

[0193] Specifically, the broadcast connection notification carries device type information of the target connection application, and the second connection service manager can determine the second connection application from the target connection application according to the device type information of the target connection application and the second terminal device.

[0194] For example, when the target connection application includes the tablet computer's memo B and the computer's memo C, and the second terminal device is a tablet computer, the second connection service manager may determine the tablet computer's memo B as the second connection application.

[0195] S1008: The second connection service manager determines whether the second terminal device has installed the second connection application.

[0196] Specifically, the second connection service manager can query whether the second terminal device includes the package name / process name of the second connection application. When the second terminal device includes the package name / process name of the second connection application, it can be determined that the second terminal device has installed the second connection application.

[0197] S1009: When the second connection application has been installed on the second terminal device, the second connection service manager sends a second legitimacy authentication request and a matching relationship verification request to the second authentication service manager. Correspondingly, the second authentication service manager receives the second legitimacy authentication request and the matching relationship verification request.

[0198] Specifically, the second legitimacy authentication request is used to request authentication of the second subsequent application, and the second legitimacy authentication request carries the APPID of the second subsequent application. The matching relationship verification request is used to request verification of the matching relationship of the first subsequent application, and the matching relationship verification request carries the APPID of the first subsequent application.

[0199] It should be understood that, in the case that the second connection application is not installed on the second terminal device, the second connection service manager may instruct the second terminal device to install the second connection application.

[0200] S1010: The second authentication service manager sends a second legitimacy authentication request to the second communication service manager. Correspondingly, the second communication service manager receives the second legitimacy authentication request.

[0201] S1011: The second communication service manager sends a second legitimacy authentication request to the third communication service manager. Correspondingly, the third communication service manager receives the second legitimacy authentication request.

[0202] S1012: The third communication service manager sends a second legitimacy authentication request to the third authentication service module. Correspondingly, the third authentication service module receives the second legitimacy authentication request.

[0203] S1013: The third authentication service module obtains the cloud identification information of the second subsequent application according to the second legitimacy authentication request.

[0204] It should be understood that the cloud identification information includes the package name (or process name) and signature of the second subsequent application stored in the cloud server.

[0205] S1014: The third authentication service module returns the cloud identification information to the third communication service manager. Correspondingly, the third communication service manager receives the cloud identification information.

[0206] S1015: The third communication service manager returns the cloud identification information to the second communication service manager. Correspondingly, the second communication service manager receives the cloud identification information.

[0207] S1016: The second communication service manager returns the cloud identification information to the second authentication service manager. Correspondingly, the second authentication service manager receives the cloud identification information.

[0208] S1017: The second authentication service manager compares the cloud identification information and the local identification information, and determines the legitimacy authentication result of the second subsequent application based on whether the cloud identification information and the local identification information match.

[0209] Specifically, the local identification information is the package name (or process name) and signature of the second connection application stored on the second terminal device. The broadcast connection notification carries the package name / process name of the second connection application. The second authentication service manager can obtain the signature of the second connection application through the package name / process name of the second connection application.

[0210] For example, when the second follow-up application is an Android platform application, the second authentication service manager can obtain the signature of the second follow-up application based on the package name of the second follow-up application. When the second follow-up application is a Windows platform application, the second authentication service manager can obtain the installation path of the second follow-up application from the registry information RegRoot and RegKey based on the process name of the second follow-up application, concatenate the relative path described by "ImagePath", find the main process of the second follow-up application, and then read the signature of the second follow-up application.

[0211] It should be understood that the legitimacy authentication result of the second subsequent application is similar to the legitimacy authentication result of the first subsequent application mentioned above, and will not be repeated here.

[0212] S1018: The second authentication service manager sends a matching relationship verification request to the second communication service manager. Correspondingly, the second communication service manager receives the matching relationship verification request.

[0213] S1019: The second communication service manager sends a matching relationship query request to the third communication service manager based on the matching relationship verification request. Correspondingly, the third communication service manager receives the matching relationship query request.

[0214] Specifically, the matching relationship query request carries the APPID of the first subsequent application.

[0215] S1020: The third communication service manager sends a matching relationship query request to the matching verification module. Correspondingly, the matching verification module receives the matching relationship query request.

[0216] S1021: The matching verification module obtains a first matching relationship based on the matching relationship query request.

[0217] It should be understood that, through the above method of establishing a matching relationship between applications on the cloud server, the matching verification module stores the matching relationship between applications. The first subsequent application may or may not have a matching relationship with at least one subsequent application, and this application does not limit this.

[0218] Specifically, the matching verification module may query applications having a matching relationship with the first subsequent application according to the APPID of the first subsequent application, and obtain at least one application having a matching relationship with the first subsequent application.

[0219] S1022: The matching verification module returns the first matching relationship to the third communication service manager. Correspondingly, the third communication service manager receives the first matching relationship.

[0220] S1023: The third communication service manager returns the first matching relationship to the second communication service manager. Correspondingly, the second communication service manager receives the first matching relationship.

[0221] S1024: The second communication service manager returns the first matching relationship to the second authentication service manager. Correspondingly, the second authentication service manager receives the first matching relationship.

[0222] S1025: The second authentication service manager performs a matching relationship verification based on the first matching relationship, that is, determines whether there is a matching relationship between the first connection application and the second connection application.

[0223] Specifically, the first matching relationship includes two cases, and matching relationship verification based on the first matching relationship also includes two cases:

[0224] In one case, the first matching relationship indicates at least one application that can be connected to the second connection application. In this case, determining whether a matching relationship exists between the first connection application and the second connection application may include determining whether the at least one application that has a matching relationship with the second connection application includes the first connection application. If the at least one application that has a matching relationship with the second connection application includes the first connection application, it is considered that a matching relationship exists between the first connection application and the second connection application, and the matching relationship verification passes. Otherwise, it is considered that no matching relationship exists between the first connection application and the second connection application, and the matching relationship verification fails.

[0225] In another case, the first matching relationship indicates at least one application that can be connected to the first continuing application. In this case, determining whether a matching relationship exists between the first continuing application and the second continuing application may include determining whether the at least one application that has a matching relationship with the first continuing application includes the second continuing application. If the at least one application that has a matching relationship with the first continuing application includes the second continuing application, it is considered that a matching relationship exists between the first continuing application and the second continuing application, and the matching relationship verification passes. Otherwise, it is considered that no matching relationship exists between the first continuing application and the second continuing application, and the matching relationship verification fails.

[0226] S1026: The second authentication service manager returns the legality authentication result and the matching relationship verification result to the second connection service manager. Correspondingly, the second connection service manager receives the legality authentication result and the matching relationship verification result.

[0227] Specifically, the legality authentication result includes authentication passed or authentication failed, and the matching relationship verification result includes verification passed or verification passed.

[0228] S1027: When both the legality authentication result and the matching relationship verification result are passed, the second connection service manager sends an instruction to display the connection contact to the desktop launcher.

[0229] S1028: The desktop launcher controls the display of a connection point of the second connection application. The connection point may be displayed in the form of an icon of the second connection application.

[0230] It should be understood that the above steps S1011 to S1017 and steps S1018 to S1025 are not executed in any particular order and can be executed simultaneously, or S1018 to S1025 can be executed first and then S1011 to S1017. The embodiments of the present application are not limited to this.

[0231] Figure 10 illustrates the display process for a connection notification after a matching relationship between applications is established and stored on a cloud server. If the application developer has pre-defined matching relationships between the second connection application and other applications in its installation package, the second terminal device can obtain the aforementioned first matching relationship after installing the second connection application, without having to query the cloud server. The following describes the display process for the connection notification in this case, with reference to Figure 10.

[0232] Figure 11 is a schematic flow chart of another method 1100 for displaying a connection notification provided by an embodiment of the present application. The application framework layer of the software structure of the second terminal device also includes a system registration manager for storing matching relationships between applications during connection.

[0233] The method 1100 is similar to the above-mentioned method 1000, wherein steps S1101 to S1117 are the same as the above-mentioned steps S1001 to S1017 and are not repeated here.

[0234] S1118: The second authentication service manager sends a matching relationship verification request to the system registration manager. Correspondingly, the system registration manager receives the matching relationship verification request.

[0235] S1119: The system registration manager queries and obtains a second matching relationship based on the matching relationship verification request.

[0236] It should be understood that the application developer has pre-defined the matching relationship between the second continuation application and other applications (i.e., the second matching relationship) in the installation package of the second continuation application. When the second terminal device installs the second continuation application, it parses the installation package of the second continuation application, obtains the second matching relationship, and stores the second matching relationship in the system registration manager.

[0237] S1120: The system registration manager sends the first matching relationship to the second authentication service manager. Correspondingly, the second authentication service manager receives the second matching relationship.

[0238] S1121: The second authentication service manager performs a matching relationship verification based on the second matching relationship, that is, determines whether there is a matching relationship between the first connection application and the second connection application.

[0239] Specifically, the second matching relationship is used to represent at least one application that can be connected to the second connection application. Determining whether there is a matching relationship between the first connection application and the second connection application can be: determining whether the at least one application that has a matching relationship with the second connection application includes the first connection application. If the at least one application that has a matching relationship with the second connection application includes the first connection application, it is considered that there is a matching relationship between the first connection application and the second connection application, and the matching relationship verification passes. Otherwise, it is considered that there is no matching relationship between the first connection application and the second connection application, and the matching relationship verification fails.

[0240] S1122 to S1124 are the same as the above steps S1026 to S1028 and will not be repeated here.

[0241] Finally, the third stage: acquisition and loading of subsequent data is introduced with reference to FIG12 .

[0242] FIG12 is a schematic flow chart of a method 1200 for acquiring and loading connection data according to an embodiment of the present application. The method 1200 includes the following steps:

[0243] S1201: In response to a user's click operation on a connection contact, the desktop launcher sends an event trigger instruction to a second connection service manager.

[0244] S1202: The second connection service manager may launch a second connection application and instruct the second connection application to load a transition animation effect.

[0245] S1203: The second subsequent application may be started and load the transition effect.

[0246] Specifically, the transition effect may include prompt information such as "Loading..."

[0247] S1204: The second connection application calls the second connection service SDK to register the connection service and callback.

[0248] It should be understood that the second connection application may carry information such as the application package name of the second connection application when registering the connection service.

[0249] S1205: The second connection service SDK sends a request for binding the connection service to the second connection service manager. Correspondingly, the second connection service manager receives the request for binding the connection service.

[0250] S1206: The second connection service manager sends a request for binding the communication service to the second communication service manager. Correspondingly, the second communication service manager receives the request for binding the communication service.

[0251] S1207: After the second communication service manager is successfully bound, the second communication service manager sends a binding success message to the second connection service manager. Correspondingly, the second connection service manager receives the binding success message.

[0252] S1208: The second connection service manager sends a binding success message to the second connection service SDK. Correspondingly, the second connection service SDK receives the binding success message.

[0253] S1209: The second connection service SDK sends a request for registering the connection service and a callback to the second connection service manager. Correspondingly, the second connection service manager receives the request for registering the connection service and a callback.

[0254] S1210: After the second connection service manager is successfully registered, it sends a registration success message to the second connection service SDK. Correspondingly, the second connection service SDK receives the registration success message.

[0255] S1211: The second connection service SDK sends a registration success message to the second connection application. Correspondingly, the second connection application receives the registration success message.

[0256] S1212: After S1201, the second connection service manager sends a connection data request to the second communication service manager. Correspondingly, the second communication service manager receives the connection data request.

[0257] S1213, the second communication service manager sends a connection data request to the first communication management server, and correspondingly, the first communication management server receives the connection data request.

[0258] S1214: The first communication management server sends a connection data request to the first connection service manager. Correspondingly, the first connection service manager receives the connection data request.

[0259] S1215: The first connection service manager sends a connection data request to the first connection service SDK. Correspondingly, the first connection service SDK receives the connection data request.

[0260] S1216: The first connection service SDK sends a connection data request to the first connection application. Correspondingly, the first connection application receives the connection data request.

[0261] S1217: The first connection application packages and encrypts the connection data.

[0262] S1218: The first connection application sends connection data to the first connection service SDK. Correspondingly, the first connection service SDK receives the connection data.

[0263] S1219: The first connection service SDK sends connection data to the first connection service manager. Correspondingly, the first connection service manager receives the connection data.

[0264] S1220: The first connection service manager sends connection data to the first communication management server. Correspondingly, the first communication management server receives the connection data.

[0265] S1221, the first communication management server sends connection data to the second communication service manager, and correspondingly, the second communication service manager receives the connection data.

[0266] S1222: The second communication service manager sends connection data to the second connection service manager. Correspondingly, the second connection service manager receives the connection data.

[0267] S1223: The second connection service manager sends connection data to the second connection application. Correspondingly, the second connection application receives the connection data.

[0268] S1224: The second connection application loads and displays the connection data.

[0269] S1225: The second connection application sends a connection success message to the second connection service SDK. Correspondingly, the second connection service SDK receives the connection success message.

[0270] S1226: The second connection service SDK sends a connection success message to the second connection service manager. Correspondingly, the second connection service manager receives the connection success message.

[0271] S1227: The second connection service manager sends a connection success message to the second communication service manager. Correspondingly, the second communication service manager receives the connection success message.

[0272] S1228, the second communication service manager sends a connection success message to the first communication management server, and correspondingly, the first communication management server receives the connection success message.

[0273] S1229: The first communication management server sends a connection success message to the first connection service manager. Correspondingly, the first connection service manager receives the connection success message.

[0274] S1230: The first connection service manager sends a connection success message to the first connection service SDK. Correspondingly, the first connection service SDK receives the connection success message.

[0275] S1231: The first connection service SDK sends a connection success message to the first connection application. Correspondingly, the first connection application receives the connection success message.

[0276] S1232: The first connection application exits the connection page.

[0277] It should be noted that in the application continuation method of the embodiment of the present application, if the first continuation application has already registered and bound to the continuation service, then when the first continuation application of the first terminal device monitors some user behavior, the first continuation application does not need to re-register for the continuation service, or it can be understood that there is no need to execute the above-mentioned method 900. The first continuation application can directly execute method 1000 or 1100, as well as method 1200, etc., which will not be repeated here.

[0278] The methods shown in Figures 9 to 12 above can be applied to the application scenario 100 shown in Figure 1. The hardware structure of the terminal device involved can be as shown in Figure 2, and the software structure can be as shown in Figure 3 or Figure 4, but the embodiments of the present application are not limited to this.

[0279] The overall process of the application connection method provided by the present application is introduced above in conjunction with Figures 9 to 12. The application connection interface of the first terminal device and the second terminal device in the application connection method is introduced below in conjunction with Figures 13 and 14.

[0280] Below, we take the example of a mobile phone as the first terminal device (i.e., the source device), a tablet as the second terminal device (i.e., the peer device), and a memo application as the connecting application. The mobile phone and tablet are in the same local area network, and the memo application on the mobile phone and the tablet are logged into the same account.

[0281] Figure 13 is a schematic diagram of the source device interface in the application connection method provided by this application, which is used to introduce the interface of the mobile phone as the source device responding to user operations. In the interface shown in Figure 13, the user is editing text in the mobile phone's memo. The mobile phone displays the text edited by the user accordingly, and the cursor position changes with the user's editing position. When the mobile phone's memo is in the editing state, the mobile phone sends a broadcast connection notification of the mobile phone memo to the tablet computer.

[0282] Figure 14 is a schematic diagram of an interface change of a peer device provided in an embodiment of the present application, which is used to introduce the interface changes of a tablet computer as a peer device in response to user operations. In interface a of Figure 14, a recent taskbar is displayed below the desktop of the tablet computer, and the recent taskbar includes a memo icon and multiple other application icons. The tablet computer receives a broadcast connection notification from the mobile phone, and displays a contact (such as a black dot in Figure 14) in the upper right corner of the memo icon in the recent taskbar to prompt the user that the memo from the mobile phone wants to continue with the memo of the tablet computer. The user clicks the above-mentioned contact, and the tablet computer responds to the user's click operation and displays interface b of Figure 14. In interface b of Figure 14, the memo page is displayed, and "Loading the continuation content" is displayed on the memo page. After the content is loaded, interface c of Figure 14 is displayed. In interface c of Figure 14, the same memo content and the same cursor position as the mobile phone are displayed.

[0283] The above describes in detail the application connection method of an embodiment of the present application in combination with Figures 6 to 14. The following will describe in detail the terminal device of an embodiment of the present application in combination with Figures 15 and 16.

[0284] 15 is a terminal device 1500 provided in an embodiment of the present application, and the terminal device 1500 includes a processing module 1501 and a transceiver module 1502. The terminal device 1500 is used to implement the steps corresponding to the second terminal device in the above method.

[0285] The transceiver module 1502 is used to: receive a broadcast connection notification from the first terminal device, where the broadcast connection notification is used to request that the first connection application of the first terminal device be connected to the terminal device; the processing module 1501 is used to: determine the second connection application based on the broadcast connection notification, and perform legitimacy authentication and matching relationship verification on the second connection application to obtain a legitimacy authentication result and a matching relationship verification result; when the legitimacy authentication result is legitimacy authentication passed and the matching relationship verification result is matching relationship verification passed, the connection contact of the second connection application is displayed.

[0286] Optionally, the above-mentioned broadcast continuation notification includes: the application identifier APPID and the continuation policy of the first continuation application; wherein, the continuation policy includes at least one of the following: a continuation status identifier, a package name or process name of at least one target continuation application, a device type of at least one target continuation application, an application market listing policy of at least one target continuation application, and a minimum version supporting continuation; at least one target continuation application includes a second continuation application.

[0287] Optionally, the processing module 1501 is further configured to: based on the device type of the at least one target connection application, determine an application of the same device type as the terminal device in the at least one target connection application as the second connection application.

[0288] Optionally, the transceiver module 1502 is also used to: send a legitimacy authentication request to the cloud server, the legitimacy authentication request carries the APPID of the second subsequent application; receive cloud identification information of the second subsequent application from the cloud server, the cloud identification information includes the package name and / or signature of the second subsequent application stored on the cloud server; the processing module 1501 is also used to: compare the cloud identification information with the local identification information of the second subsequent application to obtain a legitimacy authentication result, the local identification information is the package name and / or signature of the second subsequent application stored locally on the terminal device.

[0289] Optionally, the transceiver module 1502 is also used to: send a matching relationship query request to the cloud server, the matching relationship query request carries the APPID of the second connection application; receive a first matching relationship from the cloud server, the first matching relationship is used to represent at least one application that can be connected with the second connection application; the processing module 1501 is also used to: based on the first matching relationship, determine whether at least one application includes the first connection application, and obtain a matching relationship verification result.

[0290] Optionally, the transceiver module 1502 is also used to: send a matching relationship query request to the cloud server, the matching relationship query request carries the APPID of the first connection application; receive a first matching relationship from the cloud server, the first matching relationship is used to represent at least one application that can be connected with the first connection application; the processing module 1501 is also used to: based on the first matching relationship, determine whether at least one application includes the second connection application, and obtain a matching relationship verification result.

[0291] Optionally, the processing module 1501 is also used to: obtain a second matching relationship, the second matching relationship is used to represent at least one application that can be connected with the second connection application, and the second matching relationship is pre-stored locally when the terminal device installs the second connection application; based on the second matching relationship, determine whether at least one application includes the first connection application, and obtain a matching relationship verification result.

[0292] Optionally, the transceiver module 1502 is further configured to: in response to a user clicking operation on the connection contact, send a connection data request message to the first terminal device; receive connection data from the first terminal device, and display the connection data.

[0293] It should be understood that the terminal device 1500 here is embodied in the form of a functional module. The term "module" here can refer to an application specific integrated circuit (ASIC), an electronic circuit, a processor (such as a shared processor, a dedicated processor or a group processor, etc.) and a memory for executing one or more software or firmware programs, a combined logic circuit and / or other suitable components that support the described functions. In an optional example, those skilled in the art will understand that the terminal device 1500 can be specifically the second terminal device in the above embodiment, and the terminal device 1500 can be used to execute the various processes and / or steps corresponding to the second terminal device in the above method embodiment. To avoid repetition, they are not described here.

[0294] The terminal device 1500 has the function of implementing the corresponding steps performed by the second terminal device in the above method; the above function can be implemented by hardware, or by hardware executing the corresponding software. The hardware or software includes one or more modules corresponding to the above functions. For example, the transceiver module 1502 may include a sending module and a receiving module. The sending module can be used to implement the various steps and / or processes for performing the sending action corresponding to the above transceiver module, and the receiving module can be used to implement the various steps and / or processes for performing the receiving action corresponding to the above transceiver module. The sending module can be replaced by a transmitter, and the receiving module can be replaced by a receiver, respectively performing the sending and receiving operations and related processing operations in each method embodiment.

[0295] In the embodiment of the present application, the terminal device 1500 in FIG15 may also be a chip or a chip system, such as a system on chip (SOC). Correspondingly, the transceiver module 1502 may be a transceiver circuit of the chip, which is not limited here.

[0296] Figure 16 illustrates another terminal device 1600 provided in an embodiment of the present application. The terminal device 1600 includes a processor 1601, a transceiver 1602, and a memory 1603. The processor 1601, transceiver 1602, and memory 1603 communicate with each other via an internal connection path. The memory 1603 is configured to store instructions, and the processor 1601 is configured to execute the instructions stored in the memory 1603 to control the transceiver 1602 to transmit and / or receive signals.

[0297] It should be understood that terminal device 1600 can be specifically the second terminal device in the above-mentioned embodiment, and can be used to execute the various steps and / or processes corresponding to the second terminal device in the above-mentioned method embodiment. Optionally, the memory 1603 may include read-only memory and random access memory, and provide instructions and data to the processor. A portion of the memory may also include non-volatile random access memory. For example, the memory may also store device type information. The processor 1601 can be used to execute instructions stored in the memory, and when the processor 1601 executes the instructions stored in the memory, the processor 1601 is used to execute the various steps and / or processes of the above-mentioned method embodiment corresponding to the second terminal device. The transceiver 1602 may include a transmitter and a receiver. The transmitter can be used to implement the various steps and / or processes corresponding to the above-mentioned transceiver for performing the sending action, and the receiver can be used to implement the various steps and / or processes corresponding to the above-mentioned transceiver for performing the receiving action.

[0298] It should be understood that in the embodiments of the present application, the processor may be a central processing unit (CPU), or may be other general-purpose processors, digital signal processors (DSPs), application-specific integrated circuits (ASICs), field-programmable gate arrays (FPGAs) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or any conventional processor, etc.

[0299] During implementation, each step of the above method can be completed by an integrated logic circuit of hardware in a processor or by instructions in the form of software. The steps of the method disclosed in conjunction with the embodiments of the present application can be directly embodied as being executed by a hardware processor, or can be executed by a combination of hardware and software modules in the processor. The software module can be located in a storage medium mature in the art, such as a random access memory, a flash memory, a read-only memory, a programmable read-only memory, or an electrically erasable programmable memory, a register, etc. The storage medium is located in a memory, and the processor executes the instructions in the memory, and completes the steps of the above method in conjunction with its hardware. To avoid repetition, it will not be described in detail here.

[0300] The present application also provides a computer-readable storage medium, which is used to store a computer program, and the computer program is used to implement the method corresponding to the second terminal device in the above embodiment.

[0301] The present application also provides a computer program product, which includes a computer program (also referred to as code or instructions). When the computer program runs on a computer, the computer can execute the method corresponding to the second terminal device shown in the above embodiment.

[0302] Those skilled in the art will appreciate that the modules and algorithm steps of each example described in conjunction with the embodiments disclosed herein can be implemented in electronic hardware, or a combination of computer software and electronic hardware. Whether these functions are performed in hardware or software depends on the specific application and design constraints of the technical solution. Professional and technical personnel can use different methods to implement the described functions for each specific application, but such implementation should not be considered beyond the scope of this application.

[0303] Those skilled in the art will clearly understand that, for the convenience and brevity of description, the specific working processes of the systems, devices and modules described above can refer to the corresponding processes in the aforementioned method embodiments and will not be repeated here.

[0304] In the several embodiments provided in this application, it should be understood that the disclosed systems, devices and methods can be implemented in other ways. For example, the device embodiments described above are merely schematic. For example, the division of the modules is merely a logical function division. In actual implementation, there may be other division methods, such as multiple modules or components can be combined or integrated into another system, or some features can be ignored or not executed. Another point is that the mutual coupling or direct coupling or communication connection shown or discussed can be through some interfaces, indirect coupling or communication connection of devices or modules, which can be electrical, mechanical or other forms.

[0305] The modules described as separate components may or may not be physically separate, and the components shown as modules may or may not be physical modules, that is, they may be located in one place or distributed across multiple network modules. Some or all of the modules may be selected to achieve the purpose of this embodiment according to actual needs.

[0306] In addition, each functional module in each embodiment of the present application may be integrated into one processing module, or each module may exist physically separately, or two or more modules may be integrated into one module.

[0307] If the functions are implemented in the form of software function modules and sold or used as independent products, they can be stored in a computer-readable storage medium. Based on this understanding, the technical solution of the present application, or the part that contributes to the prior art or the part of the technical solution, can be embodied in the form of a software product. The computer software product is stored in a storage medium and includes several instructions for enabling a computer device (which can be a personal computer, a server, or a network device, etc.) to execute all or part of the steps of the method described in each embodiment of the present application. The aforementioned storage medium includes various media that can store program codes, such as a USB flash drive, a mobile hard disk, a read-only memory (ROM), a random access memory (RAM), a magnetic disk or an optical disk.

[0308] The above description is merely a specific embodiment of the present application, but the scope of protection of the embodiments of the present application is not limited thereto. Any person skilled in the art can easily conceive of changes or substitutions within the technical scope disclosed in the embodiments of the present application, and such changes or substitutions should be included in the scope of protection of the embodiments of the present application. Therefore, the scope of protection of the embodiments of the present application should be based on the scope of protection of the claims.

Claims

1. A method for application connection, characterized in that: Applied to a system including a first terminal device, a second terminal device, and a cloud server, a user logs in to the same account on the first terminal device and the second terminal device, and the first terminal device and the second terminal device are in the same local area network, the method comprising: The second terminal device receives a broadcast connection notification from the first terminal device, where the broadcast connection notification is used to request that a first connection application of the first terminal device be connected to the second terminal device; The second terminal device determines a second connection application according to the broadcast connection notification, and performs legitimacy authentication and matching relationship verification on the second connection application to obtain a legitimacy authentication result and a matching relationship verification result; When the legality authentication result is legality authentication passed and the matching relationship verification result is matching relationship verification passed, the second terminal device displays a connection contact point of the second connection application.

2. The method according to claim 1, characterized in that The broadcast connection notification includes: an application identifier APPID of the first connection application and a connection policy; The connection strategy includes at least one of the following: A connection status identifier, a package name or process name of at least one target connection application, a device type of the at least one target connection application, an application market listing policy of the at least one target connection application, and a minimum version supporting connection; The at least one target connection application includes the second connection application.

3. The method according to claim 2, characterized in that The second terminal device determines a second connection application according to the broadcast connection notification, including: The second terminal device determines, based on the device type of the at least one target connection application, an application of the same device type as that of the second terminal device among the at least one target connection application as the second connection application.

4. The method according to any one of claims 1 to 3, characterized in that The performing legitimacy authentication on the second subsequent application includes: The second terminal device sends a legitimacy authentication request to the cloud server, where the legitimacy authentication request carries the APPID of the second subsequent application; The second terminal device receives cloud identification information of the second connection application from the cloud server, where the cloud identification information includes a package name and / or a signature of the second connection application stored by the cloud server; The second terminal device compares the cloud identification information with the local identification information of the second follow-up application to obtain the legitimacy authentication result, where the local identification information is the package name and / or signature of the second follow-up application stored locally on the second terminal device.

5. The method according to any one of claims 1 to 4, characterized in that The performing matching relationship verification on the second subsequent application includes: The second terminal device sends a matching relationship query request to the cloud server, where the matching relationship query request carries the APPID of the second connection application; The second terminal device receives a first matching relationship from the cloud server, where the first matching relationship indicates at least one application that can be connected to the second connection application; The second terminal device determines, based on the first matching relationship, whether the at least one application includes the first connection application, and obtains the matching relationship verification result.

6. The method according to any one of claims 1 to 4, characterized in that The performing matching relationship verification on the second subsequent application includes: The second terminal device sends a matching relationship query request to the cloud server, where the matching relationship query request carries the APPID of the first subsequent application; The second terminal device receives a first matching relationship from the cloud server, where the first matching relationship indicates at least one application that can be connected to the first connection application; The second terminal device determines, based on the first matching relationship, whether the at least one application includes the second connection application, and obtains the matching relationship verification result.

7. The method according to any one of claims 1 to 4, characterized in that The performing matching relationship verification on the second subsequent application includes: The second terminal device obtains a second matching relationship, where the second matching relationship indicates at least one application that can be connected to the second connection application, and the second matching relationship is pre-stored locally when the second terminal device installs the second connection application; The second terminal device determines, based on the second matching relationship, whether the at least one application includes the first connection application, and obtains the matching relationship verification result.

8. The method according to any one of claims 1 to 7, characterized in that The method further comprises: The second terminal device sends a connection data request message to the first terminal device in response to a user clicking operation on the connection contact point; The second terminal device receives the connection data from the first terminal device and displays the connection data.

9. A terminal device, characterized in that: include: a transceiver module, configured to receive a broadcast connection notification from a first terminal device, wherein the broadcast connection notification is used to request that a first connection application of the first terminal device be connected to the terminal device; a processing module, configured to determine a second connection application according to the broadcast connection notification, and perform legitimacy authentication and matching relationship verification on the second connection application to obtain a legitimacy authentication result and a matching relationship verification result; When the legality authentication result is legality authentication passed and the matching relationship verification result is matching relationship verification passed, a connection contact point of the second connection application is displayed.

10. The terminal device according to claim 9, characterized in that The broadcast connection notification includes: an application identifier APPID of the first connection application and a connection policy; The connection strategy includes at least one of the following: A connection status identifier, a package name or process name of at least one target connection application, a device type of the at least one target connection application, an application market listing policy of the at least one target connection application, and a minimum version supporting connection; The at least one target connection application includes the second connection application.

11. The terminal device according to claim 10, characterized in that The processing module is further configured to: Based on the device type of the at least one target connection application, an application of the same device type as the terminal device in the at least one target connection application is determined as the second connection application.

12. The terminal device according to any one of claims 9 to 11, characterized in that: The transceiver module is also used for: Sending a legitimacy authentication request to the cloud server, the legitimacy authentication request carrying the APPID of the second connecting application; receiving cloud identification information of the second connecting application from the cloud server, the cloud identification information including the package name and / or signature of the second connecting application stored by the cloud server; The processing module is further configured to: The cloud identification information is compared with the local identification information of the second follow-up application to obtain the legitimacy authentication result, where the local identification information is the package name and / or signature of the second follow-up application stored locally on the terminal device.

13. The terminal device according to any one of claims 9 to 12, characterized in that: The transceiver module is also used for: Sending a matching relationship query request to a cloud server, the matching relationship query request carrying the APPID of the second connecting application; receiving a first matching relationship from the cloud server, the first matching relationship being used to indicate at least one application that can be connected to the second connecting application; The processing module is further configured to: Based on the first matching relationship, it is determined whether the at least one application includes the first subsequent application, and the matching relationship verification result is obtained.

14. The terminal device according to any one of claims 9 to 12, characterized in that: The transceiver module is also used for: Sending a matching relationship query request to a cloud server, the matching relationship query request carrying the APPID of the first continuing application; receiving a first matching relationship from the cloud server, the first matching relationship being used to indicate at least one application that can be connected to the first continuing application; The processing module is further configured to: Based on the first matching relationship, it is determined whether the at least one application includes the second subsequent application, and the matching relationship verification result is obtained.

15. The terminal device according to any one of claims 9 to 12, characterized in that: The processing module is further configured to: Obtain a second matching relationship, where the second matching relationship is used to represent at least one application that can be connected to the second connection application, and the second matching relationship is pre-stored locally by the terminal device when the second connection application is installed; based on the second matching relationship, determine whether the at least one application includes the first connection application, and obtain the matching relationship verification result.

16. The terminal device according to any one of claims 9 to 15, characterized in that: The transceiver module is also used for: In response to a user clicking operation on the connection contact, a connection data request message is sent to the first terminal device; connection data from the first terminal device is received, and the connection data is displayed.

17. A terminal device, characterized in that: include: A memory and a processor, wherein the memory is used to store a computer program, and the processor is used to execute the computer program to perform the method according to any one of claims 1 to 8.

18. A computer-readable storage medium, characterized in that The computer-readable storage medium stores instructions, and when the instructions are executed, the computer executes the application connection method according to any one of claims 1 to 8.

19. A computer program product, characterized in that The device comprises a computer program, which, when executed, causes an electronic device to perform the method according to any one of claims 1 to 8.