Map display method and device, equipment, medium and computer program product

By introducing native layer and compatibility layer module structures into the map display unit of the smart watch, and using the device's native rendering library to render map images, the compatibility problems of different operating systems are solved and efficient and low-cost software development is achieved.

CN120451298APending Publication Date: 2025-08-08BEIJING AUTONAVI YUNMAP TECH CO LTD
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
CN202510338646.9
Authority / Receiving Office
CN · China
Patent Type
Applications(China)
Current Assignee / Owner
Filing Date
2025-03-20
Publication Date
2025-08-08

AI Technical Summary

Technical Problem

Smart watches of different operating systems have poor compatibility with rendering resource libraries, resulting in large workloads, low efficiency and high cost of software development.

Method used

The native layer module and compatible layer module structure in the map display unit are adopted. The native layer module generates rendering instructions to call the rendering engine through the entrance layer, and uses the native rendering library of the portable display device to render the map image. The compatible layer module is compatible with different operating systems.

Benefits of technology

It reduces software development workload, improves development efficiency, reduces development costs, and reduces storage space usage and computing resource consumption.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN120451298A_ABST
    Figure CN120451298A_ABST
Patent Text Reader

Abstract

The invention provides a map display method, apparatus and device, a medium and a computer program product, the method is applied to a portable display device, the portable display device comprises a map display unit, and the map display unit comprises a native layer module and a compatible layer module; the compatible layer module comprises an entrance layer and a rendering engine; the method comprises the steps that a native layer module generates a map rendering instruction and sends the map rendering instruction to a rendering engine through an entrance layer; the rendering engine calls a native rendering library of the portable display device to render a map image according to the map rendering instruction; the native layer module receives the map image and draws the map image to a display screen of the portable display device. A rendering library used for rendering the map image is replaced from a rendering library of software to a native rendering library of the portable display device, so that a rendering engine does not need to be redesigned according to an operating system. Therefore, the development workload is reduced, the development efficiency is improved, and the development cost is reduced.
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 maps, and in particular to a map display method, apparatus, device, medium, and computer program product. Background Art

[0002] With the development of technology, portable display devices have gained widespread application. For example, smartwatches can be installed and run application software, allowing users to install and run corresponding applications to meet their needs. In some application scenarios, users need to use smartwatches to view electronic maps, navigate based on the electronic maps, search for points of interest, and so on.

[0003] To meet the above requirements, application software needs to be able to render map images. In related technologies, the rendering resource library used for rendering maps is packaged in the application software installation package. In this way, when the application software is running, the rendering resources in the rendering resource library can be called to render the map image.

[0004] However, the inventors of this application have discovered that different smartwatches may have different operating systems. Different operating systems have different compatibility with rendering resource libraries. Therefore, to improve application compatibility, it is necessary to design different rendering resource libraries for different operating systems. This increases the workload of software development, reduces software development efficiency, and increases development costs. Summary of the Invention

[0005] This application provides a map display method, apparatus, device, medium, and computer program product to reduce software development workload while improving the compatibility of application software with different operating systems. The technical solution is as follows.

[0006] In a first aspect, the present application provides a map display method, which is applied to a portable display device, wherein the portable display device includes a map display unit, the map display unit including a native layer module and a compatibility layer module, the native layer module being a module designed based on the operating system of the portable display device; the compatibility layer module including an entry layer and a rendering engine, the compatibility layer module being compatible with different operating systems; the method comprising:

[0007] The native layer module generates a map rendering instruction and sends the map rendering instruction to the rendering engine through the entry layer;

[0008] The rendering engine calls a native rendering library of the portable display device to render a map image according to the map rendering instruction;

[0009] The native layer module receives the map image and draws the map image on a display screen of the portable display device.

[0010] In a second aspect, the present application provides a map display device, which is applied to a portable display device. The map display device includes a native layer module and a compatibility layer module; the native layer module is a module designed based on the operating system of the portable display device; the compatibility layer module includes an entry layer and a rendering engine, and the compatibility layer module has the ability to be compatible with different operating systems;

[0011] The native layer module is used to generate a map rendering instruction and send the map rendering instruction to the rendering engine through the entry layer;

[0012] The rendering engine is configured to call a native rendering library of the portable display device to render a map image according to the map rendering instruction;

[0013] The native layer module is further configured to receive the map image and draw the map image on the display screen of the portable display device.

[0014] In a third aspect, the present application provides a portable display device, comprising: a processor, the processor being coupled to a memory, the memory storing at least one computer program instruction, the at least one computer program instruction being loaded and executed by the processor so that the portable display device implements a method as described in any one of the first aspects above.

[0015] In a fourth aspect, the present application provides a computer-readable storage medium, wherein the storage medium stores at least one instruction, and when the instruction is executed on a computer, the computer executes the method as described in any one of the aforementioned first aspects.

[0016] In a fifth aspect, the present application provides a computer program product, characterized in that the computer program product includes one or more computer program instructions, which, when loaded and executed by a computer, enable the computer to execute the method as described in any one of the aforementioned first aspects.

[0017] It can be seen that this application has the following beneficial effects:

[0018] The map display method provided in the present application can be applied to the map display unit of a portable display device. The map display unit includes a native layer module and a compatibility layer module. Among them, the compatibility layer module is compatible with different operating systems, including an entry layer and a rendering engine. The native layer module runs on the native layer of the portable display device and is a module based on the operating system device of the portable display device. If the portable display device needs to display a map, the native layer module can generate a map rendering instruction and send the map rendering instruction to the rendering engine through the entry layer of the compatibility layer module. The rendering engine can call the native rendering library of the portable display device to render the map image according to the map rendering instruction to obtain the map image. Then, the native layer module can display the map image through the display screen of the portable display device. It can be seen that in the process of displaying the map image, the rendering resources used to render the map image do not come from the map display unit, but from the native rendering library of the portable display device. Therefore, by calling the native rendering library for rendering, the compatibility problem of the rendering resource library of different operating systems is solved, and there is no need to design adaptive rendering resource libraries for different operating systems. The rendering library used to render the map image is replaced from the rendering library of the software to the native rendering library of the portable display device, so that the rendering engine does not need to be redesigned according to the operating system. In this way, the development workload is reduced, the development efficiency is improved, and the development cost is reduced.

[0019] Moreover, the native layer module and the compatibility layer module in the map display unit are separated, and the native layer module calls the rendering engine in the compatibility layer module for rendering through a unified entry layer. The compatibility layer module can be compatible with different operating systems. That is to say, when designing the map display unit, the functions related to the operating system are integrated into the native layer module, and other functions are integrated into the compatibility layer module. Then, in order to be compatible with different operating systems, it is only necessary to design the native layer module according to the adaptability of different operating systems, and the native layer modules corresponding to different operating systems can use the same compatibility layer module. In this way, the native layer module and the compatibility layer module are decoupled. If it needs to be applied to different operating systems, it is only necessary to design the native layer module according to the operating system. In this way, the development workload is reduced, the development efficiency is improved, and the development cost is reduced. BRIEF DESCRIPTION OF THE DRAWINGS

[0020] Figure 1 A schematic structural diagram of a map display unit provided in an embodiment of the present application;

[0021] Figure 2 Another structural diagram of a map display unit provided in an embodiment of the present application;

[0022] Figure 3 A flowchart of a map display method provided in an embodiment of the present application;

[0023] Figure 4 A schematic structural diagram of a map display device provided in an embodiment of the present application;

[0024] Figure 5 A schematic diagram of the structure of a device provided in an embodiment of the present application. DETAILED DESCRIPTION

[0025] In order to make the objectives, technical solutions and advantages of this application clearer, the implementation methods of this application will be further described in detail below with reference to the accompanying drawings.

[0026] The following is an explanation of some terminology concepts involved in the embodiments of this application.

[0027] (1) Portable display devices.

[0028] A portable display device refers to a portable, intelligent device with a display function. Examples of portable display devices include smartwatches. Users of portable display devices can wear them on their wrists or other parts of the body. Due to portability considerations, portable display devices are smaller than mobile devices such as smartphones and offer more limited resources (including computing and storage resources).

[0029] (2) Operating system.

[0030] The operating system (OS) is the most basic system software in a computing device. The application software running on the portable display device is compatible with the operating system of the portable display device.

[0031] (3) Primary layer.

[0032] The native layer is a software layer tightly integrated with the operating system. Software modules running in the native layer are called native layer modules.

[0033] (4) Rendering library.

[0034] A rendering library is a library specifically designed for graphics and image processing. It provides tools and functions for image rendering. Operating system-provided rendering libraries are called native rendering libraries. Applications can also include their own rendering libraries, which are considered non-native.

[0035] For applications with map display capabilities, such as navigation software, the complex maps they display often require the application's own rendering library for image rendering. Specifically, software developers can design a rendering library based on display requirements and package it into the application. This allows the application to call upon the library to render images and display the map image while the application is running.

[0036] However, different operating systems often have varying compatibility with rendering libraries. A rendering library that works on operating system A might not work on operating system B. This necessitates designing different rendering libraries for different operating systems. This undoubtedly increases software development workload, reduces efficiency, and increases development costs.

[0037] To address this issue, we can use rendering libraries with strong compatibility for image rendering. Specifically, some rendering libraries can be compatible with different operating systems. This allows software installed on different operating systems to use the same rendering library, which, to some extent, solves the problem of having to develop different rendering libraries for different operating systems.

[0038] However, these highly compatible rendering libraries often require significant resources. For one thing, to accommodate diverse operating platforms, these libraries are bulky and require significant storage space. Furthermore, the rendering capabilities they provide are often complex, requiring significant computational resources to render images.

[0039] For application software running on a personal computer (PC) or mobile phone, the resources (including storage resources and computing resources) of the hardware device running the application software are relatively sufficient, which can meet the needs of using the above-mentioned rendering library with strong compatibility. However, for portable display devices such as smart watches, the amount of resources they can provide is small and cannot meet the needs of using the above-mentioned rendering library with strong compatibility, or the needs of using the above-mentioned rendering library with strong compatibility will occupy too many resources, affecting the operation of other application software.

[0040] As can be seen, due to the limited resources of the hardware devices, application software running on portable display devices cannot use rendering libraries compatible with multiple operating systems. Instead, different rendering libraries must be designed for different operating systems. Therefore, to adapt to different operating systems, multiple versions of application software must be developed, resulting in low software development efficiency and high costs.

[0041] In order to solve the above problems, the embodiments of the present application provide a map display method, apparatus, device, medium and computer program product. Among them, the map display method can be applied to a map display unit, and the map display unit can run on a portable display device such as a smart watch. The map display unit includes a native layer module and a compatibility layer module. The native layer module runs on the native layer of the portable display device. The native layer module can call the compatibility layer module during the running process. The compatibility layer module has the ability to be compatible with different operating systems, so the compatibility layer module can be called by the native layer modules of different operating systems. For example, the compatibility layer module can be implemented based on the C++ language, then the compatibility layer module can be compatible with the Android operating system or the iOS operating system, of course, it is not limited to this.

[0042] Specifically, the compatibility layer module includes an entry layer and a rendering engine. The entry layer is used to interact with the native layer module, and the rendering engine is used to call the native rendering library of the portable display device to render the map image. In this way, the native rendering library of the portable display device is used to render the map image, rather than the rendering library of the map display software itself, so there is no need to consider the compatibility between the rendering library and the operating system. Map display units running on different operating systems can use the same compatibility layer module. They only need to design the native layer module for the operating system, which reduces the development workload, improves development efficiency, and reduces development costs.

[0043] Furthermore, since the map display unit does not include a separate rendering library, the memory space occupied by the map display unit is reduced, thereby reducing the storage space requirements of the portable display device. During the map image rendering process, the rendering library used is the native rendering library of the portable display device, which does not consume excessive computing resources of the portable display device.

[0044] The map display unit and map display method provided in the embodiments of the present application are described in detail below with reference to the drawings in the specification.

[0045] First, the map display unit provided in the embodiment of the present application is introduced.

[0046] See also Figure 1 , which is a structural diagram of a map display unit provided in an embodiment of the present application. Figure 1 In the application scenario shown, a map display unit 110 runs in the portable display device 10. The map display unit 110 includes a native layer module 111 and a compatibility layer module 112. The compatibility layer module 112 includes an entry layer 1121 and a rendering engine 1122. Optionally, the portable display device 10 may be a smartwatch.

[0047] Among them, the native layer module 111 runs in the native layer of the portable display device 10 and is used to provide the main logic and functions of the software. The native layer module 111 is used to realize information interaction with the user and can also be called a client module. The native layer module 111 can be written in the programming language corresponding to the operating system. For example, if the operating system is an Android operating system, the native layer module 111 can be written in Java; if the operating system is an iOS operating system, the native layer module 111 can be written in object-oriented C (Objective-C, OC) language.

[0048] During the operation of the native layer module 111, other modules in the compatible layer module 112 can be called through the entry layer 1121 in the compatible layer module 112 to implement corresponding functions. For example, when a map image needs to be displayed to the user, the native layer module 111 can call the rendering engine 1122 in the compatible layer module 112 through the entry layer 1121. According to the call of the native layer module 111, the rendering engine 1122 can render the map image. After completing the rendering of the map image, the native layer module 111 can draw the map image on the display screen of the portable display device 10 to display the rendered map image to the user.

[0049] Specifically, if the user triggers a map display operation on the portable display device 10, the native layer module 111 can generate a map rendering instruction based on the map display operation triggered by the user, and send the map rendering instruction to the rendering engine 1122 through the entry layer 1121. According to the map rendering instruction, the rendering engine 1122 can render a map image. Then, the rendering engine 1122 can return the rendered map image to the native layer module 111 through the entry layer 1121. For example, the address of the map image in the memory (or video memory) can be returned to the native layer module 111 through the entry layer 1121, and the native layer module 111 can display the map image through the display screen of the portable display device 10.

[0050] In the above process, the entry layer 1121 can be used to relay call requests from the native layer module 111. In other words, the entry layer 1121 can convert the call requests from the native layer module 111 into call requests that can be processed by the rendering engine 1122, and send the converted call requests to the rendering engine 1122. For example, if the native layer module 111 and the rendering engine 1122 are implemented based on different programming languages, the entry layer 1121 can convert the call requests from the native layer 111 into call requests that can be understood by the rendering engine 1122 and send them to the rendering engine 1122. In this way, the native layer can call various engines in the compatibility layer module through the entry layer.

[0051] It is understandable that the calling of the positioning engine, travel calculation engine and navigation engine below can also be achieved through similar methods, which will not be repeated here.

[0052] After receiving the map rendering instruction, the rendering engine 1122 can call the rendering library to render the map image. In the embodiment of the present application, on the one hand, to be compatible with different operating systems, and on the other hand, to reduce resource consumption, the map display unit 110 may not include an independent rendering library, but instead use the rendering library provided by the portable display device (e.g., a native rendering library) to render the map image. In other words, the rendering engine 1122 can call the native rendering library of the portable display device 10 to render the map image according to the map rendering instruction.

[0053] Because the rendering engine 1122 uses the native rendering library of the portable display device 10 rather than the rendering library built into the map display unit 110 to render the map image, there is no need to design a different rendering library for each operating system, nor is there a need to use a rendering library compatible with multiple operating systems. Using the native rendering library to render the map image eliminates the need for the rendering library in the map display unit 110, reducing the size of the map display unit 110 and conserving storage resources required by the map display unit 110.

[0054] In addition, the functions related to map image rendering are integrated into the rendering engine 1122 in the compatibility layer module 112, and the information interaction between the rendering engine 1122 and the native layer module 111 is realized through the entry layer 1121, so that the rendering engine 1122 does not need to be developed in the programming language corresponding to the operating platform, but can be written in a programming language that can be called by the native layer module 111. In this way, by using a programming language with strong compatibility such as C++ to develop various parts of the compatibility layer module, a compatibility layer module can be compatible with different native layer modules of different operating systems, so different native layer modules developed for different operating systems can use the same compatibility layer module. In this way, the native layer module and the compatibility layer module are decoupled. If different application software needs to be developed for different operating systems, it is only necessary to design the native layer module according to the operating system, and there is no need to develop different compatibility layer modules for different operating systems. In this way, the development workload is reduced, the development efficiency is improved, and the development cost is reduced.

[0055] It should be noted that the "map image" in the embodiments of this application refers to the image displayed to the user by the map display unit. The map image may include map-related information as well as other information. In fact, any image rendered by the rendering engine according to the map rendering instructions can be called a rendered image. The native layer module can instruct the rendering engine to render different images through map rendering instructions based on actual operating conditions.

[0056] For example, assuming that the map display unit is applied to navigation software, the rendered map image may include the map and navigation-related information on the map. Accordingly, a user using a portable display device can see the map and navigation-related information on the display screen of the portable display device. For another example, assuming that when designing a native layer program, the design idea is to "display a map in a preset graphical user interface (GUI)", the rendered map image includes a preset GUI interface and a map in the GUI interface. Accordingly, a user using a portable display device can see the GUI interface and the map on the display screen of the portable display device.

[0057] In addition to the navigation engine, other engines may also exist in the compatibility layer module. They are used to implement other functions of the map display unit. For example, if the map display 110 runs on navigation software, the compatibility layer module may also include at least one of a positioning engine, a travel calculation engine, and a navigation engine. Figure 2 Provide a detailed introduction.

[0058] See also Figure 2 , which is another structural diagram of the map display unit provided in the embodiment of the present application. Figure 2 In the application scenario shown, a map display unit 210 is installed on the portable display device 20. The map display unit 210 includes a native layer module 211 and a compatible layer module 212. The compatible layer module 212 includes an entry layer 2121 and a rendering engine 2122, as well as a positioning engine 2123, a travel calculation engine 2124, and a navigation engine 2125. Figure 2 The application scenario shown further includes a server 30, which can exchange information with the portable display device 20. Optionally, the portable display device 20 can be a smart watch.

[0059] For the introduction of the native layer module 211, the entry layer 2121 and the rendering engine 2122, please refer to the above and will not be repeated here.

[0060] The positioning engine 2123, travel calculation engine 2124 and navigation engine 2125 are introduced below respectively.

[0061] First, the positioning engine 2123 is introduced.

[0062] The positioning engine 2123 is used to locate the portable display device 20 and obtain the positioning information of the portable display device. Specifically, when it is necessary to determine the position of the portable display device 20, the native layer module 211 can call the positioning engine 2123 through the entry layer 2121 to locate the portable display device and obtain the positioning information of the portable display device.

[0063] Specifically, the native layer module 211 can obtain a positioning display instruction. According to the positioning display instruction, the native layer module 211 can call the positioning engine 2123 through the entry layer 2121 to perform positioning and obtain the positioning information of the portable display device 20. Then, the native layer module 211 can update the map image displayed by the portable display device 20 according to the positioning information. The geographical location of the updated map image matches the geographical location indicated by the positioning information. For example, the geographical location of the center point of the updated map image can coincide with the geographical location indicated by the positioning information.

[0064] For example, the native layer module 211 can generate a rendering instruction associated with the positioning information based on the positioning information and send the new rendering instruction to the rendering engine 2122 through the entry layer 2121. Based on the rendering instruction sent by the native layer module 211, the rendering engine 2122 can render a map image associated with the positioning information and return it to the native layer module 211. The native layer module 211 can draw the new map image to the display screen of the portable display device 20. The geographic location of the new map image matches the positioning information. For example, the geographic location of the center point of the newly rendered map image matches the geographic location indicated by the positioning information.

[0065] The positioning display instruction may be actively triggered by the user or obtained by the native layer module 211. For example, if the map image displayed by the portable display device 20 deviates from the user's location, the user may manually trigger the positioning display instruction to adjust the portable display device 20 to display its own location at the center of the display screen. For another example, the portable display device 20 may also automatically detect the geographic location and generate a positioning display instruction after determining that the location of the portable display device 20 deviates from the center of the map image displayed on the display screen.

[0066] During the positioning process, the positioning engine 2123 may obtain a positioning signal of the portable display device and then perform positioning based on the positioning signal. The positioning signal of the portable display device may be a Global Navigation Satellite System (GNSS) signal, such as a Global Positioning System (GPS) signal.

[0067] Optionally, the map image rendered by the rendering engine 2122 can be determined based on the positioning information. Specifically, the rendering engine 2122 can obtain the positioning information obtained by the positioning engine 2123. Based on the positioning information, the rendering engine 2122 can obtain map data corresponding to the positioning information from the server 30 and render the map image based on the map data. In this way, map information around the portable display device 20 can be displayed to the user. Alternatively, the native layer module 211 can obtain the positioning information, obtain the map data corresponding to the positioning information through the server 30, and then call the rendering engine 2122 to render the map image based on the map data.

[0068] In some possible implementations, the positioning engine 2123 may also include an observer component. The observer component can provide positioning information to other components or modules. Specifically, the native layer module 211, the rendering engine 2122, the travel calculation engine 2124, and the navigation engine 2125 can be registered as observers. After determining the positioning information, the observer component can call back the positioning information to the registered observer, so that other components or modules can obtain the positioning information of the portable display device 20.

[0069] In some possible implementations, the positioning engine 2123 may also include a simulated navigation component. The simulated navigation component is used to provide a simulated navigation function. Based on the simulated navigation operation triggered by the user, the native layer 211 can call the simulated navigation component in the positioning engine 2123 through the entry layer 2121. After the simulated navigation component is called, it can traverse the shape points on the navigation video, obtain the longitude and latitude coordinates on the navigation route by difference at a preset speed and trigger interval, and continuously output the longitude and latitude coordinates as the positioning information of the portable display device 20 to the navigation engine 2124. In this way, the navigation engine 2124 will believe that the portable display device 20 is moving according to the longitude and latitude coordinates output by the simulated navigation component, and thus navigate according to the simulated longitude and latitude coordinates.

[0070] In actual scenarios, the positioning information obtained by the positioning engine 2123 may be inaccurate. In particular, in some scenarios, due to limited resources of the portable display device 20, the positioning engine 2123 may not be able to perform high-precision filtering on the positioning signal, resulting in errors in the obtained positioning information.

[0071] To this end, when using the portable display device 20 for navigation, the positioning information can be corrected based on the navigation route. Specifically, the positioning engine 2123 may include a route matching component. The route matching component can obtain the navigation route from the navigation engine 2125 or the travel calculation engine 2124, and correct the positioning information by matching the navigation route. Specifically, the route matching component can determine the route rectangular box near the portable display device 20 on the map based on the positioning information of the portable display device 20, and then find the most matching position on the navigation video according to the distance to the route and the direction of travel as the corrected positioning information. Among them, the size of the route rectangular box can be preset or adjusted according to the accuracy of the positioning information.

[0072] The travel calculation engine 2124 is introduced below.

[0073] The travel calculation engine 2124 can be used to calculate routes. Specifically, when using the portable display device 20 for navigation, the user can trigger a route calculation operation on the interface displayed by the navigation software. The native layer module 211 can generate a travel calculation instruction based on the route calculation operation and send the route calculation instruction to the travel calculation engine 2124 through the entry layer 2121. After receiving the route calculation instruction, the travel calculation engine 2124 can perform route planning based on the navigation calculation instruction and obtain a navigation route that matches the route calculation instruction.

[0074] Specifically, the travel calculation engine 2124 may send a route planning request to the server 30 through the native network interface of the portable display device 20 .

[0075] Among them, the native network interface of the portable display device 20 refers to the network interface provided by the operating system of the portable display device 20. When sending a route planning request, the travel calculation engine 2124 can first send a request to the native layer module 211. As a transit for interaction between the map display unit 21 and the operating system, the native layer module 211 can convert the request of the travel calculation engine into a route planning request that can be parsed by the operating system of the portable display device 20, and send the route planning request to the operating system of the portable display device 20. The route planning request is sent to the server through the native network interface provided by the operating system. It can be understood that the navigation route from the server can also reach the travel calculation engine 2124 through the native network interface of the portable display device in a similar manner.

[0076] The server 30 can perform route planning based on the route planning request, obtain a navigation route, and return it to the travel calculation engine 2124. The route calculation instruction and route planning request may include relevant information about the navigation route, such as the route's starting point, end point, navigation time, and travel mode. In this way, the travel calculation engine can call on an existing route planning service to perform route planning, thus implementing route planning based on a portable display device.

[0077] After obtaining the navigation route, the travel calculation engine 2124 can decode the navigation route and store it in the navigation route manager. If it is necessary to display the navigation route on the display screen of the portable display device. The travel calculation engine 2124 can send the navigation route to the native layer module. The native layer module can generate a map rendering instruction associated with the navigation route and send it to the rendering engine. According to the map rendering instruction, the rendering engine can render a map image including a visual form of the navigation route. The native layer module can draw the map image to the display screen of the portable display device to achieve the effect of drawing the navigation route on the map image. Optionally, the rendering engine can render the layer corresponding to the navigation route. The display screen superimposes the map layer and the layer corresponding to the navigation route to achieve the display effect of drawing the navigation route on the map image.

[0078] In some possible implementations, the travel calculation engine 2124 can also perform scenario matching. Specifically, the travel calculation engine 2124 can include a scenario matching component. The native layer module 211 can send scenario information to the travel calculation engine 2124 via the entry layer 2121. Scenario information can include, for example, client page information and type information. The scenario matching component can perform scenario matching based on the scenario information to determine the current client's operating scenario, thereby performing adaptive operations based on the client's application scenario.

[0079] For example. The client's operating scenarios may include a map homepage scene, a route planning scene, and a navigation scene. In the map homepage scene, more information about points of interest can be displayed to the user; in the route planning scene, information about the surrounding navigation route can be displayed to the user; in the navigation scene, relevant information about the navigation route that is about to be passed can be displayed to the user. The scene matching component can perform scene matching based on the scene information to determine the current operating scenario. Then, the travel calculation module 2124 can obtain the navigation route based on the operating scenario. In addition, the rendering engine 2122 can call back the operating scenario matched by the scene matching component, and then render the corresponding map image according to the operating scenario. For example, in the map homepage scene, the map image rendered by the rendering engine 2122 may include a GUI texture of the map homepage. In the route planning scene, the rendering engine 2122 can highlight the navigation route on the map image.

[0080] In some possible implementations, the travel calculation engine 2124 may also include a map position adjustment component. The map position adjustment component can be used to adjust the map displayed by the portable display device 20. Specifically, the map position adjustment component can monitor callbacks from the positioning engine to obtain the location information of the portable display device 20. The map position adjustment component can then adjust the map image displayed by the portable display device 20 based on the location information of the portable display device. For example, the map position adjustment component can set the location of the portable display device 20 as the center point of the map image.

[0081] Optionally, the portable display device 20 may monitor whether it is in an operated state. If the portable display device 20 is in an operated state, it indicates that the user of the portable display device 20 may need to view map images of other regions, and the map position adjustment component may not set the location of the portable display device 20 as the center point of the map image. If the portable display device 20 is not in an operated state, the map position adjustment component may set the location of the portable display device 20 as the center point of the map image.

[0082] The navigation engine 2125 is described below.

[0083] The navigation engine 2125 can navigate according to the navigation route. Specifically, a user can trigger a navigation operation for the navigation route on the portable display device 20. Based on the navigation operation triggered by the user, the native layer module 211 can send a navigation instruction to the navigation engine 2125 via the portal layer 2121. After receiving the navigation instruction, the navigation engine 2125 can navigate according to the navigation route.

[0084] During this process, the navigation engine 2125 can send a navigation request to the server via the native network interface of the portable display device 20 according to the navigation instruction, and obtain navigation information returned by the server. The navigation engine 2125 can send the navigation information to the native layer module 211. The native layer module 211 can generate corresponding map rendering instructions based on the navigation information. Rendering the map image according to the map rendering instructions can achieve the display effect of drawing the navigation information on the map image.

[0085] Specifically, during navigation according to the navigation route, the navigation engine 2125 can obtain the positioning information of the portable display device 20 through the positioning engine 2123, obtain the navigation route information through the travel calculation engine 2124, and navigate according to the positioning information and the navigation route information.

[0086] During the navigation process, the position of the portable display device may change. The map image that the portable display device needs to display may need to be changed accordingly. In this way, the native layer module 211 can generate a new map rendering instruction associated with the changed map image. According to the map rendering instruction, the rendering engine 2122 can re-render to obtain the changed map image and draw it to the display screen of the portable display device by the native layer module 211. For example, during the navigation process, the navigation engine 2125 can instruct the positioning engine 2123 to monitor the position change of the portable display device. If it is detected that the position of the portable display device has changed, the navigation engine 2125 determines that the map image that the portable display device needs to display has changed, and the navigation engine 2125 notifies the native layer module 211. The native layer module 211 can generate a new map rendering instruction based on the changed position.

[0087] In some possible implementations, the navigation engine 2125 may include a navigation information component. The navigation information component is used to determine navigation information based on the location information and navigation route information during navigation. Navigation information is navigation-related information, and a user using the portable display device 20 can follow the navigation route according to the navigation information. Optionally, the navigation information may include any one or more of the following: the current road name, the remaining total distance, the remaining distance at an intersection, an intersection turn icon, and an estimated remaining time.

[0088] After the navigation information component determines the navigation information, the rendering engine 2122 can render a map image based on the navigation information. Thus, the rendered map image includes not only map-related information but also navigation information. A user of the portable display device 20 can view the navigation information to understand their current location and how to proceed according to the navigation route.

[0089] In some possible implementations, the navigation route 2125 may include a route parsing component. The route parsing component may parse the navigation route obtained by the travel calculation engine 2124 to obtain route data for the navigation route. The route data is used to indicate specific information about a particular section of the navigation route. Optionally, the route data may be tree-structured. From the root node to the leaf nodes, the route data may include three layers, corresponding to the route, navigation segment, and road unit, respectively. Information in the route data, such as route length, action type, and total remaining distance, may be used to generate navigation information.

[0090] In some possible implementations, the navigation engine 2125 may also include a voice broadcast component. The voice broadcast component can be used to broadcast navigation-related information via voice broadcast. Specifically, the voice broadcast component can be implemented based on text-to-speech (TTS) technology. For example, the voice broadcast component can obtain navigation information and play the navigation information via voice broadcast.

[0091] Alternatively, the voice announcement component may be triggered based on the positioning information. Specifically, the navigation engine 2125 may determine whether a voice announcement is necessary based on the positioning information. For example, if the navigation engine 2125 determines that the distance between the portable display device 20 and a certain intersection is less than a preset distance, the voice announcement component may be controlled to perform a voice announcement.

[0092] The map display unit provided in the embodiment of the present application is introduced above. Figure 3 , introduces the map display method applied to the map display unit provided in an embodiment of the present application.

[0093] See also Figure 3 , which is a flow chart of a map display method provided in an embodiment of the present application. The method can be applied to a map display unit of a portable display device. Optionally, the portable display device can be a smart watch. Specifically, Figure 3 The map display method shown specifically includes the following steps.

[0094] S301: The native layer module generates a map rendering instruction and sends the map rendering instruction to the rendering engine through the entry layer.

[0095] If the map display unit needs to display a map image to the user, the native layer module can first generate map rendering instructions and send them to the rendering engine through the entry layer in the compatible layer module. For example, if the map display unit runs on navigation software, then after receiving the user's operation to launch the navigation software, the native layer module enters the running state and generates and sends map rendering instructions to the rendering engine.

[0096] In an embodiment of the present application, the native layer module runs in the native layer of the portable display device and is closely related to the operating system of the portable display device. Therefore, the native layer module is developed in the programming language corresponding to the operating system of the portable display device. However, the various engines in the compatibility layer module do not run in the native layer of the portable display device, but are called by the native layer module running in the native layer of the portable display device through the entry layer. Therefore, the various engines in the compatibility layer module may not be developed in the programming language corresponding to the operating system of the portable display device. In this way, a programming language compatible with multiple operating systems, such as C++, can be used to develop the various engines or components in the compatibility layer module. In this way, although the various engines in the compatibility layer module cannot be directly applied in the native layer, the native layer module can call the engine in the compatibility layer module to implement the corresponding functions. In this way, for portable display devices with different operating systems, it is only necessary to design the native layer module according to each operating system, and there is no need to design the compatibility layer module for each operating system. In this way, map navigation devices with different operating systems can use the same compatibility layer module, which reduces development workload, improves development efficiency, and reduces development costs.

[0097] Optionally, after the map display unit is started, the native layer module can perform initialization operations on each engine in the compatible layer module. Specifically, the native layer module can set the initialization parameters of each engine (including the rendering engine) in the compatible layer module. For the rendering engine, the native layer module can also provide rendering objects for the rendering engine. Among them, the rendering object refers to the object used in the image rendering process, including the native rendering library of the aforementioned portable display device. Optionally, the native layer module can send a pointer to the native rendering library to the rendering engine after the map display unit is started. Accordingly, when rendering a map image, the rendering engine can call the native rendering library from the memory of the portable display device for image rendering through the pointer to the native rendering library.

[0098] Optionally, in application scenarios requiring network access, the native layer module can also provide network objects for engines such as the travel computing engine that require network services. Network objects refer to objects used in network services, including interfaces for invoking the network functions of the portable display device. Accordingly, if the travel computing engine needs to determine a navigation route through a server, the travel computing engine can use the network functions of the portable display device through the network object to send a route planning request to the server.

[0099] S302: The rendering engine calls the native rendering library of the portable display device to render the map image according to the map rendering instruction.

[0100] After receiving the map rendering instruction, the rendering engine can call the native rendering library of the portable display device to render the map image. Specifically, the rendering engine can obtain a pointer to the native rendering library during initialization, so the rendering engine can call the native rendering library to perform image rendering according to the pointer to the native rendering library.

[0101] Optionally, the rendering engine may include a rendering thread and at least one map view component. The rendering thread is used for image rendering, and the map view component can be used to manage different map images. The map images managed by the map view component can also be called map views. In other words, each map view component can be used to render a map image.

[0102] When the view parameters of the map view corresponding to a certain map view component change, the map view component can call the rendering thread to re-render the map image. The view parameters of the map view can be used to describe the visual form of the map view. Specifically, after determining that the view parameters of the map view have changed, the map view component can generate rendering information and send the rendering information to the rendering thread, so that the rendering thread calls the native rendering library of the portable display device to render a new map image according to the rendering information. The rendering information is used to indicate the changes in the view parameters. In this way, by describing the visual form of the map view through the view parameters, changes in the visual form of the map view can be discovered in a timely manner, thereby rendering a new map view in a timely manner.

[0103] The view parameters of a map view component may include, for example, rotation parameters, scale parameters, and overlay parameters of the map view corresponding to the map view component. These parameters are used to describe the visual form of the map view. If the view parameters of a map view component change, it indicates that the visual form of the map view corresponding to the map view component has changed, and a new map image needs to be rendered.

[0104] Optionally, each map view may include at least one layer, and different layers may be used to display different information. That is, the map view corresponding to the map view component may be composed of one or more layers. Among them, at least one layer may include a map layer and a navigation route layer. The map layer may be used to display map-related information. The navigation route layer may be used to display information related to navigation recordings. Optionally, the map layer may be displayed in the form of a tile map. The map layer may be obtained by splicing multiple tile maps. The layer obtained by splicing tile maps may be called a tile layer. A map view component may manage one or more tile layers.

[0105] As described above, a rendering engine may include multiple map view components. Optionally, the view parameters of multiple map view components can be managed by a unified component. This component for managing the view parameters of multiple map view components can be called a map view state management component. In other words, assuming that the rendering engine includes N map view components (N is a positive integer), then the map view state component can manage N sets of view state information.

[0106] Specifically, the map view state management component can manage the view parameters of multiple map view components. A map view component can monitor its own view parameters in the map view state management component. If its own view parameters change, the map view component can generate rendering information and call the rendering thread based on the rendering information to render a new map view.

[0107] Accordingly, the map rendering instructions sent by the aforementioned native layer module can be used to modify the view parameters of the map view component. For example, if the user triggers a zoom operation on the portable display device, the native layer module can modify the view parameters of the map view component corresponding to the view currently displayed on the portable display device through the map rendering instructions, specifically modifying the scale parameters in the view parameters of the map view component. After detecting that the view parameters have changed, the map view component can render the map image according to the new scale parameters through the rendering thread and display it through the portable display device, so that the user can see the effect of zooming in and out of the map scale.

[0108] That is, if the user wants to adjust the map image displayed on the portable display device, the user can trigger an operation on the display screen of the portable display device. Based on the operation triggered by the user, the native layer module can generate a map rendering instruction and send the map rendering instruction to the rendering engine through the entry layer. Based on the map rendering instruction, the rendering engine adjusts the view parameters of the corresponding map view. After detecting changes in its own view parameters, the map view component can generate rendering information and send it to the rendering thread, so that the rendering thread renders a new map image according to the rendering information.

[0109] S303: The native layer module receives the map image and draws the map image on the display screen of the portable display device.

[0110] After the map image is rendered, the native layer module can receive the rendered map image and draw it to the display screen of the portable display device, so that the map image can be displayed on the display screen of the portable display device. Optionally, after the map image is rendered, the rendering engine can return a pointer to the map image to the native layer module via the entry layer. The rendering engine can retrieve the map image from memory based on the pointer, decode the map image, and draw it to the display screen.

[0111] exist Figure 3 In the process of displaying the map image shown, the rendering resources used to render the map image are not provided by the map display unit itself, but by the native rendering library of the portable display device. Therefore, by calling the native rendering library for rendering, the compatibility problem of rendering resource libraries of different operating systems is solved, and there is no need to design adaptive rendering resource libraries for different operating systems. The rendering library used to render the map image is replaced from the rendering library of the software to the native rendering library of the portable display device, so that the rendering engine does not need to be redesigned according to the operating system. In this way, the development workload is reduced, the development efficiency is improved, and the development cost is reduced.

[0112] Moreover, the native layer module and the compatibility layer module in the map display unit are separated, and the native layer module calls the rendering engine in the compatibility layer module for rendering through a unified entry layer. The compatibility layer module can be compatible with different operating systems. That is to say, when designing the map display unit, the functions related to the operating system are integrated into the native layer module, and other functions are integrated into the compatibility layer module. Then, in order to be compatible with different operating systems, it is only necessary to design the native layer module according to the adaptability of different operating systems, and the native layer modules corresponding to different operating systems can use the same compatibility layer module. In this way, the native layer module and the compatibility layer module are decoupled. If it needs to be applied to different operating systems, it is only necessary to design the native layer module according to the operating system. In this way, the development workload is reduced, the development efficiency is improved, and the development cost is reduced.

[0113] Based on the above method embodiment, the present application embodiment also provides a map display device. Figure 4 , Figure 4 A schematic diagram of a map display device provided in an embodiment of the present application.

[0114] exist Figure 4 In the illustrated implementation, the map display device 400 includes a native layer module 410 and a compatibility layer module 420; the native layer module is a module designed based on the operating system of the portable display device; the compatibility layer module includes an entry layer 421 and a rendering engine 422, and the compatibility layer module has the ability to be compatible with different operating systems;

[0115] The native layer module 420 is used to generate a map rendering instruction and send the map rendering instruction to the rendering engine 422 through the entry layer 421;

[0116] The rendering engine 422 is configured to call a native rendering library of the portable display device to render a map image according to the map rendering instruction;

[0117] The native layer module 410 is further configured to receive the map image and draw the map image on the display screen of the portable display device.

[0118] In some possible implementations, the rendering engine 422 includes a rendering thread and at least one map view component; the map view component is used to send rendering information to the rendering thread after determining that the view parameters of the corresponding map view have changed, and the rendering information is used to indicate the changes in the view parameters; the rendering thread is used to call the native rendering library of the portable display device to perform image rendering according to the rendering information sent by the map view component.

[0119] In some possible implementations, the rendering engine 422 also includes a map view state management component, and the map view state management component 422 is used to manage the view parameters of the map view corresponding to each of the map view components; the native layer module 410 is specifically used to adjust the view parameters of the map view components managed by the map view state management component through the entry layer 410 in response to user-triggered operations; the map view component is also used to monitor the map view state management component to determine whether the view parameters of the map view corresponding to the map view component have changed.

[0120] In some possible implementations, the compatibility layer module 420 also includes a positioning engine; the native layer module 410 is specifically used to respond to a positioning display instruction, call the positioning engine through the entry layer for positioning, and obtain the positioning information of the portable display device; generate the map rendering instruction associated with the positioning information, so as to render the map image centered on the positioning information.

[0121] In some possible implementations, the compatibility layer module 420 also includes a travel calculation engine; the native layer module 410 is also used to send route calculation instructions to the travel calculation engine through the entry layer 421; the travel calculation engine is used to send a route planning request to the server through the native network interface of the portable display device according to the route calculation instruction, and obtain the navigation route returned by the server; send the navigation route to the native layer module 410; the native layer module 410 is specifically used to generate the map rendering instruction associated with the navigation route to draw the navigation route on the map image.

[0122] In some possible implementations, the compatibility layer module 420 also includes a navigation engine; the native layer module 410 is specifically used to send navigation instructions to the navigation engine through the entry layer 421; the navigation engine is used to respond to the navigation instructions, send a navigation request to the server through the native network interface of the portable display device, and obtain the navigation information returned by the server, and send the navigation information to the native layer module 410; the native layer module 410 is specifically used to generate a map rendering instruction associated with the navigation information to draw the navigation information on the map image.

[0123] Based on the above method embodiment and apparatus embodiment, the present application also provides a portable display device, which will be described below with reference to the accompanying drawings.

[0124] See also Figure 5 , Figure 5 This is a schematic diagram of a portable display device provided in an embodiment of the present application. The portable display device 500 includes: a processor 501 , a memory 502 , and a bus 503 .

[0125] The processor 501 and the memory 502 communicate with each other via the bus 503 .

[0126] The processor 501 is configured to call program instructions in the memory 502 so as to implement the map display method described in any of the aforementioned embodiments in the portable display device 500 .

[0127] The present application also provides a computer-readable storage medium, wherein the storage medium stores at least one instruction. When the instruction is executed on a computer, the computer executes the method described in any of the aforementioned embodiments.

[0128] The present application also provides a computer program product, characterized in that the computer program product includes one or more computer program instructions, and when the computer program instructions are loaded and executed by a computer, the computer is caused to execute the method as described in any of the aforementioned embodiments.

[0129] The various embodiments in this specification are described in a progressive manner. The same or similar parts between the various embodiments can be referenced to each other, and each embodiment focuses on the differences from other embodiments.

[0130] A refers to B, which means that A is the same as B or A is a simple variant of B.

[0131] The terms "first" and "second" and the like in the description and claims of the embodiments of the present application are used to distinguish different objects, rather than to describe a specific order of objects, and cannot be understood as indicating or implying relative importance.

[0132] The information (including but not limited to user device information, user personal information, etc.), data (including but not limited to data used for analysis, stored data, displayed data, etc.), and signals involved in the embodiments of this application are all authorized by the user or fully authorized by all parties, and the collection, use, and processing of relevant data must comply with the relevant laws, regulations, and standards of the relevant countries and regions. For example, the road information involved in this application was obtained with full authorization.

[0133] In the embodiments of the present application, unless otherwise specified, “at least one” means one or more, and “a plurality of” means two or more.

[0134] The above embodiments can be implemented in whole or in part by software, hardware, firmware or any combination thereof. When implemented using software, it can be implemented in whole or in part in the form of a computer program product. The computer program product includes one or more computer instructions. When the computer program instructions are loaded and executed on a computer, the process or function described in accordance with the embodiment of the present application is generated in whole or in part. The computer can be a general-purpose computer, a special-purpose computer, a computer network, or other programmable device. The computer instructions can be stored in a computer-readable storage medium or transmitted from one computer-readable storage medium to another computer-readable storage medium. For example, the computer instructions can be transmitted from a website, computer, server or data center to another website, computer, server or data center via a wired (e.g., coaxial cable, optical fiber, digital subscriber line (DSL)) or wireless (e.g., infrared, wireless, microwave, etc.) method. The computer-readable storage medium can be any available medium that a computer can access or a data storage device such as a server or data center that includes one or more available media integrations. The available medium can be a magnetic medium (e.g., a floppy disk, a hard disk, a tape), an optical medium (e.g., a DVD), or a semiconductor medium (e.g., a solid-state drive (SSD)).

[0135] The above embodiments 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, those skilled in the art should understand that they can still modify the technical solutions described in the aforementioned embodiments, or make equivalent replacements for some of the technical features therein. However, these modifications or replacements do not cause the essence of the corresponding technical solutions to deviate from the scope of the technical solutions of the embodiments of the present application.

Claims

1. A map display method, characterized in that: The method is applied to a portable display device, wherein the portable display device includes a map display unit, wherein the map display unit includes a native layer module and a compatible layer module, wherein the native layer module is a module designed based on an operating system of the portable display device; The compatibility layer module includes an entry layer and a rendering engine, and the compatibility layer module has the ability to be compatible with different operating systems; the method includes: The native layer module generates a map rendering instruction and sends the map rendering instruction to the rendering engine through the entry layer; The rendering engine calls a native rendering library of the portable display device to render a map image according to the map rendering instruction; The native layer module receives the map image and draws the map image on a display screen of the portable display device.

2. The method according to claim 1, characterized in that The rendering engine includes a rendering thread and at least one map view component; The rendering engine calling the native rendering library of the portable display device to render the map image according to the map rendering instruction includes: After determining that the view parameters of the corresponding map view have changed, the map view component sends rendering information to the rendering thread, where the rendering information is used to indicate the change in the view parameters; The rendering thread calls a native rendering library of the portable display device to perform image rendering according to the rendering information sent by the map view component.

3. The method according to claim 2, characterized in that The rendering engine further includes a map view state management component, wherein the map view state management component is configured to manage view parameters of the map view corresponding to each map view component; Before the map view component sends rendering information to the rendering thread, the method further includes: The native layer module adjusts the view parameters of the map view component managed by the map view state management component through the entry layer in response to an operation triggered by a user; The map view component monitors the map view state management component to determine whether a view parameter of the map view corresponding to the map view component has changed.

4. The method according to claim 1, wherein The compatibility layer module also includes a positioning engine; The native layer module generates a map rendering instruction including: In response to the positioning display instruction, the native layer module calls the positioning engine through the entry layer to perform positioning and obtain the positioning information of the portable display device; The native layer module generates the map rendering instruction associated with the positioning information to render the map image centered on the positioning information.

5. The method according to claim 1, characterized in that The compatibility layer module also includes a travel calculation engine; The native layer module generates a map rendering instruction including: The native layer module sends a route calculation instruction to the travel calculation engine through the entry layer; The travel calculation engine sends a route planning request to a server through a native network interface of the portable display device according to the route calculation instruction, and obtains a navigation route returned by the server; The travel calculation engine sends the navigation route to the native layer module; The native layer module generates the map rendering instruction associated with the navigation route to draw the navigation route on the map image.

6. The method according to claim 5, characterized in that The compatibility layer module also includes a navigation engine; After the native layer module generates the map rendering instruction associated with the navigation route, the method further includes: The native layer module sends a navigation instruction to the navigation engine through the entry layer; The navigation engine sends a navigation request to a server through a native network interface of the portable display device according to the navigation instruction, and obtains navigation information returned by the server; The navigation engine sends the navigation information to the native layer module; The native layer module generates a map rendering instruction associated with the navigation information to draw the navigation information on the map image.

7. A map display device, characterized in that: The device is applied to a portable display device, and the map display device includes a native layer module and a compatibility layer module; the native layer module is a module designed based on the operating system of the portable display device; the compatibility layer module includes an entry layer and a rendering engine, and the compatibility layer module has the ability to be compatible with different operating systems; The native layer module is used to generate a map rendering instruction and send the map rendering instruction to the rendering engine through the entry layer; The rendering engine is configured to call a native rendering library of the portable display device to render a map image according to the map rendering instruction; The native layer module is further configured to receive the map image and draw the map image on the display screen of the portable display device.

8. A portable display device, characterized in that: The portable display device includes a processor coupled to a memory, wherein the memory stores at least one computer program instruction, and the at least one computer program instruction is loaded and executed by the processor to enable the portable display device to implement the method according to any one of claims 1 to 6.

9. A computer-readable storage medium, characterized in that The storage medium stores at least one instruction, and when the instruction is executed on a computer, the computer executes the method according to any one of claims 1 to 6.

10. A computer program product, characterized in that The computer program product comprises one or more computer program instructions, and when the computer program instructions are loaded and executed by a computer, the computer is caused to perform the method according to any one of claims 1 to 6.