Cross-device navigation method and device

By transferring address information between devices, cross-device navigation is realized, which solves the problems of inconvenient navigation operations and high energy consumption in the existing technology, and improves navigation performance and convenience.

CN119334372APending Publication Date: 2025-01-21HONOR DEVICE CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202310897067.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2023-07-20
Publication Date
2025-01-21

AI Technical Summary

Technical Problem

Existing cross-device navigation solutions, such as screen projection, have poor results, resulting in inconvenient navigation operations on the vehicle and machine, high energy consumption and large transmission resources.

Method used

Cross-device navigation is achieved by transferring address information between devices. The map applications of the two devices are decoupled. Data interaction only relies on the transmission of address transfer information. Communication requirements are small. Navigation is performed by the second device, reducing the cost of the first device. Engagement and energy consumption.

Benefits of technology

It improves the performance and convenience of cross-device navigation, reduces the hardware and software configuration requirements and energy consumption of the device, and meets the navigation needs of users.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN119334372A_ABST
    Figure CN119334372A_ABST
Patent Text Reader

Abstract

The invention provides a cross-device navigation method and device.The method comprises the steps that a first interface of a first application is displayed when the first application runs, the first interface comprises a first control, and the first control is used for indicating first address information; in response to a first operation input by a user to the first control, the first device obtains corresponding first address information from the first application; the first device sends address circulation information corresponding to the first address information to the second device, so that the second device starts a map application according to the address circulation information, the address content of the first address information corresponds to the address content of the address circulation information, and the address type of the first address information corresponds to the address type of the address circulation information; the first device continues to run the first application. According to the scheme, cross-device navigation is realized mainly through the transfer address information between the devices, map applications of the two devices are decoupled, cross-device navigation is better realized, and user requirements are better met.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present application relates to the technical field of electronic devices, and more particularly to a method and apparatus for cross-device navigation. Background Art

[0002] With the development of technology, there is a demand for cross-device navigation. The most common example is driving navigation. In driving navigation, due to the small screen of mobile phones and other terminals, it is not convenient to see the picture clearly during navigation. The human-computer interaction operation of the car computer is not convenient and friendly, which makes it cumbersome and time-consuming to enter the destination in the map application on the car computer.

[0003] Therefore, in order to achieve navigation with the help of the larger screen of the car computer, the traditional solution is to implement navigation on the car computer by screen projection. In this solution, one or several screen projection protocols need to be pre-installed on the car computer side, and the map application needs to be started on the terminal side such as the mobile phone. The car computer side can only passively receive the screen projection, that is, the car computer can only be used as an external screen of a mobile phone. Assuming that the user wants to switch routes and perform other operations in the middle of the journey, he still has to operate from the map application on the mobile phone, and cannot use the installed map application on the car computer, so the convenience is still poor. In addition, both the terminal and the car computer need to work during the screen projection, and a large amount of screen image data needs to be transmitted, which requires a large amount of transmission resources and energy consumption. In short, the cross-device navigation solution of screen projection is too poor and cannot meet user needs.

[0004] Therefore, how to better perform cross-device navigation is a technical problem that needs to be solved urgently. Summary of the invention

[0005] The present application provides a method and apparatus for cross-device navigation, which can better perform cross-device navigation.

[0006] In a first aspect, a method for cross-device navigation is provided, the method comprising: displaying a first interface of a first application when running the first application, the first interface comprising a first control, the first control being used to indicate first address information; in response to a first operation input by a user to the first control, the first device obtaining corresponding first address information from the first application; the first device sending address flow information corresponding to the first address information to a second device, so that the second device starts a map application according to the address flow information, the address content of the first address information corresponds to the address content of the address flow information, and the address type of the first address information corresponds to the address type of the address flow information; the first device continues to run the first application.

[0007] In the technical solution of the present application, cross-device navigation is mainly achieved by transferring address information between devices, and the map applications of the two devices are decoupled; data interaction only involves the transmission of address flow information in sequence, and the communication requirements are small; navigation is performed on the second device and the first device does not need to participate, so that energy consumption is reduced compared to the screen projection method; the participation of the second device is improved, which improves convenience. Therefore, the solution achieves better cross-device navigation and better meets user needs. In other words, the solution does not require the first device to initiate navigation, and does not even require the first device to have a map application installed. The first device only needs to be able to send address information to the second device, without considering what map application is installed on the second device, and the second device only needs to start the map application according to its own preset processing logic after receiving the address information, without considering what map application is installed on the first device, nor considering which application the address information comes from. In addition, since there is only one cross-device data interaction and only a small amount of data such as address information is transmitted, the demand for data transmission is very low, and the requirements for the hardware and software configuration of the device are lower than those of the traditional screen projection method. Moreover, since it is not necessary for both devices to work like the screen projection method, the energy consumption is also significantly reduced. In addition, since cross-device navigation is achieved by transferring navigation tasks, the participation of the second device is improved. If the user needs to switch routes or perform other operations during navigation, they can directly perform them on the second device instead of on the first device as in the screen projection method, so the convenience is also improved. Therefore, the solution of the embodiment of the present application effectively improves the performance of cross-device navigation, better meets user needs, and has lower requirements for the hardware and software configuration of the device.

[0008] In combination with the first aspect, in certain implementations of the first aspect, the method further includes: checking whether the first address information is valid; when the first address information is valid, constructing address transfer information corresponding to the first address information. In this implementation, a check on the validity of the address information is added, and the step of constructing the address transfer information is performed only when the address information is valid, which can avoid constructing invalid address transfer information, resulting in the second device being unable to start the map application based on the constructed address transfer information. It can also be understood as ensuring the validity of the address information used in subsequent steps to avoid operations on invalid data.

[0009] In conjunction with the first aspect, in some implementations of the first aspect, the step of checking whether the first address information is valid may include at least one of the following:

[0010] Check whether the address type in the first address information belongs to a preset type; when the address type in the first address information belongs to the preset type, the first address information is deemed valid; when the address type in the first address information does not belong to the preset type, the first address information is deemed invalid; or,

[0011] Check whether the address content in the first address information is a valid string; when the address content in the first address information is a valid string, the first address information is deemed valid; when the address content in the first address information is not a valid string, the first address information is deemed invalid; or,

[0012] Check whether the actual address type of the address content in the first address information is consistent with the address type in the first address information; when the actual address type is consistent with the address type in the first address information, the first address information is deemed valid; when the actual address type is inconsistent with the address type in the first address information, the first address information is deemed invalid.

[0013] That is to say, the check of the validity of the address information may include checking at least one of the address type, character string and consistency. The check of the address type is mainly to ensure that the address type is a type supported by the device, or is considered to be a type supported by the cross-device navigation service, that is, the preset type mentioned above. The check of the character string is also to ensure that it is a character string supported by the device, or is considered to be a character string supported by the cross-device navigation service. The consistency check is to ensure that the address content and the address type correspond, or are consistent.

[0014] The preset type may include at least one of text, POI, or longitude and latitude.

[0015] In combination with the first aspect, in certain implementations of the first aspect, the address flow information further includes at least one of the following identification parameters: a unique identifier of the address flow information, a source package name of the first address information, a target package name, or a source device name.

[0016] The unique identifier of the address flow information is used to identify the address flow information, so as to distinguish different address flow information. The source package name is used to identify the application source of the address information, that is, which application the address information comes from. The target package name is used to indicate which application the address information is to be sent to. In the present application, the target package name is used to indicate which map application to start. In the present application, since which map application is transferred to the second device is determined by the second device, the first device may not specify the target package name when encapsulating (constructing) the address flow information; or set a default target package name; or set the target package name at will, but the subsequent second device may ignore the target package name. The source device name is used to indicate the device source of the address flow information, and can also be considered as an identifier of the device source of the address information, that is, which device the address flow information comes from.

[0017] In combination with the first aspect, in some implementations of the first aspect, the address type of the address information is text, a point of interest, or longitude and latitude.

[0018] The above three are the most common address types. If new address types appear in the future, it is only necessary to expand the embodiment of the present application to support the new address type.

[0019] In conjunction with the first aspect, in certain implementations of the first aspect, the first operation includes: pressing the first control, and moving the first address information indicated by the first control to a corresponding icon of the cross-device navigation. In other words, the step of obtaining the address information is triggered by responding to the subsequent operation performed by the user in the first application. By moving the address contained in the first application to the corresponding icon of the cross-device navigation, address information can be generated, and the address information will include the address content of the moved address and the address type corresponding to the address content.

[0020] In one example, the first operation may be a method of long pressing and then dragging. That is, in the first application, a certain address may be long pressed and dragged to a designated module to generate address information.

[0021] In one example, the address information can be generated by long pressing the address in the running interface of the first application and dragging it to the designated icon in the portal. The designated icon in the portal here can be understood as a user-visible interface for triggering a specific service.

[0022] Long press and drag is the most user-friendly interactive operation, but other operations can be used instead. For example, long press the address to make it float, and then double-click the specified icon to generate the address information. However, in this case, because double-clicking the specified icon is not an operation that users can easily guess or associate, there needs to be a prompt to prompt the user to complete the corresponding operation.

[0023] In conjunction with the first aspect, in certain implementations of the first aspect, the step of sending address flow information corresponding to the first address information to the second device may include: creating a message sending task, waking up a working thread to process the message sending task; and sending the address flow information during the execution of the message sending task. Creating a sending task and waking up a working thread to send a message is the most commonly used way of sending a message in an electronic device, and using the existing common message sending processing logic of the device to send the address flow information can make the implementation simpler.

[0024] In combination with the first aspect, in some implementations of the first aspect, the method further includes: when it is monitored that the sending status of the message sending task is a sending failure, resending the address flow information. In other words, the monitoring of the sending situation is increased, and resending is performed when the sending fails, so as to increase the possibility that the second device can receive the address flow information.

[0025] In a second aspect, a method for cross-device navigation is provided, the method comprising: receiving address flow information from a first device, the address flow information comprising address content and address type; constructing target address information using the address flow information, the address type of the target address information corresponding to the address type of the address flow information, and the address content of the target address information corresponding to the address content of the address flow information; starting a map application according to the target address information, and loading the address content of the target address information as the destination in the started map application according to the address type of the target address information.

[0026] In the technical solution of the present application, cross-device navigation is mainly achieved by transferring address information between devices, and the map applications of the two devices are decoupled; data interaction is only the transmission of address flow information in sequence, and the communication requirements are small; navigation is performed on the second device and the first device does not need to participate, so that energy consumption is reduced compared to the screen projection method; the participation of the second device is improved, which improves convenience. Therefore, this solution achieves better cross-device navigation and better meets user needs. In other words, this solution does not require the first device to initiate navigation, and does not even require the first device to have a map application installed. The first device only needs to be able to send address information to the second device, without considering what map application is installed on the second device, and the second device only needs to start the map application according to its own preset processing logic after receiving the address information, without considering what map application is installed on the first device, and without considering what application the address information comes from.

[0027] It should be noted that the technical effects of the first aspect are also applicable to the second aspect.

[0028] In conjunction with the second aspect, in some implementations of the second aspect, when constructing the target address information, the following may be included: parsing the address flow information; and when the address content parsed from the address flow information is a valid string, constructing the target address information. In other words, a check for the string is added, and the target address information is constructed only when the string is valid.

[0029] In conjunction with the second aspect, in certain implementations of the second aspect, when constructing the target address information, it may include: parsing the address flow information; when the source package name parsed from the address flow information is in a preset whitelist, constructing the target address information, the source package name is used to indicate the application source corresponding to the address flow information. In this implementation, the screening of the address flow information is added, and the target address information is only constructed for the application source in the preset whitelist. This way of setting a whitelist can avoid interference from address information forged by malicious applications, and can also impose certain constraints on the address flow information that needs to be processed, thereby improving processing efficiency.

[0030] It should be understood that the above two implementation schemes can be superimposed, that is, both valid character strings are checked and preset whitelist constraints are used.

[0031] In conjunction with the second aspect, in some implementations of the second aspect, the target address information further includes a target package name, and the target package name is used to indicate a target map application; when the map application is started according to the target address information, and the address content of the target address information is loaded as a destination in the started map application according to the address type of the target address information, it may include:

[0032] According to the target package name, the target map application is started, and according to the address type of the target address information, the address content of the target address information is loaded as the destination in the started target map application. In this implementation, the target map application indicated by the target package name in the target address information is started. This implementation has no calculation steps and only requires an indication of the target package name, which is relatively simple.

[0033] After obtaining the target address information, the second device can select and pull up (start) the map application according to its own processing logic, that is, the predefined strategy. For example, the map application indicated by the target address information can be started; or the map application can be started according to the preset rules in the second device; or a selection control can be provided to allow the user to manually select to start the map application, etc. Several situations are introduced below.

[0034] In conjunction with the second aspect, in certain implementations of the second aspect, when a map application is started according to the target address information, and the address content of the target address information is loaded as the destination in the started map application according to the address type of the target address information, it may include: starting the map application with the highest priority in the second device, and loading the address content of the target address information as the destination in the started map application with the highest priority according to the address type of the target address information. In this implementation, mainly taking the preset rule as the highest priority as an example, this method of determining the map application to be started according to the preset rule makes the selected map application to be started more likely to meet the user's expectations.

[0035] In one example, the priority can be determined by the frequency of use, and the map application with the highest frequency of use can be determined as the application with the highest priority. In this way, the map application started is the one most frequently used by the user and can better meet the user's expectations.

[0036] In another example, the operating resources required by the map application during operation can be statistically compared and sorted from low to high according to the demand for operating resources, and the lower the demand, the higher the priority. In this way, the map application started is the one that saves the most computing resources, reduces the occupation of device resources, and improves processing efficiency.

[0037] In another implementation, the preset rule may also be that the address type corresponds to the map application, that is, the map application to be started may correspond to each other according to the different address types.

[0038] In conjunction with the second aspect, in certain implementations of the second aspect, when a map application is started according to the target address information, and the address content of the target address information is loaded as the destination in the started map application according to the address type of the target address information, it may include: displaying a selection control of at least one map application on the interface of the second device according to the target address information; and starting the first map application in response to a click operation on the selection control of a first map application in at least one map application. In this implementation, the map application to be started is determined based on the manual selection of the user. When the user selects the first map application, that is, performs a click operation on the selection control of the first map application, the device can obtain the click operation, respond to the click operation, and start the first map application.

[0039] In conjunction with the second aspect, in certain implementations of the second aspect, the method further includes: displaying a pop-up window on the interface of the second device, the pop-up window including the address content in the target address information and at least one of the following: an identifier of the device source of the address flow information, and a selection control instructing the user to select a display page after the map application is started. In this implementation, the user can be informed of the address content and the device source of the information, and can independently select the next operation according to the prompt, that is, select which page to display after the map application is started, such as an address search page or a route planning page.

[0040] According to a third aspect, a cross-device navigation apparatus is provided, the apparatus comprising a unit composed of software and / or hardware for executing any one of the methods of the first aspect or the second aspect.

[0041] In a fourth aspect, an electronic device is provided, comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein when the processor executes the computer program, the electronic device is enabled to implement any one of the methods of the first aspect or the second aspect.

[0042] In a fifth aspect, a chip is provided, comprising a processor, wherein the processor is used to read and execute a computer program stored in a memory, and when the computer program is executed by the processor, the electronic device where the chip is located can implement any one of the methods of the first aspect or the second aspect.

[0043] Optionally, the chip also includes a memory, and the memory is electrically connected to the processor.

[0044] Optionally, the chip may also include a communication interface.

[0045] In a sixth aspect, a computer-readable storage medium is provided, which stores a computer program, and when the computer program is executed by an electronic device, any one of the methods of the first aspect or the second aspect can be implemented.

[0046] In a seventh aspect, a computer program product is provided, which includes a computer program, and when the computer program is executed by an electronic device, it can implement any one of the methods of the first aspect or the second aspect. BRIEF DESCRIPTION OF THE DRAWINGS

[0047] Figure 1 It is a schematic diagram of the interaction process between devices for cross-device navigation.

[0048] Figure 2 It is a schematic flowchart of a method for cross-device navigation in an embodiment of the present application.

[0049] Figure 3It is a schematic diagram of the execution process of a cross-device navigation according to an embodiment of the present application.

[0050] Figure 4 It is a schematic flowchart of another cross-device navigation method according to an embodiment of the present application.

[0051] Figure 5 It is a schematic diagram of steps executed by a first device in a method for cross-device navigation according to an embodiment of the present application.

[0052] Figure 6 It is a schematic diagram of steps executed by a first device in another cross-device navigation method according to an embodiment of the present application.

[0053] Figure 7 It is a schematic diagram of steps executed by a second device in a method for cross-device navigation according to an embodiment of the present application.

[0054] Figure 8 It is a schematic diagram of the interactive process of cross-device navigation in an embodiment of the present application.

[0055] Fig. 9 It is a schematic diagram comparing the interaction results of the cross-device navigation according to the embodiment of the present application with the interaction results of the cross-device navigation using the traditional screen projection method.

[0056] Fig.10 It is a schematic diagram of an apparatus for cross-device navigation according to an embodiment of the present application.

[0057] Fig.11 It is a schematic diagram of an apparatus for cross-device navigation according to an embodiment of the present application.

[0058] Fig.12 It is a schematic diagram of the hardware structure of an electronic device according to an embodiment of the present application.

[0059] Fig.13 It is a schematic diagram of the hardware structure of another electronic device according to an embodiment of the present application. DETAILED DESCRIPTION

[0060] The scheme of the embodiment of the present application is introduced below with reference to the accompanying drawings.

[0061] Figure 1 It is a schematic diagram of the device interaction process for cross-device navigation. Figure 1 As shown, the user performs a follow-up operation (or a follow-up event, such as the first operation below) on device #1, triggering the transfer of the navigation task from one device to another, that is, triggering cross-device navigation. Figure 1When there is obtainable address information on any APP interface shown in ), the user can trigger cross-device navigation through subsequent operations, that is, trigger the service of transferring the address information to another device.

[0062] It should be understood that any application here can have an address that can be obtained, such as a chat application, a browsing application, a shopping application, a map application, a taxi application, or a ride application, etc., and they will not be listed one by one. For example, in a chat application, the text content in the chat record may include the address information, or the content after the voice record is converted to text may include the address information, or the content shared by friends in the sharing page of the chat application may include text address information, or it may be address information in a location shared by friends, and so on. For another example, in a map application, it may be text address information in a favorite or user input, or it may be point of interest (POI) address information, or it may be longitude and latitude address information. For another example, in a shopping application, it may be address information such as a delivery address and a merchant address. Other situations will not be listed one by one.

[0063] It should be noted that in the embodiment of the present application, the address type can be text, POI or latitude and longitude, etc. That is to say, the way to express the address is not limited to text. POI can also be called an information point. In a geographic information system, a POI can be a house, a shop, a community, a school, a hospital or a bus stop, etc.

[0064] When the user performs a follow-up operation on any APP interface, device #1 will obtain address information from the APP interface. Here, the obtained address information is represented by address information_1 as an example, and address information_1 is sent to the data sending module of device #1.

[0065] The data sending module performs some processing on address information_1, such as format conversion, data packaging, etc., to obtain address information_2, and sends address information_2 to device #2. After receiving address information_2 using the data receiving module, device #2 performs some processing on address information_2, such as converting it into a format supported by device #2, etc., to obtain address information_3, and sends address information_3 to the corresponding map application. In other words, device #2 uses address information_3 to start a suitable map application.

[0066] It should be understood that the addresses contained in the address information_1, address information_2 and address information_3 are the same, but the specific content and / or content format contained in the information may be different. The digital numbers with different suffixes are used here to distinguish that the address information changes in form before and after each processing of the address information. For example, assuming that the user performs a connection operation on a specific address A community in a chat application of device #1, the address information_1 obtained includes the location (or address, location) of the A community. The address information_2 obtained after the data sending module of device #1 still includes the location information of the A community, but the format of the address information_2 may be different from that of the address information_1. The address information_3 obtained after the data receiving module of device #2 still includes the location information of the A community, but the format of the address information_3 may be different from that of the address information_2. Of course, the specific content and / or content format contained in the address information_1, address information_2 and address information_3 may also be the same, and the embodiments of the present application do not limit this.

[0067] From the above interaction process, it can be seen that what is transmitted between device #1 and device #2 is the address information, rather than transmitting each frame of interface display data like the screen projection method, so the amount of data transmitted is much smaller than that of the screen projection method. Moreover, after the map application of device #2 is running, the user can perform any desired operation on device #2 as needed, and the use of device #2 is more direct than the screen projection method. If the screen projection method is adopted, when the user wants to perform some operations, he still needs to execute them on device #1. In addition, in the screen projection method, both devices need to work all the time. Device #1 runs the interface, packages and sends each frame of the display screen, and device #2 receives the data packet of each frame of the display screen and displays it. The specific differences between the two, that is, the comparison between the present application scheme and the traditional screen projection scheme will be elaborated in detail later, and will not be repeated here.

[0068] It can also be considered that this application is a solution for task transfer between two devices, that is, transferring the things that need to be done from one device to another. The screen projection method is a solution for two devices to work synchronously, that is, the things that need to be done can only be completed by the two devices working together.

[0069] In one example, Figure 1 Device #1 shown in the figure can be a mobile phone, smart wearable device, tablet computer or laptop computer, and device #2 can be a vehicle-mounted terminal. This example can be applied to scenarios of riding or driving, where the address information on any of the above terminals is transferred to the vehicle-mounted terminal, and navigation is performed using the vehicle-mounted terminal.

[0070] In another example, the screen of device #1 is smaller than the screen of device #2. This example can be applicable to the user's need to switch navigation devices with a larger screen, transfer address information from the smaller screen device to the larger screen device, and then use the larger screen device for navigation.

[0071] In another example, device #1 is a mobile phone, tablet computer, laptop computer or vehicle-mounted terminal, and device #2 is a mobile phone, tablet computer, laptop computer or vehicle-mounted terminal. In this example, it can be applied to the needs of users who want to switch navigation devices for various reasons but want to avoid the trouble of re-entering the destination address. The reasons for switching navigation devices may be that device #1 is out of power, the data flow is insufficient, or the owner of device #1 is about to get off the car or leave, etc., which will not be listed one by one.

[0072] To make it easier to understand the above examples, the following description is combined with the assumptions of several actual scenarios. For example, suppose A was driving and originally intended to use a mobile phone for navigation, but because he felt that the mobile phone screen was too small or the mobile phone was running out of power, he wanted to use the car terminal for navigation instead. However, it was too troublesome to re-enter the address, so he continued to operate the address on an application on the mobile phone and sent it to the car terminal. Suppose A originally intended to use a tablet for navigation, but the balance of the card inserted in the tablet was running low, so he wanted to use the car terminal for navigation instead. However, it was too troublesome to re-enter the address, so he continued to operate the address on an application on the tablet and sent it to the car terminal. Other situations are not listed one by one.

[0073] In order to facilitate understanding of the solution of the embodiment of the present application, the following mainly introduces the transfer of the terminal to the vehicle terminal (vehicle computer) as an example. Figure 1 This is the case where device #1 is a terminal (such as a mobile phone) and device #2 is a car computer.

[0074] In the embodiment of the present application, the subsequent operation can be a method of long pressing and then dragging. That is, the address information can be long pressed on any app interface and dragged to the specified module to generate address information_1.

[0075] In one example, by long pressing the address information on any app interface and dragging it to the designated icon in the portal app, address information_1 can be generated, and after being processed by the data sending module, address information_2 is sent to the device corresponding to the designated icon, that is, device #2. It can be understood that the designated icon in the portal here is a user-visible interface for the continued address information of device #2.

[0076] Long-press and drag is the most user-friendly interactive operation, but other operations can be used instead in actual use. For example, long-press the address information to make it float, and then double-click the specified icon to generate the address information_1. However, in this case, because double-clicking the specified icon is not an operation that users can easily guess or associate, a prompt is required to prompt the user to complete the corresponding operation.

[0077] In short, this application mainly targets a series of problems in traditional screen projection methods, such as poor convenience of cross-device navigation, high energy consumption, and high occupancy rate of transmission resources, which lead to poor actual use effects. It adopts a solution of cross-device navigation by transferring address information between devices, so as to achieve better cross-device navigation, improve convenience, reduce energy consumption, and reduce the occupancy rate of transmission resources.

[0078] Figure 2 is a schematic flow chart of a method for cross-device navigation in an embodiment of the present application. Figure 2 The first device can be Figure 1 Device #1 in the example, the second device can be Figure 1 Device #2 in the example, for more information, see Figure 1 , no further details are given. In order to facilitate understanding of the solution, the following mainly takes the first device being a mobile phone terminal and the second device being a vehicle-mounted terminal as an example.

[0079] S201. Display a first interface of a first application when the first application is running.

[0080] The first interface includes a first control, and the first control is used to indicate first address information.

[0081] The first application is an application that includes an address that can be obtained. For example, the first address information can be obtained from the first interface of the first application. For example, assuming that the first application is a chat application, the first interface is a chat interface between a user and a friend, and the first control can be a chat message in the first interface, and the chat message includes an address information. It should be understood that the first application can be Figure 1 For the sake of brevity, the first application may be, for example, a chat application, a browsing application, a shopping application, a map application, a taxi application, or a ride application, which are not listed one by one.

[0082] In one implementation, the address type of the address information involved in this application (such as the first address information) can be text, point of interest, or longitude and latitude. The above three are the most common address types. If new address types appear later, it is only necessary to expand the embodiment of this application to support the new address type.

[0083] S202: In response to a first operation input by a user to a first control, the first device obtains corresponding first address information from a first application.

[0084] In one implementation, the first operation includes: pressing the first control, and moving the first address information indicated by the first control to a corresponding icon of the cross-device navigation. That is, the step of obtaining the address information is triggered by responding to the first operation.

[0085] When the first operation is triggered, the address information can be obtained, and the address information will include the address content and the address type corresponding to the address content. For example, the first application is a map application, and the first control is a POI point, such as A shopping mall. The first address information obtained will include the address content "A shopping mall" and the address type "POI". For another example, the first application is a shopping application, and the first control is a text delivery address, such as "No. 99, Xingfu Road, Smile District, Kaixin City". The first address information obtained will include the address content "No. 99, Xingfu Road, Smile District, Kaixin City" and the address type "text".

[0086] In one example, the subsequent operation (for example, the first operation) may be a long press followed by dragging. That is, in the first application, a certain address may be long pressed and dragged to a designated module to generate address information.

[0087] In one example, the address information can be generated by long pressing the address in the running interface of the first application and dragging it to the designated icon in the portal app. The designated icon in the portal here can be understood as a user-visible interface for triggering a specific service.

[0088] Long press and drag is the most user-friendly interactive operation, but other operations can be used instead. For example, long press the address to make it float, and then double-click the specified icon to generate the address information. However, in this case, because double-clicking the specified icon is not an operation that users can easily guess or associate, there needs to be a prompt to prompt the user to complete the corresponding operation.

[0089] S203: The first device sends address transfer information corresponding to the first address information to the second device.

[0090] Step S203 can enable the second device to start a map application according to the address flow information, the address content of the first address information corresponds to the address content of the address flow information, and the address type of the first address information corresponds to the address type of the address flow information.

[0091] It should be understood that there is no correlation between the map application and the first application, and even if the first application is another map application or a non-map application, it will not affect the launch of the map application on the second device.

[0092] The address flow information is used to instruct the second device to start the map application according to the address flow information.

[0093] The address transfer information includes the address content and address type of the address information. In addition, the address transfer information may also include other contents, that is, adding some parameters to assist in better completing the address transfer.

[0094] In one implementation, the address flow information may include at least one of the following identification parameters in addition to the address type in the first address information and the address content in the first address information: a unique identifier of the address flow information, a source package name of the address information, a target package name, or a source device name.

[0095] The unique identifier of the address flow information is used to identify the address flow information, so as to distinguish different address flow information. The source package name is used to identify the application source of the address information, that is, which app the address information comes from. The target package name is used to indicate which application the address information is to be sent to. In the present application, the target package name is used to indicate which map application to start. In the present application, since which map application is transferred to the second device is determined by the second device, the first device may not specify the target package name when encapsulating (constructing) the address flow information; or set a default target package name; or set the target package name at will, but the subsequent second device may ignore the target package name. The source device name is used to indicate the device source of the address flow information, and can also be considered as the device source of the address information, that is, which device the address flow information comes from. In the present application, the source device is taken as the first device as an example.

[0096] In one implementation, the method further includes: checking whether the first address information is valid; when the first address information is valid, constructing address transfer information corresponding to the first address information. In this implementation, a check on the validity of the address information is added, and the step of constructing the address transfer information is performed only when the address information is valid, which can avoid constructing invalid address transfer information, resulting in the second device being unable to start the map application based on the constructed address transfer information. It can also be understood as ensuring the validity of the address information used in subsequent steps to avoid operations on invalid data.

[0097] In one example, the step of checking whether the address information is valid includes at least one of the following:

[0098] Check whether the address type in the first address information belongs to a preset type; when the address type in the first address information belongs to the preset type, the first address information is deemed valid; when the address type in the first address information does not belong to the preset type, the first address information is deemed invalid; or,

[0099] Check whether the address content in the first address information is a valid string; when the address content in the first address information is a valid string, the first address information is deemed valid; when the address content in the first address information is not a valid string, the first address information is deemed invalid; or,

[0100] Check whether the actual address type of the address content in the first address information is consistent with the address type in the first address information; when the actual address type is consistent with the address type in the first address information, the first address information is deemed valid; when the actual address type is inconsistent with the address type in the first address information, the address information is deemed invalid.

[0101] That is to say, the check of the validity of the address information may include checking at least one of the address type, character string and consistency. The check of the address type is mainly to ensure that the address type is a type supported by the device, or is considered to be a type supported by the cross-device navigation service, that is, the preset type mentioned above. The check of the character string is also to ensure that it is a character string supported by the device, or is considered to be a character string supported by the cross-device navigation service. The consistency check is to ensure that the address content and the address type correspond, or are consistent.

[0102] The preset type may include at least one of text, POI, or longitude and latitude.

[0103] In an example, assuming that the preset types are text, POI, and latitude and longitude, the check of the address type is to see whether the address type of the acquired address information is one of the three. If it is, it is valid, and if not, it is invalid.

[0104] In another example, assuming that the preset types are text and POI, the check of the address type is to see whether the address type of the acquired address information is text or POI, if yes, it is valid, otherwise it is invalid.

[0105] Regarding the consistency check, the following example is used to illustrate. For example, assuming that the address content of the first address information obtained is "No. 99, Xingfu Road, Xiaoxiao District, Kaixin City", and the address type of the first address information is longitude and latitude, then in the consistency check, the actual address type of the address content of the first address information is text, which is obviously inconsistent with the longitude and latitude, so the check result is that the first address information is invalid. For another example, assuming that the address content of the first address information obtained is "No. 99, Xingfu Road, Xiaoxiao District, Kaixin City", and the address type of the first address information is text, then in the consistency check, the actual address type of the address content of the first address information is text, which is consistent with the address type in the first address information, so the check result is that the first address information is valid.

[0106] In one implementation, step S203 may include: creating a message sending task, waking up a working thread to process the message sending task; and sending address transfer information during the execution of the message sending task. Creating a sending task and waking up a working thread to send a message is the most commonly used way of sending messages in electronic devices. Using the existing common message sending processing logic of the device to send address transfer information can make the implementation simpler.

[0107] In one implementation, the method further includes: when it is monitored that the sending status of the message sending task is a sending failure, resending the address flow information. In other words, the monitoring of the sending status is increased, and resending is performed when the sending fails, so as to increase the possibility that the second device can receive the address flow information.

[0108] In this step, the second device receives the address transfer information from the first device, which includes the address content and the address type.

[0109] S204: The first device continues to run the first application.

[0110] That is to say, the first application will not be closed due to navigation continuation, so that the user's continued use of the first application will not be affected. For example, the first device can continue to display the first interface of the first application, or the first device can jump to the interface of the first application. For another example, after the first device continues to run the first application, the user can also close the first application and open and use other applications on the first device. The embodiments of the present application do not impose any restrictions on this.

[0111] S205. The second device constructs target address information using the address flow information.

[0112] The target address information includes an address type and an address content. The address type of the target address information corresponds to the address type of the address flow information, and the address content of the target address information corresponds to the address content of the address flow information.

[0113] In one implementation, step S205 may include: parsing the address flow information; and constructing the target address information when the address content parsed from the address flow information is a valid string. In other words, a check for the string is added, and the target address information is constructed only when the string is valid.

[0114] In one implementation, step S205 may include: parsing the address flow information; when the source package name parsed from the address flow information is in a preset whitelist, constructing the target address information, the source package name is used to indicate the application source of the address information. In this implementation, the address flow information is screened, and the target address information is constructed only for the application source in the preset whitelist. This way of setting a whitelist can avoid interference from address information forged by malicious applications, and can also impose certain constraints on the address flow information that needs to be processed, thereby improving processing efficiency.

[0115] It should be understood that the above two implementation schemes can be superimposed, that is, both valid character strings are checked and preset whitelist constraints are used.

[0116] S206. The second device starts a map application according to the target address information.

[0117] After starting the map application, the address content of the target address information is loaded in the started map application as the destination. It should be understood that loading as the destination is more in line with the user's daily habits, but in practice it can also be loaded as the departure point. However, after loading as the destination, the user can still switch between the destination and the departure point with one click in the map application, so loading the received address as the destination is the loading method that is most likely to meet the user's expectations without causing too many cumbersome operations.

[0118] After obtaining the target address information, the second device can select and pull up (start) the map application according to its own processing logic, that is, the predefined policy. In the solution of the embodiment of the present application, which map application the second device starts and how to start the map application are not restricted by the first device, so that the manufacturer of the second device can select the map application to start according to its own policy, which is more flexible. For example, it can be started according to the map application indicated by the target address information; or, it can be started according to the preset rules in the second device; or, a selection control can be provided to allow the user to manually select to start the map application, etc. Several situations are introduced below.

[0119] In one implementation, the target address information also includes a target package name, which is used to indicate a target map application; step S206 may include: starting the target map application according to the target package name, and loading the address content of the target address information as the destination in the started target map application according to the address type of the target address information. In this implementation, the target map application indicated by the target package name in the target address information is started. This implementation has no calculation steps and only requires an indication of a target package name, which is relatively simple.

[0120] In another implementation, step S206 may include: starting the map application with the highest priority in the second device, and filling the address content in the target address information into the destination column of the started map application, that is, according to the address type of the target address information, the address content of the target address information is loaded as the destination in the started map application with the highest priority. In this implementation, the preset rule is mainly used as an example of the highest priority. This method of determining the map application to be started according to the preset rule makes the selected map application to be started more in line with expectations. The priority setting rules can be set by the manufacturer of the second device according to its own strategy, which is more flexible.

[0121] In one example, the priority can be determined by the frequency of use, and the map application with the highest frequency of use can be determined as the application with the highest priority. In this way, the map application started is the one most frequently used by the user and can better meet the user's expectations.

[0122] In another example, the operating resources required by the map application during operation can be statistically compared and sorted from low to high according to the demand for operating resources, and the lower the demand, the higher the priority. In this way, the map application started is the one that saves the most computing resources, reduces the occupation of device resources, and improves processing efficiency.

[0123] In another implementation, the preset rule may be that the address type corresponds to the map application, that is, which map application may be started according to the different address types.

[0124] In another implementation, step S206 may include: displaying a selection control of at least one map application on the interface of the second device according to the target address information; and starting the first map application in response to a click operation on the selection control of the first map application in the at least one map application. In this implementation, the map application to be started is determined based on the manual selection of the user. When the user selects the first map application, that is, performs a click operation on the selection control of the first map application, the device can obtain the click operation, respond to the click operation, and start the first map application. It should be understood that the first map application here can be the same application as the first application in the first device, but it may not be the same application, and there is no correlation between the two.

[0125] exist Figure 2 In the illustrated solution, a pop-up window may be displayed to let the user know some parameters of the address flow information and instruct the user on the next operation.

[0126] In one implementation, the method further includes: displaying a pop-up window on the interface of the second device, the pop-up window including the address content in the target address information and at least one of the following: an identifier that the address flow information comes from the first device, and a selection control instructing the user to select a display page after the map application is started. In this implementation, the user can be informed of the address content and the device source of the information, and can independently select the next operation according to the prompt, that is, select which page to display after the map application is started, such as an address search page or a route planning page.

[0127] Figure 2The scheme shown mainly realizes cross-device navigation by transferring address information between devices, and the map applications of the two devices are decoupled; data interaction only involves the transmission of address flow information in sequence, and the communication requirements are small; navigation is performed on the second device and the first device does not need to participate, so that energy consumption is reduced compared to the screen projection method; the participation of the second device is improved, which improves convenience. Therefore, the scheme realizes better cross-device navigation and better meets user needs. In other words, the scheme does not require the first device to initiate navigation, and does not even require the first device to have a map application installed. The first device only needs to be able to send address information to the second device, without considering what map application is installed on the second device, and the second device only needs to start the map application according to its own preset processing logic after receiving the address information, without considering what map application is installed on the first device, nor considering which application the address information comes from. In addition, since the cross-device data interaction is only once, and only a small amount of data such as address information is transmitted, the demand for data transmission is very low, and the requirements for the hardware and software configuration of the device are lower than those of the traditional screen projection method. Moreover, since it is not necessary for both devices to work like the screen projection method, the energy consumption is also significantly reduced. In addition, since cross-device navigation is achieved by task transfer, the participation of the second device is improved. If the user needs to switch routes or perform other operations during navigation, they can perform them directly on the second device instead of on the first device as in the screen projection method, so the convenience is also improved. Therefore, the solution of the embodiment of the present application effectively improves the performance of cross-device navigation, better meets user needs, and has lower requirements for the hardware and software configuration of the device.

[0128] Figure 3 It is a schematic diagram of the execution process of a cross-device navigation according to an embodiment of the present application. Figure 3 It can be seen as Figure 2 A schematic diagram of an internal execution flow of the scheme shown, or, Figure 3 It can be regarded as an example of a device architecture for executing the solution of the embodiment of the present application.

[0129] Figure 3 Terminal A in can be regarded as Figure 1 Device #1 and Figure 2 An example of the first device in the vehicle B can be regarded as Figure 1 Device #2 and Figure 2 An example of a second device in. Figure 3 The bold arrows indicate the execution process corresponding to the steps of the present application scheme, while the non-bold arrows indicate some basic background setting steps, which can be understood as some basic settings common to all possible interactions between terminals and vehicle computers.

[0130] like Figure 3 As shown, the service entry of the application layer of terminal A shows the portal application and the third-party application. The third-party application here can be regarded as an example of the first application in the first device, or as an example of any APP in device #1. The third-party application can be understood as an application other than the portal, and in this application it should also be understood as the first application from which the address information can be obtained, such as the chat application, browsing application, shopping application, map application, taxi application or ride application in the above examples. For related content, please refer to Figure 1 The relevant introduction will not be repeated here.

[0131] In the embodiment of the present application, the third-party application is an application in which the user performs a subsequent operation. Figure 3 In the example, the subsequent operation is that the user long presses and drags the address information on the display interface of the third-party application to the designated icon in the portal application.

[0132] After receiving the address information from the third-party application, the portal application generates an address transfer request and sends the address transfer request to the address transfer atomic system in the car-connected service subsystem in the smart travel center. The address transfer request here includes the address information from the third-party application. The address transfer request here can be regarded as Figure 1 An example of address information_1 in Figure 2 An example of the address information obtained in step S201.

[0133] The portal app is an app that can intelligently identify user intent and display a list of related services. Users can trigger specific services by dragging, such as the following Figure 8 and Fig. 9 The portal shown in (b).

[0134] like Figure 3 As shown in the figure, the framework layer of terminal A shows the smart travel platform and the integrated interconnection platform, both of which are commonly used modules for enriching terminal functions. The smart travel platform mainly contains some modules related to smart travel services. Figure 3 The vehicle connection modules related to the present application scheme are shown in the figure, including the vehicle connection service subsystem and the vehicle connection capability framework. The vehicle connection device management module, the address flow atomic system, and the inter-application message communication module are shown in the vehicle connection service subsystem. The device connection management module, the vehicle connection capability management module, the service channel management module, and the vehicle connection data management module are shown in the vehicle connection capability framework.

[0135] The vehicle-connected device management module and the device connection management module work together to realize the connection, disconnection or status subscription functions of the vehicle computer. Figure 3 , for example, to connect or disconnect terminal A with vehicle computer B, or to subscribe to the status of vehicle computer B.

[0136] The vehicle connection device management module and the vehicle connection capability management module cooperate to query the connection capability of the vehicle computer. Figure 3 , for example, to query the connection capability of vehicle computer B.

[0137] The car connection service subsystem includes many application services related to the car computer. The address transfer atomic system is a service module used to receive address information and transfer the address to the car computer. It is responsible for address message encapsulation, message sending, message receiving, and message parsing. It can be registered in the system and managed by the system service management framework.

[0138] The service channel management module can provide basic vehicle connectivity management, so that upper-level services do not need to worry about differences in vehicle connectivity protocols and data transmission. The service channel management module provides a standard service channel interface to the upper layer, and is responsible for channel creation, reuse, message sorting, and message retransmission.

[0139] The address transfer atomic system cooperates with the service channel management module to realize the function of converting the address transfer request into address information that can be sent out. Figure 3 As shown, after the address transfer atomic system receives the address transfer request from the portal application, it sends the address information therein to the business channel management module. The business channel management module generates a data transmission request based on the address information and sends the data transmission request to the data transmission service module of the fusion interconnection middle station.

[0140] The inter-application message communication module cooperates with the service channel management module to realize data interaction between different applications. In the technical solution of this application, the application data such as the sending of connection status is mainly realized.

[0141] The vehicle data management module is used to process the interactive data between the terminal and the vehicle computer. Figure 3 It is the interaction data between terminal A and vehicle computer B.

[0142] like Figure 3 As shown, the unified interconnection framework module, access networking service module, data transmission service module and device management service module are shown in the fusion interconnection middle station. It can be considered that the fusion interconnection middle station contains some modules related to data transmission. In the embodiment of the present application, the data transmission service in the fusion interconnection middle station is mainly responsible for discovering the vehicle computer, establishing a wireless connection such as a Bluetooth connection with the vehicle computer, establishing a universal data channel, and forwarding the peer data to the upper layer. Combined with Figure 3 , which is responsible for discovering vehicle B, establishing a wireless connection with vehicle B, and sending the address information to vehicle B. The address information sent to vehicle B here can be regarded as Figure 1 An example of address information_2 in Figure 2An example of address flow information in .

[0143] like Figure 3 As shown, the business entrance of the application layer of the vehicle B shows the vehicle system application and multiple map applications. The framework layer shows the vehicle system and the minimum trust ring system. The vehicle connection service module is shown in the vehicle system, and the capability exposure subsystem, vehicle connection service subsystem and vehicle connection capability framework module are shown in the vehicle connection service module. The unified interconnection framework, access networking service, data transmission service, device management service and security authentication modules are shown in the minimum trust ring system.

[0144] The data transmission service in the minimum trust ring system receives the address information from terminal A ( Figure 3 After receiving the data as shown in the figure, it is sent to the car connection service module. After being processed by the car connection service module, the address information is sent to the car system application. The address information sent here can be regarded as Figure 1 An example of address information_3 in Figure 2 When the vehicle system application receives the address information from the vehicle system, it selects and launches a map application according to the preset processing logic, such as launching map application 1 or launching map application 2, or a prompt box may pop up to prompt the user to manually select a map application.

[0145] In an embodiment of the present application, the capability exposure subsystem provides business interface capabilities to third-party applications. The vehicle system application can register a receiver to the vehicle connection service layer, and then receive the address information sent by the terminal side, pull up a specific map application according to a predefined strategy, or pop up a drop-down box to allow the user to choose to pull up a specific map application.

[0146] Figure 4 It is a schematic flowchart of another cross-device navigation method according to an embodiment of the present application. Figure 4 It can be seen as Figure 2 An example of the method shown. For ease of understanding, Figure 4 Continuing with the example of cross-device navigation from terminal A to vehicle B, the relevant introduction of each module in terminal A and vehicle B can be referred to Figure 3 The relevant content will not be elaborated. In other words, Figure 4 Terminal A in can be regarded as Figure 1 An example of device #1 in the example can also be seen as Figure 2 An example of the first device in the vehicle B can be regarded as Figure 1 An example of device #2 in the example can also be seen as Figure 2 After establishing a Bluetooth connection between terminal A and vehicle B, perform the following steps.

[0147] S401, the portal application sends the address information obtained by the user's drag trigger to the address transfer service module of the smart travel center.

[0148] That is, after the user drags the address information to the navigation icon in the portal application and triggers the service, the portal application will send the address information to the address transfer service module. The address transfer service module here may include Figure 3 The address information here can be regarded as Figure 1 An example of address information_1 in Figure 2 The example of the first address information obtained from the first application of the first device can also be regarded as Figure 3 An example of an address transfer request.

[0149] Step S401 can be regarded as an example of step S202.

[0150] S402. The address transfer service module of the smart travel center performs message encapsulation and establishes a data channel.

[0151] Step S402 can be used Figure 3 In other words, step S402 can be regarded as Figure 3 After receiving the address information from the address transfer atomic system, the business channel management module encapsulates the address information and establishes an example of a data channel.

[0152] Message encapsulation is to encapsulate the address content and address type of the acquired address information (such as the first address information or address information_1 above) to obtain address flow information (such as address information_2 above). After encapsulation, the address flow information includes not only the address content and address type indicated by the first address information, but also the source package name, target package name and other identification parameters mentioned above.

[0153] Step S402 can be regarded as an example of the process of constructing the address flow information in step S203.

[0154] S403. The address transfer service of the smart travel middle station requests the integrated interconnection middle station to send data.

[0155] Here, requesting to send data refers to requesting to send encapsulated address information.

[0156] S404. After receiving the request to send data from the address transfer service, the fusion interconnection middle station sends data to the Bluetooth module.

[0157] The data sent here refers to the address flow information, which can be seen as Figure 1 An example of address information_2 in Figure 2 An example of address flow information in .

[0158] Step S404 can be used Figure 3 It is executed by the data transmission service module in the converged interconnection middle platform.

[0159] S405 . The Bluetooth module of terminal A sends the address information to the Bluetooth module of vehicle B through interaction with the Bluetooth module of vehicle B based on the Bluetooth protocol.

[0160] Steps S403-S405 can be regarded as an example of step S203.

[0161] Figure 4 Take the wireless connection method of Bluetooth connection between terminal A and car machine B as an example. Since the amount of address information that needs to be transmitted in this application is very small, the use of Bluetooth transmission is sufficient to meet the demand. Compared with the traditional screen projection method, the demand for data transmission between devices is much smaller. In the traditional screen projection method, since what is transmitted is the picture of each frame, the amount of data is large, and the transmission rate is also high, otherwise it will cause the picture display to be stuck, so the Bluetooth connection cannot meet the data transmission requirements of the screen projection method. However, it should be understood that in the present application scheme, data transmission between devices can still use other wireless transmission methods such as WIFI, but using Bluetooth transmission will be simpler and more convenient, and it can avoid competing with other services for WIFI.

[0162] S406: After receiving the data from terminal A, the Bluetooth module of vehicle computer B reports the data to the minimum system of the trust ring.

[0163] The data reported here is the received address information, which can be regarded as Figure 1 An example of address information_2 in Figure 2 An example of address flow information in .

[0164] S407: The minimum system of the trust ring continues to report data to the vehicle networking service.

[0165] Step S407 can be used Figure 3 The data transmission service in the minimum trust loop system is executed, and the received data is sent to the vehicle connection service in the vehicle system.

[0166] S408: The vehicle connectivity service performs message parsing.

[0167] The parsed address information here can be seen as Figure 1 An example of address information_3 in Figure 2An example of target address information in Figure 3 An example of address information sent from the vehicle system to the vehicle system application.

[0168] Step S408 can be regarded as an example of step S205.

[0169] S409: The vehicle connection service sends the parsed address information to the vehicle system application.

[0170] S410. The vehicle system application launches a map application according to the address information received from the vehicle connection service.

[0171] Steps S409-S410 can be regarded as an example of step S206.

[0172] S411. The map app returns the pull-up result to the vehicle system application.

[0173] S412. The vehicle system application gradually returns the processing results to the portal application of terminal A.

[0174] It can be seen that Figure 4 After terminal A establishes a Bluetooth connection with vehicle computer B, the user on terminal A triggers the address transfer service of the smart travel center through the portal. The address transfer service encapsulates the address information into a specific message format (i.e. the preset format mentioned above) and sends it to vehicle computer B through the data transmission channel of the fusion interconnection center. The vehicle connection service (address transfer processing) on ​​vehicle computer B receives the address information, parses the address information and sends it to the vehicle computer system application. The vehicle computer system application has pre-registered a message listener on the vehicle computer service, and the vehicle computer system application launches the map application according to the predefined strategy.

[0175] Figure 4 It can be seen as a combination of internal frame structure Figure 2 An introduction to the internal execution process of each step shown.

[0176] The following describes the execution process in the first device and the second device respectively in conjunction with the accompanying drawings.

[0177] Figure 5 Schematic diagram of a first device executing steps in a method for cross-device navigation in an embodiment of the present application. Figure 5 The steps shown are introduced below. Figure 5 It can be regarded as an example of steps S201-S203, and can also be regarded as an example of steps S401-S405 in the method shown.

[0178] S501, execute address transfer and obtain address information.

[0179] That is, under the triggering of the user's subsequent operation, the execution process of the address transfer is started, and the address information is obtained for subsequent address transfer.

[0180] The address information may be obtained from the first application of the first device, that is, the address information is obtained from any application of the first device that has an address that can be obtained.

[0181] Step S501 can be regarded as an example of step S201, or as Figure 1 An example of obtaining address information from any APP interface_1 is shown.

[0182] S502: Check the validity of the address information.

[0183] In the embodiment of the present application, the supported address types include at least one of the following: text, POI, or longitude and latitude. That is, the preset address type (or preset type) may include at least one of the following: text, POI, or longitude and latitude.

[0184] Step S502 is to check whether the acquired address information is valid, that is, whether there is any error in the address information, and check which of the three types of address information the address type is, whether it corresponds to the address information, etc. For example, if the type of a certain address information is text, but the address content is latitude and longitude or POI, it means that the address information is invalid.

[0185] In one implementation, the check in step S502 includes checking whether the address type of the address information is a supported type, whether the address content (address data) in the address information is in a supported string format, and whether the address content corresponds to the address type.

[0186] In one example, the address information is represented as {addressType, addressData}, where addressType represents the address type of the address information and addressData represents the address content. When checking whether the address information corresponds, it can be understood as checking whether addressType and addressData correspond. It should be understood that the type can be in the latter and the address content in the former, without limitation.

[0187] For the checking process in step S502, reference can also be made to the relevant introduction in step S202 on checking whether the address information is valid, which will not be repeated here.

[0188] S503: Construct address transfer information.

[0189] That is, the acquired address information is converted into address flow information for circulation.

[0190] Step S503 can be regarded as an example of step S202.

[0191] In one implementation, the address flow information may include at least one of the following in addition to the address information: a unique identifier of the address flow information, a source package name of the address information, a target package name, and a source device name. Among them, the message unique identifier is used to identify the constructed address flow information. The source package name is used to indicate the application source of the address information, that is, which app the address information comes from. The target package name is used to indicate which map application the address information will trigger to start. In this application, since which map application is transferred to the second device is determined by the second device, the target package name may not be specified here; or a default target package name may be set; the target package name may also be set at will, but the second device may subsequently ignore the target package name. The source device name is used to indicate which device the address flow information comes from, Figure 5 This is an example of the execution process of the first device, so the source device name here indicates that the address information and the constructed address flow information come from the first device.

[0192] In an example, the address flow information can be described as:

[0193] AdresssTransferMessage{

[0194] String messageId, / / message unique identifier, 32-bit string

[0195] String adressInfo, / / Address information

[0196] String sourcePackageName, / / Source package name

[0197] String targetPackageName, / / target package name

[0198] String deviceName, / / Source device name

[0199] }

[0200] That is to say, in this example, the address flow information (address flow information) includes: address information, message unique identifier, source package name, target package name and source device name.

[0201] In one implementation, adressInfo in the address flow information may be a JSON string.

[0202] In one example, the format of adressInfo may be described as follows.

[0203] {

[0204] "addressType":int,

[0205] “addressData”:XXX

[0206] }

[0207] That is to say, the address type of address information is represented by an integer type, and the address content varies with the type. The following example uses an example for each of the three types to illustrate what an adressInfo will contain.

[0208] When the address type of the address information is text, for example, it can be:

[0209] "addressType":1,

[0210] "addressData": "No. 1, Zhongguancun, Beiqing Road, Xibeiwang Town"

[0211] }

[0212] When the address type of the address information is POI, for example, it can be:

[0213] "addressType":2,

[0214] "addressData":"poiType":"0101","poi":"Vanke Green Lake International"

[0215] }

[0216] When the address type of the address information is longitude and latitude, for example, it can be:

[0217] "addressType":3,

[0218] "addressData":"latitude":"xxx","longtitude":"xxx"

[0219] }

[0220] In the above example, the encapsulation format of the address information is explained with different description types of several actual addresses. However, it should be understood that the above numerical values ​​and the specific content of the address information are for the purpose of facilitating the understanding of how to construct address flow information using the address information obtained from the third-party application, and there is no limitation. For example, the address type of the above address information can be used as long as it can distinguish different types, and other numerical values ​​other than the above can also be used. For example, the above specific address content will vary according to the different address content in the obtained address information, which will not be repeated.

[0221] S502-S503 can be regarded as an example of S202, or an example of S402.

[0222] S504: Create a message sending task, and wake up the working thread to process the message sending task.

[0223] That is to say, in order to send out the constructed address flow information, it is necessary to execute corresponding steps with the help of the device's data sending processing flow.

[0224] Creating a message sending task mainly means creating a message sending task and putting it into the task queue. After starting or waking up the worker thread to process the message sending task, you can also monitor the sending status and resend it when the sending fails.

[0225] S505: Call the service channel management module data interface to send address transfer information.

[0226] That is to call the communication interface of the device to send address flow information.

[0227] S504-S505 may be viewed as an example of S203, or may be viewed as an example of S403-S405.

[0228] Figure 6 Schematic diagram of the steps executed by the first device in another cross-device navigation method according to an embodiment of the present application. Figure 6 The steps shown are introduced below. Figure 6 The user-triggered portal navigation continuation part (steps S606-S625) in the method can be regarded as an example of steps S201-S203, and can also be regarded as an example of steps S401-S405 in the method shown. Figure 5 An example of the method shown.

[0229] like Figure 6 As shown, the steps that need to be performed in the first device in the embodiment of the present application are mainly shown. Among them, the atomic service registration and enabling / disabling driving service navigation at the start-up can be regarded as some basic settings of the first device, providing basic support for the car connection service between the two devices.

[0230] The atomic service registration at startup can be understood as the need to register the atomic service in the smart travel atomic service (AutoClipService) when the first device is powered on. At startup, traverse the management (service) components of all installed applications, query whether the service meta-data contains the standard atomic service identifier isAPPClip, and if it contains the identifier, parse the resourcexml file corresponding to the service, obtain the service details, and register the service to the service management center. In other words, the process can include steps S601 and S602.

[0231] S601. The basic framework of the service management framework parses service information from the smart travel atomic services.

[0232] That is, when the above logo is included, the resourcexml file corresponding to the service is parsed to obtain detailed information of the service information and complete the registration.

[0233] S602. The smart travel atomic service returns service information to the service management framework.

[0234] That is to say, the parsed service information is sent back.

[0235] Enabling / disabling driving service navigation is the process of starting or shutting down driving service navigation, that is, the process of setting the service status of driving service navigation, which may include steps S603-S605.

[0236] S603: The vehicle connection service subsystem monitors and sets the service status according to the vehicle-machine connection status.

[0237] That is to say, in the AutoManager (i.e., the vehicle-connected device management module) of the vehicle-connected service subsystem, when the vehicle computer (an example of the second device) is successfully connected to the first device (such as a mobile phone terminal), the vehicle-connected state (i.e., the vehicle-computer connection state) is considered to be connected, and the service state is set to enabled; otherwise, the vehicle-connected state is considered to be not connected (i.e., not connected), and the service state is set to disabled. It should be understood that the vehicle-computer connection state is not connected, which may be because the second device failed to connect to the first device, or the second device did not send a connection request to the first device. The connection failure may be that the connection has not been successful for more than a certain period of time, or the connection requests sent multiple times have not received feedback information of successful connection. In the embodiment of the present application, as long as the vehicle-connected service is enabled only when the vehicle-connected state is connected, it can be ensured that the entire address transfer process will not fail to execute due to the connection state, and there is no need to further distinguish which situation caused the two devices to fail to connect successfully.

[0238] S604: The vehicle connection service subsystem sets the service status to the application management module (AppClipManager) of the smart flow.

[0239] Setting the service status can be expressed as enableAppClipByUUID(isEnableed).

[0240] S605. AppClipManager sets the service status to the service management framework.

[0241] The user-triggered portal navigation continuation portion can be viewed as an example of the steps that the first device needs to perform in a cross-device navigation scenario.

[0242] S606: After obtaining the user's long press operation on the address information, the portal displays address-related services.

[0243] S607: Acquire the user's operation of dragging the address information to the icon of the driving navigation service in the portal.

[0244] S606-S607 can be regarded as an example of the above-mentioned continuous operation.

[0245] S608. The portal sends a query service to AppClipManager.

[0246] The query service can be expressed as getAppClipByUUID.

[0247] S609, AppClipManager binds the service to AutoClipService.

[0248] A bound service can be represented as bindService.

[0249] S610. AutoClipService returns the binding result to AppClipManager.

[0250] The returned binding result can be represented as IappClipsEntry.

[0251] S611. AppClipManager obtains the specified applet from AutoClipService.

[0252] That is to get the specified APPClip, which can be expressed as getAppClipByUUID.

[0253] S612. AutoClipService returns a specified result to AppClipManager.

[0254] The specified result returned can be represented as an IAPPClip.

[0255] S613. AppClipManager returns the atomic service interface to the portal.

[0256] S608 - S613 can be regarded as an example of the steps of calling the atomic service interface.

[0257] S614, the portal executes the atomic service to AutoClipService.

[0258] Executing an atomic service can be expressed as perform(bundle{key_adrees},flags).

[0259] That is, the portal sends the acquired address information to AutoClipService.

[0260] S615. Determine the vehicle-machine connection status in AutoClipService.

[0261] This step may include performing parameter verification, data conversion (that is, using address information to construct address flow information), determining whether the vehicle computer is connected, continuing to execute subsequent operations when it is connected, and returning to the vehicle computer not connected when it is not connected.

[0262] S615 can be considered as an example of S202 or S402 or S502-S503.

[0263] S616. AutoClipService sends data to the service channel management module (ie, ChannelManager) of the vehicle connectivity capability framework.

[0264] The sending data here can be expressed as sendData(data,cb), which means the address flow information formed by sending.

[0265] S617. ChannelManager creates a data channel.

[0266] S618. ChannelManager sends data to the LinkDataChannel of the vehicle connectivity capability framework.

[0267] S619. Create a data sending task in LinkDataChannel, and the working thread processes the task.

[0268] S620, LinkDataChannel sends data to the connection module (Link).

[0269] S616-S620 can be regarded as an example of S203 or S403-S404 or S504-S505.

[0270] S621. The connection module returns the sending result to LinkDataChannel.

[0271] That is, send data callback.

[0272] S622. LinkDataChannel returns the sending result to ChannelManager.

[0273] S623. ChannelManager returns the sending result to AutoClipService.

[0274] S624. AutoClipService returns the execution result (performResult) to the portal.

[0275] Steps S621-S624 are the process of gradually calling back and sending the results.

[0276] S625. Display the execution result on the portal.

[0277] Figure 7 Schematic diagram of the steps executed by the second device in a method for cross-device navigation in an embodiment of the present application. Figure 7 The steps shown are introduced below. Figure 7 It can be regarded as an example of steps S203, S205 and -S206, and can also be regarded as an example of steps S405-S410 in the illustrated method.

[0278] S701. Receive address data from the terminal using the fusion interconnection module, and report the received address data to the vehicle networking service layer by calling back the message content.

[0279] That is, the received address data is reported by calling back onMessageRecieved, where the address data is the address flow information sent by the terminal (an example of the first device).

[0280] S701 can be considered as an example of S203 or S405.

[0281] S702: parse the message content according to the information format and check the address data.

[0282] This step may include checking whether the address data (ie, address flow information) is a valid string, and / or whether the source package name is in the whitelist. The following steps are executed only if both check results are "yes".

[0283] This step can be regarded as an example of the string verification and preset whitelist constraint in step S205. For related contents, please refer to the description in step S205 and will not be described in detail.

[0284] S703: construct business data according to the preset format of the vehicle computer, and send the business data to the upper-layer business through callback.

[0285] The business data here can be seen as an example of the target address information mentioned above.

[0286] That is to say, the address flow information is constructed into business data (ie, target address information) that meets the format requirements of the vehicle computer (an example of the second device).

[0287] In one implementation, the format of the business data can be described as follows.

[0288] AdresssInfoBean{

[0289] String sessionId, / / Session unique identifier, 32-bit string

[0290] String messageId, / / message unique identifier, 32-bit string

[0291] int adressType, / / Address type

[0292] String adressData, / / Address content data

[0293] String targetPackageName, / / target package name

[0294] String deviceName, / / Source device name

[0295] }

[0296] S702-S703 can be regarded as an example of S205 or S408.

[0297] S704: Receive business data at the application layer, and launch a map application according to a predefined strategy corresponding to the business data.

[0298] In one example, the target package name (ie, targetPackageName) may be used to launch an application corresponding to a specified address.

[0299] In another example, the map application pre-installed in the car computer can be launched according to a predefined strategy. For example, priorities can be set for all map applications, and map applications can be tried in order from the highest priority to the lowest priority. For another example, map applications can be mapped according to different address types. For another example, the operating resources required by the map application at run time can be statistically compared, and the operating resources can be sorted from low to high according to the demand for operating resources. When launching, they are launched in this order. Other situations are not listed one by one.

[0300] S704 can be regarded as an example of S205 or S409-S410. The relevant contents can be referred to above and will not be described in detail.

[0301] S705: The map application runs.

[0302] Figure 8 It is a schematic diagram of the interactive process of cross-device navigation in an embodiment of the present application. Figure 8 Device #1 can be Figure 1 The device #1 shown may also be an example of the first device mentioned above. Figure 8 Device #2 in the example can be Figure 1 The device #2 shown may also be an example of the second device mentioned above. Figure 8 Device #1 in the figure takes a mobile phone terminal as an example, and device #2 takes a car computer (vehicle-mounted terminal) as an example. Figure 8 The solution of the embodiment of the present application is mainly introduced from the perspective of interface presentation during the entire cross-device navigation process.

[0303] like Figure 8 As shown in the interface 801 of device #1, the interface (an example of the first interface) of a running chat application (an example of the first application) is displayed on device #1. After detecting that the user has long pressed the address information contained in the interface 801, device #1 can display the interface of the portal app (such as a sidebar) on the side, as well as the list of service icons in the portal. Assuming that the user further drags the address information to the car icon representing cross-device navigation in the portal (the user can complete the long press and drag without releasing the hand), which is an example of the first operation, it can trigger the transfer of the navigation task from device #1 to device #2, that is, the address information is transferred from device #1 to device #2.

[0304] It should be understood that the car icon here is just an example. In practice, it will suffice as long as it can clearly indicate that it is a service for switching the navigation device.

[0305] After the connection operation occurs, the steps of the solution of the embodiment of the present application can be executed to transfer the address information from device #1 to device #2. Then, device #2 can display the situation shown in interface 802.

[0306] like Figure 8 As shown in the interface 802 of device #2, as the user performs the follow-up operation, the address information flows to device #2, and the address content of the address information is displayed in a pop-up window, which may include the device source of the address information. Interface 802 also shows that the pop-up window can also include two selection bars (selection controls) for the user to select operations, including two selection controls for displaying routes and navigating departures, which will present different interfaces of the map application according to the user's selection. Here, it is assumed that the user clicks the "Navigate departure" selection bar, and then the situation shown in interface 803 can be displayed.

[0307] In order to better illustrate the solution of the embodiment of the present application, an example is given in interface 802 that device #2 includes three map applications, namely, map A, map B, and map C. When the map application is subsequently started, all three map applications may be started, and which map application is started depends on the predefined policy of device #2, that is, the processing logic preset on device #2.

[0308] For example, when device #2 starts map A, the address information is automatically filled into the destination column on the interface of map A, and three alternative routes are displayed, route A, route B, and route C, as well as the estimated duration of the three alternative routes. Assuming that the user selects route B in interface 803 and clicks the selection control for starting navigation, device #2 can display the navigation interface shown in interface 804.

[0309] In the navigation interface of interface 804, the user can perform some operations in the middle according to actual needs, such as switching routes or adding waypoints, etc. If it is a traditional screen projection method, the user operations during this navigation can still only be performed from device #1. However, in the embodiment of the present application, it can be seen that these operations are performed on device #2. After device #1 sends the address flow information to device #2, subsequent navigation does not require the participation of device #1.

[0310] That is to say, unlike the traditional screen projection method, the participation of device #1 in the entire solution ends after interface 801, and everything starts from interface 802 and is only executed on device #2. The subsequent launch and operation of the map application is also only performed on device #2, without the participation of device #1.

[0311] It should also be understood that Figure 8The interactive process shown is only an example. In practice, there may be other situations, such as a selection control for the user to select a map application in the pop-up window of interface 802, or a selection interface for the user to select a map application between interface 802 and interface 803. For another example, after the connection occurs, device #2 will not display interface 802, but directly display interface 803, that is, interface 802 does not exist. Other situations are not listed one by one.

[0312] Fig. 9 It is a schematic diagram comparing the interaction results of the cross-device navigation according to the embodiment of the present application with the interaction results of the cross-device navigation using the traditional screen projection method.

[0313] like Fig. 9 (a) shows cross-device navigation in screen projection mode. Device #2 is used only as an extended screen of device #1. The content displayed in device #1 is exactly the same as that displayed in device #2. All operations for map applications need to be performed on device #1, not on device #2. Device #2 needs to synchronously display all interface contents of device #1. The two devices work synchronously during the entire navigation period. Device #1 runs the interface, packages and sends each frame of the display screen, and device #2 receives the data packet of each frame of the display screen and also displays it.

[0314] In the case of screen projection, in addition to the defects mentioned above such as large communication resource requirements, high energy consumption, and low convenience, there is also the problem of fewer applicable scenarios, which is illustrated below with examples. For example, suppose device #1 is running out of power. At this time, screen projection is not applicable because both devices have to work all the time. For another example, suppose you need to navigate and find that there is no map application installed on device #1, but a map application is installed on device #2. At this time, you cannot use screen projection for cross-device navigation. For another example, suppose map a is installed on device #1 and map b is installed on device #2, but the user prefers to use map b for navigation. In the screen projection mode, the map application of device #2 cannot participate in cross-device navigation and cannot meet user needs.

[0315] like Fig. 9 (b) is a schematic diagram of a cross-device navigation solution of an embodiment of the present application, in which the user's first application on device #1 (not limited to a specific map application, nor limited to a map application, for example Fig. 9 (b) shows that the address transfer is triggered by long pressing the address information and dragging it to the car icon of the portal on the chat application. A pop-up window including the address information will pop up on device #2, and interactive options will be provided for the user to select subsequent operations. Figure 8It can also be seen from the more detailed interaction process of the solution of the embodiment of the present application that the operations of the map application in the embodiment of the present application are all performed on device #2.

[0316] In addition to the advantages of small communication resource requirements, low energy consumption, and high convenience mentioned above, the solution of the embodiment of the present application is more flexible. Fig. 9 In addition to being applicable to the centralized situation mentioned in (a), the solution of the embodiment of the present application also has the following advantages of greater flexibility. For example, the solution of the present application can be to obtain an address from the map a of one device and transfer it to the map a of another device. Figure 2 In the above, the map applications of the two devices are decoupled and do not need to be the same application. For another example, suppose the user switches to navigation with device #2 because the screen of device #1 is too small. Since subsequent operations are performed on device #2, the user's large-screen needs are truly met. However, the screen projection method still performs the operations on device #1, resulting in the user's large-screen needs not being fully met, and the operation is still inconvenient. For another example, even if the map application is not installed on device #1, cross-device navigation can still be achieved. In addition, device #2 can independently set the strategy for launching the map application, which is more flexible.

[0317] The above mainly introduces the method of the embodiment of the present application in conjunction with the accompanying drawings. It should be understood that although the various steps in the flowcharts involved in the various embodiments described above are displayed in sequence, these steps are not necessarily performed in sequence in the order shown in the figure. Unless clearly stated in this article, there is no strict order restriction on the execution of these steps, and these steps can be performed in other orders. Moreover, at least a part of the steps in the flowcharts involved in the various embodiments described above may include multiple steps or multiple stages, and these steps or stages are not necessarily performed at the same time, but can be performed at different times, and the execution order of these steps or stages is not necessarily performed in sequence, but can be performed in turn or alternately with other steps or at least a part of the steps or stages in other steps. The device of the embodiment of the present application is introduced below in conjunction with the accompanying drawings.

[0318] Fig.10 Schematic diagram of a cross-device navigation apparatus according to an embodiment of the present application. Fig.10 As shown, the device 2000 includes an acquisition unit 2001, a processing unit 2002 and a sending unit 2003. The device 2000 can be integrated in an electronic device such as a mobile phone, a tablet computer, a touch-screen laptop, etc. The device 2000 can be integrated in any first device of the present application, such as the above-mentioned device #1 or terminal A.

[0319] The apparatus 2000 can be used to execute the steps executed by the first device in any of the above-mentioned methods for cross-device navigation. For example, the acquisition unit 2001 can be used to execute step S202, the processing unit can be used to execute step S201, and the sending unit 2003 can be used to execute step S203. For another example, the acquisition unit 2001 can be used to execute step S401, the processing unit can be used to execute step S402, and the sending unit 2003 can be used to execute steps S403-S405. For another example, the acquisition unit 2001 can be used to execute step S501, the processing unit can be used to execute steps S502-S503, and the sending unit 2003 can be used to execute steps S504-S505. For another example, the acquisition unit 2001 can be used to execute step S501, the processing unit can be used to execute steps S502-S503, and the sending unit 2003 can be used to execute steps S504-S505. The device 2000 can also be used to execute Figure 6 The steps shown.

[0320] In one implementation, the apparatus 2000 may further include a storage unit for storing relevant data. The storage unit may be integrated in any one of the above units, or may be a unit independent of all the above units.

[0321] Fig.11 FIG. 1 is a schematic diagram of another cross-device navigation apparatus according to an embodiment of the present application. Fig.11 As shown, the device 3000 includes a receiving unit 3001 and a processing unit 3002. The device 3000 can be integrated in an electronic device such as a vehicle-mounted terminal, a mobile phone, a tablet computer, a touch-screen laptop, etc. The device 3000 can be integrated in any second device of the present application, such as the above-mentioned device #2 or the vehicle machine B.

[0322] The apparatus 3000 can be used to execute the steps executed by the second device in any of the above cross-device navigation methods. For example, the receiving unit 3001 can be used to execute step S205, and the processing unit can be used to execute step S206. For another example, the receiving unit 3001 can be used to execute step S408, and the processing unit can be used to execute steps S409-S410. For another example, the receiving unit 3001 can be used to execute step S701, and the processing unit can be used to execute steps S702-S705.

[0323] In one implementation, the apparatus 3000 may further include a storage unit for storing relevant data. The storage unit may be integrated in any one of the above units, or may be a unit independent of all the above units.

[0324] Fig.12 Schematic diagram of the hardware structure of an electronic device according to an embodiment of the present application. Fig.12As shown, the electronic device 4000 includes: at least one processor 4001 ( Fig.12 Only one is shown in the figure) a processor, a memory 4002, and a computer program 4003 stored in the memory 4002 and executable on the at least one processor 4001, and when the processor 4001 executes the computer program 4003, the steps in any one of the above methods are implemented.

[0325] Those skilled in the art will understand that Figure 8 These are merely examples of electronic devices and do not constitute a limitation on the electronic device. In practice, the electronic device may include more or fewer components than those shown in the figure, or a combination of certain components, or different components. For example, it may also include input and output devices, network access devices, etc.

[0326] The processor 4001 may be a central processing unit (CPU), other general-purpose processors, a digital signal processor (DSP), an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA) or other programmable logic devices, discrete gate or transistor logic devices, discrete hardware components, etc. A general-purpose processor may be a microprocessor or the processor may also be any conventional processor, etc.

[0327] In some embodiments, the memory 4002 may be an internal storage unit of the electronic device 4000, such as a hard disk or memory of the electronic device 4000. In other embodiments, the memory 4002 may also be an external storage device of the electronic device 4000, such as a plug-in hard disk, a smart media card (SMC), a secure digital (SD) card, a flash card, etc. equipped on the electronic device 4000. Optionally, the memory 4002 may also include both an internal storage unit of the electronic device 4000 and an external storage device. The memory 4002 is used to store an operating system, an application program, a boot loader, data, and other programs, such as the program code of the computer program. The memory 4002 may also be used to temporarily store data that has been output or is to be output.

[0328] Fig.13 Schematic diagram of the hardware structure of an electronic device according to an embodiment of the present application. Fig.13As shown, the electronic device 900 may include a processor 910, an external memory interface 920, an internal memory 921, a universal serial bus (USB) interface 930, a charging management module 940, a power management module 941, a battery 942, an antenna 1, an antenna 2, a mobile communication module 950, a wireless communication module 960, an audio module 970, a speaker 970A, a receiver 970B, a microphone 970C, an earphone interface 970D, a sensor module 980, a button 990, a motor 991, an indicator 992, a camera 993, a display screen 994, and a subscriber identification module (SIM) card interface 995, etc.

[0329] Among them, the sensor module 980 may include a pressure sensor 980A, a gyroscope sensor 980B, an air pressure sensor 980C, a magnetic sensor 980D, an acceleration sensor 980E, a distance sensor 980F, a proximity light sensor 980G, a fingerprint sensor 980H, a temperature sensor 980J, a touch sensor 980K, an ambient light sensor 980L, a bone conduction sensor 980M, etc.

[0330] It is to be understood that the structure illustrated in the embodiment of the present application does not constitute a specific limitation on the electronic device 900. In other embodiments of the present application, the electronic device 900 may include more or fewer components than shown in the figure, or combine some components, or split some components, or arrange the components differently. The components shown in the figure may be implemented in hardware, software, or a combination of software and hardware.

[0331] For example, Fig.13 The processor 910 shown may include one or more processing units, for example, the processor 910 may include an application processor (AP), a modem processor, a graphics processor (GPU), an image signal processor (ISP), a controller, a memory, a video codec, a digital signal processor (DSP), a baseband processor, and / or a neural-network processing unit (NPU), etc. Among them, different processing units may be independent devices or integrated in one or more processors.

[0332] The controller may be the nerve center and command center of the electronic device 900. The controller may generate an operation control signal according to the instruction operation code and the timing signal to complete the control of fetching and executing instructions.

[0333] The processor 910 may also be provided with a memory for storing instructions and data. In some embodiments, the memory in the processor 910 is a cache memory. The memory may store instructions or data that the processor 910 has just used or cyclically used. If the processor 910 needs to use the instruction or data again, it may be directly called from the memory. This avoids repeated access, reduces the waiting time of the processor 910, and thus improves the efficiency of the system.

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

[0335] The charging management module 940 is used to receive charging input from a charger. The charger may be a wireless charger or a wired charger. In some wired charging embodiments, the charging management module 940 may receive charging input from a wired charger through the USB interface 930. In some wireless charging embodiments, the charging management module 940 may receive wireless charging input through a wireless charging coil of the electronic device 900. While the charging management module 940 is charging the battery 942, it may also power the electronic device through the power management module 941.

[0336] The power management module 941 is used to connect the battery 942, the charging management module 940 and the processor 910. The power management module 941 receives input from the battery 942 and / or the charging management module 940, and supplies power to the processor 910, the internal memory 921, the external memory, the display screen 994, the camera 993, and the wireless communication module 960. The power management module 941 can also be used to monitor parameters such as battery capacity, battery cycle number, battery health status (leakage, impedance), etc. In some other embodiments, the power management module 941 can also be set in the processor 910. In other embodiments, the power management module 941 and the charging management module 940 can also be set in the same device.

[0337] The wireless communication function of the electronic device 900 can be implemented through antenna 1, antenna 2, mobile communication module 950, wireless communication module 960, a modem processor and a baseband processor.

[0338] Antenna 1 and antenna 2 are used to transmit and receive electromagnetic wave signals. Each antenna in electronic device 900 can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve the utilization of antennas. For example, antenna 1 can be reused as a diversity antenna for a wireless local area network. In some other embodiments, the antenna can be used in combination with a tuning switch.

[0339] The mobile communication module 950 can provide a wireless communication solution applied to the electronic device 900, such as at least one of the following solutions: a second generation (2G) mobile communication solution, a third generation (3G) mobile communication solution, a fourth generation (5G) mobile communication solution, and a fifth generation (5G) mobile communication solution. The mobile communication module 150 may include at least one filter, a switch, a power amplifier, a low noise amplifier (LNA), etc. The mobile communication module 950 can receive electromagnetic waves from the antenna 1, and filter and amplify the received electromagnetic waves, and then transmit them to the modulation and demodulation processor for demodulation. The mobile communication module 950 can also amplify the signal modulated by the modulation and demodulation processor, and the amplified signal is converted into an electromagnetic wave and radiated out through the antenna 1. In some embodiments, at least some of the functional modules of the mobile communication module 150 can be set in the processor 910. In some embodiments, at least some of the functional modules of the mobile communication module 950 can be set in the same device as at least some of the modules of the processor 910.

[0340] The modem processor may include a modulator and a demodulator. Among them, the modulator is used to modulate the low-frequency baseband signal to be sent into a medium-high frequency signal. The demodulator is used to demodulate the received electromagnetic wave signal into a low-frequency baseband signal. The demodulator then transmits the demodulated low-frequency baseband signal to the baseband processor for processing. After the low-frequency baseband signal is processed by the baseband processor, it is passed to the application processor. The application processor outputs a sound signal through an audio device (not limited to a speaker 970A, a receiver 970B, etc.), or displays an image or video through a display screen 994. In some embodiments, the modem processor may be an independent device. In other embodiments, the modem processor may be independent of the processor 910 and be set in the same device as the mobile communication module 950 or other functional modules.

[0341] The wireless communication module 960 can provide wireless communication solutions including wireless local area networks (WLAN) (such as wireless fidelity (Wi-Fi) networks), bluetooth (BT), global navigation satellite system (GNSS), frequency modulation (FM), near field communication (NFC), infrared (IR), etc., which are applied to the electronic device 900. The wireless communication module 960 can be one or more devices integrating at least one communication processing module. The wireless communication module 960 receives electromagnetic waves via the antenna 2, modulates the frequency of the electromagnetic wave signal and performs filtering, and sends the processed signal to the processor 910. The wireless communication module 960 can also receive the signal to be sent from the processor 910, modulate the frequency of it, amplify it, and convert it into electromagnetic waves for radiation through the antenna 2.

[0342] In some embodiments, the antenna 1 of the electronic device 900 is coupled to the mobile communication module 950, and the antenna 2 of the electronic device 900 is coupled to the wireless communication module 960, so that the electronic device 900 can communicate with the network and other electronic devices through wireless communication technology. The wireless communication technology may include at least one of the following communication technologies: global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), wideband code division multiple access (WCDMA), time-division code division multiple access (TD-SCDMA), long term evolution (LTE), BT, GNSS, WLAN, NFC, FM, IR technology. The GNSS may include at least one of the following positioning technologies: global positioning system (GPS), global navigation satellite system (GLONASS), Beidou navigation satellite system (BDS), quasi-zenith satellite system (QZSS), and satellite based augmentation systems (SBAS).

[0343] The electronic device 900 implements the display function through a GPU, a display screen 994, and an application processor. The GPU is a microprocessor for image processing, which connects the display screen 994 and the application processor. The GPU is used to perform mathematical and geometric calculations for graphics rendering. The processor 910 may include one or more GPUs, which execute program instructions to generate or change display information.

[0344] The display screen 994 is used to display images, videos, etc. The display screen 994 includes a display panel. The display panel can be a liquid crystal display (LCD), an organic light-emitting diode (OLED), an active-matrix organic light-emitting diode or an active-matrix organic light-emitting diode (AMOLED), a flexible light-emitting diode (FLED), Mini-LED, Micro-Led, Micro-oLed, a quantum dot light-emitting diode (QLED), etc. In some embodiments, the electronic device 900 may include 1 or N display screens 994, where N is a positive integer greater than 1.

[0345] The electronic device 900 can realize the shooting function through an ISP, a camera 993, a video codec, a GPU, a display screen 994, and an application processor.

[0346] ISP is used to process the data fed back by camera 993. For example, when taking a photo, the shutter is opened, and the light is transmitted to the camera photosensitive element through the lens. The light signal is converted into an electrical signal, and the camera photosensitive element transmits the electrical signal to ISP for processing and converts it into an image visible to the naked eye. ISP can also perform algorithm optimization on the noise, brightness, and skin color of the image. ISP can also optimize the exposure, color temperature and other parameters of the shooting scene. In some embodiments, ISP can be set in camera 993.

[0347] The camera 993 is used to capture still images or videos. The object generates an optical image through the lens and projects it onto the photosensitive element. The photosensitive element can be a charge coupled device (CCD) or a complementary metal-oxide-semiconductor (CMOS) phototransistor. The photosensitive element converts the optical signal into an electrical signal, and then passes the electrical signal to the ISP to be converted into a digital image signal. The ISP outputs the digital image signal to the DSP for processing. The DSP converts the digital image signal into an image signal in a standard RGB, YUV or other format. In some embodiments, the electronic device 900 may include 1 or N cameras 993, where N is a positive integer greater than 1.

[0348] The digital signal processor is used to process digital signals, and can process not only digital image signals but also other digital signals. For example, when the electronic device 900 selects a frequency point, the digital signal processor is used to perform Fourier transform on the frequency point energy.

[0349] Video codecs are used to compress or decompress digital videos. The electronic device 900 may support one or more video codecs. Thus, the electronic device 900 may play or record videos in a variety of coding formats, such as Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.

[0350] The external memory interface 920 can be used to connect an external memory card, such as a secure digital (SD) card, to expand the storage capacity of the electronic device 900. The external memory card communicates with the processor 910 through the external memory interface 120 to implement a data storage function, such as storing music, video and other files in the external memory card.

[0351] The internal memory 921 can be used to store computer executable program codes, which include instructions. The processor 910 executes various functional applications and data processing of the electronic device 900 by running the instructions stored in the internal memory 921. The internal memory 921 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 electronic device 900 (such as audio data, a phone book, etc.), etc. In addition, the internal memory 921 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.

[0352] The electronic device 900 can implement audio functions such as music playing and recording through the audio module 970, the speaker 970A, the receiver 970B, the microphone 970C, the headphone jack 970D, and the application processor.

[0353] The audio module 970 is used to convert digital audio information into analog audio signal output, and is also used to convert analog audio input into digital audio signal. The audio module 970 can also be used to encode and decode audio signals. In some embodiments, the audio module 970 can be arranged in the processor 910, or some functional modules of the audio module 970 can be arranged in the processor 910.

[0354] The speaker 970A, also called a "speaker", is used to convert an audio electrical signal into a sound signal. The electronic device 900 can listen to music or listen to a hands-free call through the speaker 970A.

[0355] The receiver 970B, also called a "earpiece", is used to convert audio electrical signals into sound signals. When the electronic device 900 receives a call or voice message, the voice can be received by placing the receiver 970B close to the human ear.

[0356] Microphone 970C, also called "microphone" or "microphone", is used to convert sound signals into electrical signals. When making a call or sending a voice message, the user can speak by putting their mouth close to the microphone 970C to input the sound signal into the microphone 970C. The electronic device 900 can be provided with at least one microphone 970C. In other embodiments, the electronic device 900 can be provided with two microphones 970C, which can not only collect sound signals but also realize noise reduction function. In other embodiments, the electronic device 900 can also be provided with three, four or more microphones 970C to collect sound signals, reduce noise, identify the sound source, realize directional recording function, etc.

[0357] The earphone interface 970D is used to connect a wired earphone and can be the USB interface 930 or a 3.5 mm open mobile terminal platform (OMTP) standard interface or a cellular telecommunications industry association of the USA (CTIA) standard interface.

[0358] It should be noted that the information interaction, execution process, etc. between the above-mentioned devices / units are based on the same concept as the method embodiment of the present application. Their specific functions and technical effects can be found in the method embodiment part and will not be repeated here.

[0359] An embodiment of the present application also provides an electronic device, which includes: at least one processor, a memory, and a computer program stored in the memory and executable on the at least one processor, wherein when the processor executes the computer program, the electronic device can implement the steps in any of the above methods.

[0360] An embodiment of the present application further provides a computer-readable storage medium, wherein the computer-readable storage medium stores a computer program, and when the computer program is executed by an electronic device, the steps in the above-mentioned method embodiments can be implemented.

[0361] An embodiment of the present application provides a computer program product, which includes a computer program. When the computer program is executed by an electronic device, the steps in the above-mentioned method embodiments can be implemented.

[0362] If the integrated unit is implemented in the form of a software functional unit and sold or used as an independent product, it can be stored in a computer-readable storage medium. Based on this understanding, the present application implements all or part of the processes in the above-mentioned embodiment method, which can be completed by instructing the relevant hardware through a computer program. The computer program can be stored in a computer-readable storage medium, and the computer program can implement the steps of the above-mentioned various method embodiments when executed by the processor. Among them, the computer program includes computer program code, and the computer program code can be in source code form, object code form, executable file or some intermediate form. The computer-readable medium may at least include: any entity or device that can carry the computer program code to the camera / electronic device, recording medium, computer memory, read-only memory (ROM), random access memory (RAM), electric carrier signal, telecommunication signal and software distribution medium. For example, a USB flash drive, a mobile hard disk, a magnetic disk or an optical disk. In some jurisdictions, according to legislation and patent practice, computer-readable media cannot be electric carrier signals and telecommunication signals.

[0363] In the above embodiments, the description of each embodiment has its own emphasis. For parts that are not described or recorded in detail in a certain embodiment, reference can be made to the relevant descriptions of other embodiments.

[0364] Those of ordinary skill in the art will appreciate that the units 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 to be beyond the scope of this application.

[0365] In the embodiments provided in the present application, it should be understood that the disclosed devices / equipment and methods can be implemented in other ways. For example, the device / equipment embodiments described above are merely schematic, for example, the division of the modules or units is only a logical function division, and there may be other division methods in actual implementation, such as multiple units 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 units, which can be electrical, mechanical or other forms.

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

[0367] It should be understood that when used in the present specification and the appended claims, the term "comprising" indicates the presence of described features, wholes, steps, operations, elements and / or components, but does not exclude the presence or addition of one or more other features, wholes, steps, operations, elements, components and / or combinations thereof.

[0368] It should also be understood that the term “and / or” used in the specification and appended claims refers to any and all possible combinations of one or more of the associated listed items, and includes these combinations.

[0369] As used in the specification and appended claims of this application, the term "if" can be interpreted as "when" or "uponce" or "in response to determining" or "in response to detecting", depending on the context. Similarly, the phrase "if it is determined" or "if [described condition or event] is detected" can be interpreted as meaning "uponce it is determined" or "in response to determining" or "uponce [described condition or event] is detected" or "in response to detecting [described condition or event]", depending on the context.

[0370] In addition, in the description of the present application specification and the appended claims, the terms "first", "second", "third", etc. are only used to distinguish the descriptions and cannot be understood as indicating or implying relative importance.

[0371] References to "one embodiment" or "some embodiments" etc. described in the specification of this application mean that one or more embodiments of the present application include specific features, structures or characteristics described in conjunction with the embodiment. Therefore, the statements "in one embodiment", "in some embodiments", "in some other embodiments", "in some other embodiments", etc. that appear in different places in this specification do not necessarily refer to the same embodiment, but mean "one or more but not all embodiments", unless otherwise specifically emphasized in other ways. The terms "including", "comprising", "having" and their variations all mean "including but not limited to", unless otherwise specifically emphasized in other ways.

[0372] The embodiments described above are only used to illustrate the technical solutions of the present application, rather than to limit them. Although the present application has been described in detail with reference to the aforementioned embodiments, a person skilled in the art should understand that the technical solutions described in the aforementioned embodiments may still be modified, or some of the technical features may be replaced by equivalents. Such modifications or replacements do not deviate the essence of the corresponding technical solutions from the spirit and scope of the technical solutions of the embodiments of the present application, and should all be included in the protection scope of the present application.

Claims

1. A cross-device navigation method, applied to a first device, characterized in that: include: The first device displays a first interface of the first application when running the first application, the first interface includes a first control, and the first control is used to indicate the first address information; In response to a first operation input by a user to the first control, the first device acquires corresponding first address information from the first application; The first device sends address flow information corresponding to the first address information to the second device, so that the second device starts a map application according to the address flow information, the address content of the first address information corresponds to the address content of the address flow information, and the address type of the first address information corresponds to the address type of the address flow information; The first device continues to run the first application.

2. The method according to claim 1, characterized in that The method further comprises: Checking whether the first address information is valid; When the first address information is valid, address flow information corresponding to the first address information is constructed.

3. The method according to claim 2, characterized in that The checking whether the first address information is valid includes at least one of the following: Checking whether the address type in the first address information belongs to a preset type; when the address type in the first address information belongs to the preset type, determining that the first address information is valid; When the address type in the first address information does not belong to the preset type, the first address information is deemed invalid; or, Check whether the address content in the first address information is a valid string; when the address content in the first address information is a valid string, the first address information is deemed valid; when the address content in the first address information is not a valid string, the first address information is deemed invalid; or, Check whether the actual address type of the address content in the first address information is consistent with the address type in the first address information; when the actual address type is consistent with the address type in the first address information, the first address information is deemed valid; When the actual address type is inconsistent with the address type in the first address information, the first address information is deemed invalid.

4. The method according to claim 1, characterized in that The address flow information further includes at least one of the following identification parameters: a unique identifier of the address flow information, a source package name, a target package name or a source device name of the first address information.

5. The method according to claim 1, characterized in that The address type of the first address information is text, point of interest POI or longitude and latitude.

6. The method according to any one of claims 1 to 5, characterized in that The first operation includes: pressing the first control, and moving the first address information indicated by the first control to a corresponding icon of the cross-device navigation.

7. The method according to any one of claims 1 to 5, characterized in that The first device sending address transfer information corresponding to the first address information to the second device includes: Create a message sending task, and wake up the working thread to process the message sending task; The address transfer information is sent during the execution of the message sending task.

8. The method according to claim 7, characterized in that The method further comprises: When it is monitored that the sending status of the message sending task is sending failure, the address flow information is resent.

9. A method for cross-device navigation, applied to a second device, characterized in that: include: Receiving address transfer information from the first device, the address transfer information including address content and address type; Using the address transfer information, constructing target address information, wherein the address type of the target address information corresponds to the address type of the address transfer information, and the address content of the target address information corresponds to the address content of the address transfer information; A map application is started, and according to the address type of the target address information, the address content of the target address information is loaded into the started map application as the destination.

10. The method according to claim 9, characterized in that The step of constructing target address information by using the address flow information includes: Parsing the address flow information; When the address content parsed from the address flow information is a valid character string, the target address information is constructed.

11. The method according to claim 9, characterized in that The step of constructing target address information by using the address flow information includes: Parsing the address flow information; When the source package name parsed from the address flow information is in a preset whitelist, the target address information is constructed, and the source package name is used to indicate the application source corresponding to the address flow information.

12. The method according to any one of claims 9 to 11, characterized in that The target address information also includes a target package name, and the target package name is used to indicate a target map application; Starting a map application, and loading the address content of the target address information as a destination in the started map application according to the address type of the target address information, including: The target map application is started according to the target package name, and the address content of the target address information is loaded as the destination in the started target map application according to the address type of the target address information.

13. The method according to any one of claims 9 to 11, characterized in that Starting a map application, and loading the address content of the target address information as a destination in the started map application according to the address type of the target address information, including: The map application with the highest priority in the second device is started, and according to the address type of the target address information, the address content of the target address information is loaded as the destination in the started map application with the highest priority.

14. The method according to any one of claims 9 to 11, characterized in that Starting a map application, and loading the address content of the target address information as a destination in the started map application according to the address type of the target address information, including: Displaying at least one map application selection control on the interface of the second device; In response to a click operation on a selection control of a first map application among the at least one map application, the first map application is started, and according to the address type of the target address information, the address content of the target address information is loaded as the destination in the started first map application.

15. The method according to any one of claims 9 to 11, characterized in that The method further comprises: A pop-up window is displayed on the interface of the second device, wherein the pop-up window includes the address content in the target address information and at least one of the following: a device source identifier of the address flow information, and a selection control instructing the user to select a display page after the map application is started.

16. A system for cross-device navigation, characterized in that: The system includes a first device and a second device; the first device and the second device are wirelessly connected; the first device is used to execute the steps performed by the first device in the method described in any one of claims 1 to 15; the second device is used to execute the steps performed by the second device in the method described in any one of claims 1 to 15.

17. An electronic device comprising a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein: When the processor executes the computer program, the electronic device implements the method as claimed in any one of claims 1 to 8; or, when the processor executes the computer program, the electronic device implements the method as claimed in any one of claims 9 to 15.

18. A computer-readable storage medium storing a computer program, characterized in that: When the computer program is executed by an electronic device, the method according to any one of claims 1 to 8 is implemented; or, when the computer program is executed by an electronic device, the method according to any one of claims 9 to 15 is implemented.