WO2022188713A1 - 一种页面特征的保存方法、页面跳转方法和装置 - Google Patents

一种页面特征的保存方法、页面跳转方法和装置 Download PDF

Info

Publication number
WO2022188713A1
WO2022188713A1 PCT/CN2022/079325 CN2022079325W WO2022188713A1 WO 2022188713 A1 WO2022188713 A1 WO 2022188713A1 CN 2022079325 W CN2022079325 W CN 2022079325W WO 2022188713 A1 WO2022188713 A1 WO 2022188713A1
Authority
WO
WIPO (PCT)
Prior art keywords
page
view
name
feature
stored
Prior art date
Application number
PCT/CN2022/079325
Other languages
English (en)
French (fr)
Inventor
王少伟
张腾
燕瑞
王烨东
郁东健
朱希迅
李艳明
Original Assignee
华为技术有限公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 华为技术有限公司 filed Critical 华为技术有限公司
Publication of WO2022188713A1 publication Critical patent/WO2022188713A1/zh

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/451Execution arrangements for user interfaces
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/44Arrangements for executing specific programs
    • G06F9/448Execution paradigms, e.g. implementations of programming paradigms
    • G06F9/4482Procedural
    • G06F9/4484Executing subprograms
    • G06F9/4486Formation of subprogram jump address

Definitions

  • the present application relates to the field of terminals, and in particular, to a method for saving page features, a method and device for page jumping.
  • a user operation performed by a user on an online shopping APP For example, a user checks the products "to be received" on the "Huawei Mall” APP in a Huawei mobile phone. Specifically, when the HUAWEI Mate 40 mobile phone browses the product details page after launching the "Huawei Mall", when it receives the voice command of "View pending delivery” issued by the user, execute it according to the pre-configured program.
  • step 1 the APP will First click “Return” and exit "Huawei Mall”; Step 2, open the “Huawei Mall” APP, enter the main page of the APP; Step 3, click “My” in the main page; Step 4, enter “ On the My” page, click "Pending Receipt", step 5, check the order to be received in the "Pending Receipt” display page.
  • the present application provides a method, method and device for saving page features, which are used to realize automatic jumping between cross-page or cross-application APPs, and perform cross-page or cross-application operation intentions according to user operation habits, without requiring The default position starts execution and restarts the APP, no configuration file is required, and the user experience is improved.
  • the following technical solutions are disclosed:
  • the present application provides a method for saving page features, the method can be applied to a terminal device, and the method includes: receiving a user's first operation on a first page of a display screen, and responding to the The first operation displays a second page on the display screen, the second page is different from the first page, and the first mapping relationship is saved.
  • the first mapping relationship includes: a page feature of the first page, a page feature of the second page, and an operation feature of the first operation, and the page feature of the first page, the operation feature of the first operation After the feature is bound, it has a mapping relationship with the page feature of the second page.
  • the first operation includes, but is not limited to, clicking, sliding, tapping, dragging, etc., and the operation feature of the first operation is the extracted data or information related to the user's operations such as clicking, sliding, tapping, and dragging.
  • the method provided in this embodiment extracts features from different pages generated before and after the user's operation, and labels them to learn and store the user's operating habits, that is, to establish the page features of a page and the operation features of the user's operation.
  • a mapping relationship is established with the destination page (the page to be jumped), so that when the operation is performed again, the intent can be executed according to the user's operating habits, and can be executed on any page according to the user's operating habits
  • For cross-page intent there is no need to restart the APP, no configuration file, and no three-party cooperation, which improves the page jump efficiency and user experience.
  • the first page is different from the second page, including:
  • the name of the first view of the first page is different from the name of the second view of the second page
  • the name of the first view and the name of the second view are the same
  • the directories of the name of the first view and the name of the second view both include at least one tab page
  • the names of the first view name directory The first tab page is not the same as the second tab page in the second view name directory.
  • the first tab page is one of multiple tab pages in the first view name directory
  • the second tab page is one of multiple tab pages in the second view name directory.
  • the second tab page is a page displayed after the user performs the first operation
  • the first tab page is an interface displayed before the user performs the first operation.
  • the name of the first view is the name of the first activity
  • the name of the second view is the name of the second activity.
  • the first tab page is a first tab page
  • the second tab page is a second tab page.
  • the first page is different from the second page, and further includes:
  • the name of the first view and the name of the second view are the same, and at least one of the directories of the name of the first view and the name of the second view does not contain a tab page, obtain the first page and the view tree of the second page, compare the similarity between the view tree of the first page and the view tree of the second page; if the similarity does not exceed a threshold, determine the first page and the view tree of the second page.
  • the second page is different.
  • the method before saving the first mapping relationship, the method further includes: searching whether the first page and the second page are locally stored. Wherein, finding whether to store the first page includes:
  • the first view name and the first page identifier corresponding to the first page have been marked and generated during page design, and the first page identifier is used for Uniquely identifies the first page. Find out whether there is a page matching both the first view name and the first page identifier in the database; if not, establish the storage of the first view name, and store the first view name in the first view name.
  • the first page is stored in storage.
  • the matching page refers to that the storage of the first view name is stored in the database, and the storage of the first view name includes the first page identifier.
  • it also includes: if yes, that is, the database has already stored the above-mentioned matching pages, then determining that the page matching the first view name and the first page identifier is the source page.
  • finding whether to store the first page includes: acquiring the second view name and the second page identifier corresponding to the second page, and in the Find out whether there is a page matching the second view name and the second page identifier stored in the database, that is, determine whether the second view name is stored in the database, and the second view name is stored in the database. Whether the second page identifier is included in the storage of the second view; if not, the storage of the second view name is established, and the second page is saved in the storage of the second view name.
  • the method further includes: if a page matching both the second view name and the second page identifier is found in the database, determining The page that matches both the second view name and the second page identifier is the destination page,
  • it also includes: if the operation characteristics from the source page to the destination page are stored, and M operation characteristics are stored in the database, further judging whether the M operation characteristics include the first An operation characteristic of an operation, if the operation characteristic of the first operation is not included in the M operation characteristics, the operation characteristic of the first operation is stored, M ⁇ 1 and M is a positive integer.
  • the operation characteristic of the first operation is included, it is not stored, indicating that the operation characteristic of the first operation has been stored in advance.
  • the present application also provides a page jumping method, which can be applied to a terminal device.
  • the method includes: when receiving a first voice instruction issued by a user, obtaining a third voice command displayed on the display screen. page; determine a fourth page according to the first voice command, where the fourth page is a destination page that responds to the first voice command and provides services for the user; finds the third page and the fourth page Whether a jump path is stored between pages, and if so, jump from the third page to the fourth page according to the jump path.
  • the jump path includes N mapping relationships for jumping from the third page to the fourth page, and each of the N mapping relationships includes: the page feature of the current page, the The page feature of the next page of the current page and the operation feature of the operation from the current page to the next page, and the page feature of the current page and the operation feature are bound to the page of the next page Features have a mapping relationship, N ⁇ 1 and N is a positive integer.
  • the mapping relationship includes: the page feature of the third page, the operation of the second operation characteristics and page characteristics of the fourth page.
  • the second operation is an operation for the user to enter the fourth page from the third page.
  • the second operation includes, but is not limited to, clicking, sliding, tapping, dragging, and the like.
  • This method can automatically learn the user's habit of operating the APP, thereby constructing a page jump map.
  • each page of the APP is labeled, and you only need to query the label when using it.
  • searching whether a jump path is stored between the third page and the fourth page includes: searching for whether a jump path is stored according to a graph traversal method the jump path. Further, the search is performed through the depth-first traversal of graph theory, and the maximum depth is set to take into account the efficiency.
  • the method further includes: if the search does not store the jump path, sending out the indication information that the jump fails or cannot be jumped, because in advance The operation of the user jumping from the third page to the fourth page is not learned, that is, the mapping relationship between the third page and the fourth page is not established.
  • the present application also provides a device for saving page features, including: a page monitoring module for receiving a user's first operation on a first page of a display screen; a page jump updating module, in response to the The first operation displays a second page on the display screen, and the second page is different from the first page; the storage unit is used for saving a first mapping relationship, and the first mapping relationship includes: The page feature, the page feature of the second page, and the operation feature of the first operation, and the page feature of the first page and the operation feature of the first operation are bound to the page feature of the second page. Mapping relations.
  • a page comparison module is further included, and the page comparison module is configured to compare whether the first page and the second page are the same.
  • first page and the second page are different, including:
  • the name of the first view of the first page is different from the name of the second view of the second page
  • the name of the first view and the name of the second view are the same, the directories of the name of the first view and the name of the second view both contain tab pages, and the first view name under the directory of the first view name contains tab pages.
  • the tab page is different from the second tab page in the second view name directory, and the second tab page is the page after the first operation is performed.
  • the page comparison module is further configured to have the same name of the first view and the second view, and the first view has the same name If at least one of the directories of the name and the second view name does not contain a tab page, obtain the view tree of the first page and the second page, and compare the view tree of the first page with the view tree of the second page. the similarity of the view tree of the second page; and when the similarity does not exceed a threshold, determining that the first page and the second page are different.
  • the similarity may be represented by resolution.
  • a component query module is further included, and the component query module is configured to obtain the first view name and the first page corresponding to the first page ID, look up in the database whether there is a page that matches both the first view name and the first page ID; if not, establish the storage of the first view name; the storage unit, also use and storing the first page in the storage of the first view name and in the storage of the first view name.
  • the component query module is further configured to search in the database to find a database that stores information related to the first view name and the first page In the case of identifying all matching pages, it is determined that the matching pages are the source pages.
  • the component query module is further configured to search in the database to find a database that is stored with both the second view name and the second page identifier. In the case of a matching page, determine that the matching page is a destination page, and search the database to find out whether the operation characteristics from the source page to the destination page are stored; the storage unit is also used for In the case where the operational characteristic is not stored, the operational characteristic of the first operation is stored.
  • the component query module is further configured to determine the M operation characteristics in the case that the M operation characteristics are stored in the database Whether the operation characteristic of the first operation is included in the M ⁇ 1 and M is a positive integer; the storage unit is further configured to store the operation characteristic of the first operation when the component query module determines that the operation characteristic of the first operation is not included. Describe the operational characteristics of the first operation.
  • the present application further provides a page jumping device, the device comprising: a page monitoring module, configured to acquire a third page displayed on the display screen when receiving the first voice instruction issued by the user, and, A fourth page is determined according to the first voice command, where the fourth page is a destination page that responds to the first voice command and provides services for the user; a path query module is configured to search for the third page and Whether a jump path is stored between the fourth pages, and the jump path includes N mapping relationships for jumping from the third page to the fourth page, if so, according to the jump path Jump from the third page to the fourth page.
  • a page monitoring module configured to acquire a third page displayed on the display screen when receiving the first voice instruction issued by the user, and, A fourth page is determined according to the first voice command, where the fourth page is a destination page that responds to the first voice command and provides services for the user
  • a path query module is configured to search for the third page and Whether a jump path is stored between the fourth pages, and the jump path includes N mapping relationships for jumping
  • each of the N mapping relationships includes: the page feature of the current page, the page feature of the next page of the current page, and the operation feature of the operation from the current page to the next page, And the page feature of the current page and the operation feature have a mapping relationship with the page feature of the next page after binding, where N ⁇ 1 and N is a positive integer.
  • the present application also provides a terminal device, the terminal device includes at least one processor and a memory, wherein the memory is used to store computer program instructions and/or data; the at least one processor is used for storing The instructions are executed to implement the aforementioned methods in the first aspect and various implementations of the first aspect, and the methods in the second aspect and various implementations of the second aspect.
  • the terminal device further includes an interface circuit configured to provide instructions and/or data for the at least one processor.
  • the at least one processor and the processor may be integrated in one processing chip or chip circuit.
  • the terminal device includes but is not limited to a mobile phone, a PC, and a tablet computer.
  • the present application further provides a computer-readable storage medium, in which instructions are stored, so that when the instructions are executed on a computer or a processor, they can be used to execute the foregoing first aspect and each of the first aspects.
  • the present application also provides a computer program product, the computer program product includes computer instructions, when the instructions are executed by a computer or a processor, the aforementioned first aspect and the method in various implementation manners of the first aspect can be implemented, And, the aforementioned second aspect and methods in various implementations of the second aspect.
  • beneficial effects corresponding to the technical solutions of the various implementation manners of the second aspect to the sixth aspect are the same as the beneficial effects of the foregoing first aspect and various implementation manners of the first aspect.
  • beneficial effects please refer to the foregoing first aspect. Aspects and descriptions of beneficial effects in various implementation manners of the first aspect will not be repeated.
  • Fig. 1 is a kind of page jump flow chart in response to the voice command issued by the user provided by this application;
  • FIG. 2 is a schematic structural diagram of a terminal device provided by the present application.
  • FIG. 3 is a structural block diagram of a terminal device provided by the application.
  • Fig. 5 is a kind of flow chart of judging whether two pages are identical provided by this application.
  • FIG. 6a is a schematic diagram of the same activity provided by this application.
  • Fig. 6b is a kind of WeChat provided by this application
  • Figure 6c provides a kind of Taobao for this application A schematic diagram of the product details page of the page;
  • 7a is a schematic structural diagram of a view tree in a kind of Android system provided by the application.
  • 7b is a schematic diagram of jumping from a chat page to an address book page provided by the application.
  • Fig. 8a is a kind of schematic diagram of storing the label of different pages, jump operation relation provided by this application;
  • Fig. 8b is a kind of data from Huawei Mall provided for this application The operation flow chart of returning the product details page to the main page;
  • 8c is a schematic diagram of learning and storing the mapping relationship between two pages provided by the application.
  • FIG. 8d is a schematic diagram of learning and storing the mapping relationship of the page jump process shown in FIG. 1 provided by the application;
  • 9a is a schematic diagram of a user jumping from a third page to a fourth page provided by the present application.
  • 9b is a schematic diagram of a page mapping relationship for storing a user operation newly added by a user provided by the application;
  • FIG. 10 is a schematic diagram of the relationship of a storage component a provided by the application.
  • 11a is a flowchart of a method for page jumping provided by the application.
  • 11b is a schematic flowchart of a voice-controlled cross-application APP jumping between pages provided by the application;
  • FIG. 12 is a schematic structural diagram of a chip system provided by this application.
  • the technical solution of the present application can be applied to a terminal device, which can load at least one Android application package (Android application package, APK), and use the at least one APK to realize various service functions, such as a voice control APP Function.
  • the APK includes a voice assistant or a voice program package.
  • the terminal device includes any of the following devices, such as a mobile phone, a notebook computer, a tablet computer, a personal computer (PC), a personal digital assistant (PDA), a foldable terminal, a vehicle-mounted terminal, a Wearable devices with wireless communication functions (such as smart watches or wristbands), user devices (user devices) or user equipment (UE), and augmented reality (AR) or virtual reality (VR) equipment, etc.
  • a mobile phone such as a notebook computer, a tablet computer, a personal computer (PC), a personal digital assistant (PDA), a foldable terminal, a vehicle-mounted terminal, a Wearable devices with wireless communication functions (such as smart watches or wristbands), user devices (user devices) or user equipment (UE), and augmented reality (AR) or virtual reality (VR) equipment, etc.
  • UE user equipment
  • AR augmented reality
  • VR virtual reality
  • the embodiments of the present application do not limit the specific device form of the terminal device.
  • the above-mentioned various terminal devices include, but are not
  • FIG. 2 shows a schematic structural diagram of a terminal device.
  • the mobile phone terminal may include a processor 110, an external memory interface 120, an internal memory 121, a universal serial bus (USB) interface 130, a charging management module 140, a power management module 141, a battery 142, an antenna 1.
  • Antenna 2 RF module 150, communication module 160, audio module 170, speaker 170A, receiver 170B, microphone 170C, headphone jack 170D, sensor module 180, buttons 190, motor 191, indicator 192, camera 193, display screen 194 , and a subscriber identification module (subscriber identification module, SIM) card interface 195 and the like.
  • SIM subscriber identification module
  • the structures illustrated in the embodiments of the present application do not constitute a specific limitation on the mobile phone.
  • the mobile phone may include more or less components than shown, or some components may be combined, or some components may be separated, or different component arrangements.
  • the illustrated components may be implemented in hardware, software, or a combination of software and hardware.
  • the processor 110 may include one or more processing units, for example, the processor 110 may include an application processor (application processor, AP), a modem processor, a graphics processor (graphics processing unit, GPU), an image signal processor (image signal processor, ISP), controller, memory, video codec, digital signal processor (digital signal processor, DSP), baseband processor, and/or neural-network processing unit (NPU) Wait. Wherein, different processing units may be independent devices, or may be integrated in one or more processors.
  • application processor application processor, AP
  • modem processor graphics processor
  • graphics processor graphics processor
  • ISP image signal processor
  • controller memory
  • video codec digital signal processor
  • DSP digital signal processor
  • NPU neural-network processing unit
  • a memory may also be provided in the processor 110 for storing program instructions and data.
  • the memory in the processor 110 is a cache memory. This memory may hold instructions or data that have just been used or recycled by the processor 110 . If the processor 110 needs to use the instruction or data again, it can be called directly from the memory. Repeated accesses are avoided and the latency of the processor 110 is reduced, thereby increasing the efficiency of the system.
  • the processor 110 may include one or more interfaces.
  • the interface may include an integrated circuit (inter-integrated circuit, I2C) interface, an integrated circuit built-in audio (inter-integrated circuit sound, I2S) interface, a pulse code modulation (pulse code modulation, PCM) interface, a universal asynchronous transceiver (universal asynchronous transmitter) receiver/transmitter, UART) interface, mobile industry processor interface (MIPI), general-purpose input/output (GPIO) interface, subscriber identity module (SIM) interface, and / or universal serial bus (universal serial bus, USB) interface, etc.
  • I2C integrated circuit
  • I2S integrated circuit built-in audio
  • PCM pulse code modulation
  • PCM pulse code modulation
  • UART universal asynchronous transceiver
  • MIPI mobile industry processor interface
  • GPIO general-purpose input/output
  • SIM subscriber identity module
  • USB universal serial bus
  • the I2C interface is a bidirectional synchronous serial bus, including a serial data line (serial data line, SDA) and a serial clock line (derail clock line, SCL).
  • the processor 110 may contain multiple sets of I2C buses.
  • the processor 110 can be respectively coupled to the sensor module 180, the charger, the flash, the camera 193, etc. through different I2C bus interfaces.
  • the I2S interface can be used for audio communication.
  • the processor 110 may contain multiple sets of I2S buses.
  • the processor 110 may be coupled with the audio module 170 through an I2S bus to implement communication between the processor 110 and the audio module 170 .
  • the PCM interface can also be used for audio communications, sampling, quantizing and encoding analog signals.
  • audio module 170 and communication module 160 may be coupled through a PCM bus interface.
  • the UART interface is a universal serial data bus used for asynchronous communication.
  • the bus may be a bidirectional communication bus. It converts the data to be transmitted between serial communication and parallel communication.
  • a UART interface is typically used to connect the processor 110 with the communication module 160 .
  • the MIPI interface can be used to connect the processor 110 with peripheral devices such as the display screen 194 and the camera 193 .
  • the processor 110 communicates with the camera 193 through a camera serial interface (camera serial interface, CSI) to implement the shooting function of the mobile phone.
  • the processor 110 communicates with the display screen 194 through a display serial interface (display serial interface, DSI) to realize the display function of the mobile phone.
  • the USB interface 130 is an interface that conforms to the USB standard specification, and may specifically be a Mini USB interface, a Micro USB interface, a USB Type C interface, and the like.
  • the USB interface 130 can be used to connect a charger to charge the mobile phone, and can also be used to transfer data between the mobile phone and peripheral devices. It can also be used to connect headphones to play audio through the headphones. This interface can also be used to connect other terminal devices, such as AR devices.
  • the interface connection relationship between the modules illustrated in the embodiments of the present application is only a schematic illustration, and does not constitute a structural limitation of the mobile phone.
  • the mobile phone may also adopt different interface connection manners in the foregoing embodiments, or a combination of multiple interface connection manners.
  • the charging management module 140 is used to receive charging input from the charger.
  • the charger may be a wireless charger or a wired charger.
  • the charging management module 140 may receive charging input from the wired charger through the USB interface 130 .
  • the charging management module 140 may receive wireless charging input through the wireless charging coil of the mobile phone. While the charging management module 140 charges the battery 142 , it can also supply power to the terminal device through the power management module 141 .
  • the power management module 141 is used for connecting the battery 142 , the charging management module 140 and the processor 110 .
  • the power management module 141 receives input from the battery 142 and/or the charging management module 140, and supplies power to the processor 110, the internal memory 121, the external memory, the display screen 194, the camera 193, the communication module 160, and the like.
  • the power management module 141 can also be used to monitor parameters such as battery capacity, battery cycle times, battery health status (leakage, impedance). In some embodiments, the power management module 141 and the charging management module 140 may also be provided in the same device.
  • the wireless communication function of the mobile phone can be realized by the antenna 1, the antenna 2, the radio frequency module 150, the communication module 160, the modulation and demodulation processor, the baseband processor, and the like.
  • the antenna 1 and the antenna 2 are used for transmitting and receiving electromagnetic wave signals.
  • Each antenna in a cell phone can be used to cover a single or multiple communication frequency bands. Different antennas can also be reused to improve antenna utilization.
  • the radio frequency module 150 can provide wireless communication solutions including 2G/3G/4G/5G etc. applied to the mobile phone.
  • the radio frequency module 150 may include at least one filter, switch, power amplifier, low noise amplifier (LNA) and the like.
  • the radio frequency module 150 can receive electromagnetic waves from the antenna 1, filter and amplify the received electromagnetic waves, and transmit them to the modulation and demodulation processor for demodulation.
  • the radio frequency module 150 can also amplify the signal modulated by the modulation and demodulation processor, and then convert it into electromagnetic waves for radiation through the antenna 1 .
  • at least part of the functional modules of the radio frequency module 150 may be provided in the processor 110 .
  • at least part of the functional modules of the radio frequency module 150 may be provided in the same device as at least part of the modules of the processor 110 .
  • the modem processor may include a modulator and a demodulator.
  • the modulator is used to modulate the low frequency baseband signal to be sent into a medium and high frequency signal.
  • the demodulator is used to demodulate the received electromagnetic wave signal into a low frequency baseband signal. Then the demodulator transmits the demodulated low-frequency baseband signal to the baseband processor for processing.
  • the low frequency baseband signal is processed by the baseband processor and passed to the application processor.
  • the modulation and demodulation processor may be an independent device, or may be independent of the processor 110 and disposed in the same device as the radio frequency module 150 or other functional modules.
  • the communication module 160 can provide applications on the mobile phone including wireless local area networks (WLAN) (such as wireless fidelity (WiFi) networks), Bluetooth (BT), global navigation satellite system (global navigation satellite system) system, GNSS), frequency modulation (frequency modulation, FM), near field communication technology (near field communication, NFC), infrared technology (infrared, IR) and other wireless communication solutions.
  • WLAN wireless local area networks
  • BT Bluetooth
  • GNSS global navigation satellite system
  • frequency modulation frequency modulation
  • FM near field communication technology
  • NFC near field communication technology
  • IR infrared technology
  • the communication module 160 may be one or more devices integrating at least one communication processing module.
  • the communication module 160 receives electromagnetic waves via the antenna 2 , frequency modulates and filters the electromagnetic wave signals, and sends the processed signals to the processor 110 .
  • the communication module 160 can also receive the signal to be sent from the processor 110 , perform frequency modulation on it, amplify the signal, and then convert it into electromagnetic waves for radiation through the
  • the antenna 1 of the mobile phone is coupled with the radio frequency module 150, and the antenna 2 is coupled with the communication module 160, so that the mobile phone can communicate with the network and other devices through wireless communication technology.
  • the wireless communication technology may include global system for mobile communications (GSM), general packet radio service (GPRS), code division multiple access (CDMA), broadband Code Division Multiple Access (WCDMA), Time Division Code Division Multiple Access (TD-SCDMA), Long Term Evolution (LTE), BT, GNSS, WLAN, NFC , FM, and/or IR technology, etc.
  • the GNSS may include global positioning system (global positioning system, GPS), global navigation satellite system (global navigation satellite system, GLONASS), Beidou navigation satellite system (beidou navigation satellite system, BDS), quasi-zenith satellite system (quasi -zenith satellite system, QZSS) and/or satellite based augmentation systems (SBAS).
  • global positioning system global positioning system, GPS
  • global navigation satellite system global navigation satellite system, GLONASS
  • Beidou navigation satellite system beidou navigation satellite system, BDS
  • quasi-zenith satellite system quadsi -zenith satellite system, QZSS
  • SBAS satellite based augmentation systems
  • the display screens 1 to N 194 may include a display and a touch control device.
  • the display is used for outputting display content to the user
  • the touch device is used for receiving touch events input by the user on the display screen.
  • the mobile phone may include 1 or N cameras 193 , where N is a positive integer greater than 1.
  • the sensor module 180 may include a gyro sensor, an acceleration sensor, a pressure sensor, an air pressure sensor, a magnetic sensor (eg, a Hall sensor), a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor or an ambient light sensor
  • a gyro sensor e.g., an acceleration sensor, a pressure sensor, an air pressure sensor, a magnetic sensor (eg, a Hall sensor), a distance sensor, a proximity light sensor, a fingerprint sensor, a temperature sensor, a touch sensor or an ambient light sensor
  • the video codec is used to compress or decompress digital video.
  • a phone can support one or more video codecs.
  • the mobile phone can play or record videos in various encoding formats, such as: Moving Picture Experts Group (MPEG) 1, MPEG2, MPEG3, MPEG4, etc.
  • MPEG Moving Picture Experts Group
  • MPEG2 MPEG2, MPEG3, MPEG4, etc.
  • the NPU is a neural-network (NN) computing processor.
  • NN neural-network
  • applications such as intelligent cognition of mobile phones can be realized, such as image recognition, face recognition, speech recognition, text understanding, etc.
  • the external memory interface 120 can be used to connect an external memory card, such as a Micro SD card, to expand the storage capacity of the mobile phone.
  • the external memory card communicates with the processor 110 through the external memory interface 120 to realize the data storage function. For example to save files like music, video etc in external memory card.
  • Internal memory 121 may be used to store computer executable program code, which includes instructions.
  • the processor 110 executes various functional applications and data processing of the mobile phone by executing the instructions stored in the internal memory 121 .
  • the internal memory 121 may include a storage program area and a storage data area.
  • the storage program area can store an operating system, an application program required for at least one function (such as a sound playback function, an image playback function, etc.), and the like.
  • the storage data area can store data (such as audio data, phone book, etc.) created during the use of the mobile phone.
  • the internal memory 121 may include high-speed random access memory, and may also include non-volatile memory, such as at least one magnetic disk storage device, flash memory device, universal flash storage (UFS), and the like.
  • the mobile phone can implement audio functions through an audio module 170, a speaker 170A, a receiver 170B, a microphone 170C, an earphone interface 170D, and an application processor. Such as music playback, recording, etc.
  • the audio module 170 is used for converting digital audio information into analog audio signal output, and also for converting analog audio input into digital audio signal. Audio module 170 may also be used to encode and decode audio signals. In some embodiments, the audio module 170 may be provided in the processor 110 , or some functional modules of the audio module 170 may be provided in the processor 110 .
  • Speaker 170A also referred to as a “speaker” is used to convert audio electrical signals into sound signals.
  • the mobile phone can listen to music through the speaker 170A, or listen to hands-free calls.
  • the receiver 170B also referred to as "earpiece" is used to convert audio electrical signals into sound signals.
  • the voice can be received by placing the receiver 170B close to the human ear.
  • the microphone 170C also called “microphone” or “microphone” is used to convert sound signals into electrical signals.
  • the user can make a sound by approaching the microphone 170C through a human mouth, and input the sound signal into the microphone 170C.
  • the mobile phone may be provided with at least one microphone 170C.
  • the mobile phone may be provided with two microphones 170C, which in addition to collecting sound signals, may also implement a noise reduction function.
  • the mobile phone can also be provided with three, four or more microphones 170C to collect sound signals, reduce noise, identify sound sources, and implement directional recording functions.
  • the earphone jack 170D is used to connect wired earphones.
  • the earphone interface 170D may be the USB interface 130, or may be a 3.5mm open mobile terminal platform (OMTP) standard interface, or a cellular telecommunications industry association of the USA (CTIA) standard interface.
  • OMTP open mobile terminal platform
  • CTIA cellular telecommunications industry association of the USA
  • the keys 190 include a power-on key, a volume key, and the like. Keys 190 may be mechanical keys. It can also be a touch key.
  • the cell phone can receive key input and generate key signal input related to user settings and function control of the cell phone.
  • Motor 191 can generate vibrating cues.
  • the motor 191 can be used for vibrating alerts for incoming calls, and can also be used for touch vibration feedback.
  • touch operations acting on different applications can correspond to different vibration feedback effects.
  • the motor 191 can also correspond to different vibration feedback effects for touch operations in different areas of the display screens 1 to N 194 .
  • Different application scenarios for example: time reminder, receiving information, alarm clock, games, etc.
  • the touch vibration feedback effect can also support customization.
  • the indicator 192 can be an indicator light, which can be used to indicate the charging state, the change of the power, and can also be used to indicate a message, a missed call, a notification, and the like.
  • the SIM card interface 195 is used to connect a SIM card.
  • the SIM card can be inserted into the SIM card interface 195 or pulled out from the SIM card interface 195 to achieve contact and separation with the mobile phone.
  • the mobile phone can support 1 or N SIM card interfaces, where N is a positive integer greater than 1.
  • an operating system runs on the above-mentioned components.
  • the iOS operating system developed by Apple the Android open source operating system developed by Google
  • the Windows operating system developed by Microsoft the Windows operating system developed by Microsoft.
  • Applications can be installed and run on this operating system.
  • a third-party voice control/voice module program package such as an APK, is also installed, which can provide corresponding services for the voice commands issued by the user.
  • the voice control/voice module can realize a series of operations across pages or applications by simulating clicks. The simulated clicks are to write the operations to be implemented on the configuration file in the agreed form. When the operation needs to be performed, read from the configuration file. Take the operation along with the component, and execute it.
  • the simulated click requires manual configuration files, and the functions of the manual configuration files (such as JSON) are limited, and need to rely on the implementation of a third party. If the third-party application APP is upgraded, it may cause the originally configured execution program to be unavailable. If you change the name of "My” to "My Mall", clicking the "My Mall” icon after the change will cause the page jump function to fail to execute.
  • the execution operation of the simulated click is generally executed from a fixed position (such as the home page), and the APP needs to be closed first and then restarted in the middle process, which affects the user experience.
  • the embodiment of the present application uses a page jump graph to construct a mapping relationship between each page, so as to directly jump from the current source page to the destination page, that is, to execute cross-page/ Actions between applications do not require restarting the APP, manual configuration files and third-party cooperation, saving manpower and improving user experience.
  • FIG. 3 it is a structural block diagram of a virtual device corresponding to the above-mentioned terminal device.
  • the apparatus includes: a processing module 10 , a path query module 20 and a storage medium 30 .
  • the processing module 10 includes: a page monitoring module 101 , a data operation 102 , a page comparison module 103 , a page extraction module 104 , a page jump update module 105 and a component query module 106 .
  • the above-mentioned processing module 10 may also include other more or less modules, which is not limited in this embodiment.
  • the page monitoring module 101 monitors that the user performs user operations on the display screen of the terminal device. For example, after the first operation, it sends two pages before and after the user's operation to the page comparison module 103 .
  • the first operation includes, but is not limited to, clicking, sliding, tapping, dragging, and the like.
  • the page before the user performs the first operation is the first page
  • the page after the user performs the first operation is the second page.
  • the page comparison module 103 After the page comparison module 103 receives it, it compares whether the two pages before the operation and after the operation are the same page. If so, the user operation does not generate a new page, that is, the page does not jump; if not, it is not the same page. one page, the page extraction module 104 is used to extract the feature information of the two pages before the user's first operation and after the first operation, to obtain the page features of the first page and the page features of the second page, and extract the page features of the two pages. The features are sent to the page jump update module 105 .
  • the page jump map update module 105 after receiving the page characteristics of the first page and the second page, inquires whether there is a mapping relationship between the first page and the second page, that is, whether there is a jump from the first page to the second page. If it is not stored, it means that the first operation of the user is a new operation. If the first operation is not stored in the database, the mapping relationship is stored, including the page characteristics of the first page and the second page, and all operation characteristics of the first operation; if the mapping relationship has been stored, further identify whether the first operation of the user has been stored.
  • the component query module 106 is used to query whether the first operation has been stored this time, because there may be multiple operations from the first page to the second page. If there is an operation feature for storing the first operation, then Jump the first page to the second page directly according to the stored first operation and the mapping relationship; if there is no storage, then store the operation characteristics of the first operation, that is, learn and store the user's first operation, After the page jump from the first page is bound to the operation feature of the first operation, a jump path for jumping to the second page is established.
  • the path query module 20 can query the jump path of any application APP on any page, that is, the mapping relationship from the operation characteristics of the first page and the first operation to the second page, so as to realize the operation habit according to the user. Complete the page jump operation.
  • the method can autonomously learn the user's operation habits, and store the user's operation, that is, the first page and the user's first operation are used as input, the second page is used as the output, and the mapping relationship between the input and the output is established, so as to avoid The page jump operation is performed according to the preset program configuration file.
  • FIG. 4 it is a flowchart of a method for saving page features provided by an embodiment of the present application.
  • the method can be applied to any of the foregoing terminal devices, and the method includes:
  • the first operation includes, but is not limited to, operations such as clicking, sliding, tapping, and dragging by the user, and the operation feature of the first operation is the extracted data or information of the user's operations such as clicking, sliding, tapping, and dragging.
  • the page monitoring module 101 of the terminal device obtains the first operation by using an auxiliary function.
  • the auxiliary function may be a service provided by the Android system, such as the AccessibilityService function of the Android system.
  • the auxiliary service provides an enhanced user page, which can identify the first operation of the user on the terminal device, thereby helping the disabled People or people who may not be able to fully interact with the device temporarily realize human-computer interaction, such as voice control.
  • the page monitoring module 101 may also acquire information such as the View tree of the current application APP, the components responding to the first operation, and the like.
  • the first mapping relationship includes: the page feature of the first page, the page feature of the second page, and the operation feature of the first operation, and the page feature of the first page, the After the operation feature of the first operation is bound, it has a first mapping relationship with the page feature of the second page.
  • the page feature of the first page is used to identify the first page
  • the page feature of the second page is used to identify the second page
  • the operation feature of the first operation is from the first page to The jump path of the second page.
  • the first mapping relationship is a corresponding relationship between "the page feature of the first page and the operation feature of the first operation" and "the page feature of the second page".
  • the first mapping relationship is stored in the storage medium 30 .
  • the page monitoring module 101 of the terminal device After monitoring the first operation of the user, the page monitoring module 101 of the terminal device inputs the two pages of the user before the first operation and after the first operation into the page comparison module 103, and the page comparison module 103 judges the two pages Whether it is the same page, that is, whether the user's first operation causes the page to change.
  • the method for judging whether the first page and the second page are the same includes:
  • activity is an Android application component that provides screen interaction.
  • Each activity gets a window on which to draw its user page.
  • the window can fill the entire screen, or it can be smaller than the screen and float on top of other windows.
  • the terminal device obtains the activity name of each application through the test APP in the system testing phase, including the first view name and the second view name, where the first view name is the activity name of the first page, and the second view name is the second view name.
  • the activity name of the page, and each view (activity) name may have many tab (Tab) pages, each tab page can be a page, the three-party implementation of the tab page click has its own characteristics, and may not follow the rules of Android controls . Therefore, it can be judged whether the Tab pages are the same from the perspective of Computer Vision (CV).
  • CV Computer Vision
  • the "Category”, “Discovery”, “Shopping Cart” and “My” components all have the same activity name, for example, their activity names are all com.huawei .hua utilizatore.Main Activity.
  • the tab page corresponding to "category” is marked as "Tab 1”
  • the tab page corresponding to "discovery” is marked as "Tab 2”
  • the tab page corresponding to "shopping cart” is marked as "Tab 3”
  • "I The corresponding Tab page is marked as "Tab 4”.
  • windows there are different windows (windows) under the same activity name.
  • window1 in the figure which is a clickable page
  • window2 in the figure, the covered page the activity names of these two pages are both com.taobao.taobao.DetailActivity, but their windows are different.
  • S2 Determine whether the activity names of the first page and the second page are the same.
  • the activity name of the first page is the name of the first view
  • the activity name of the second page is the name of the second view.
  • step S5 the above method further includes:
  • the first view name of the first page is "com.huawei.hua Vietnameseore.MainActivity”
  • the first view name directory contains 4 tab pages, namely "category”, “discovery”, "” Shopping cart” and "My”
  • the first tab page under the current first view name directory is 1, it means the "category” tab page
  • the second tab page of the second page is 4, which means "my” Tab page, then it is determined that the first Tab page is different from the second Tab page.
  • step S2 it is determined that if the activity names of the first page and the second page are different, it is determined that the first page and the second page are different, that is, step S5.
  • S6 Continue to the aforementioned S3, if no, that is, there is no Tab page in the first page, and/or, there is no Tab page in the second page, then traverse the first page and the second page respectively.
  • the view tree of the page compare the similarity between the view tree of the first page and the view tree of the second page.
  • the view tree of the first page includes all elements of the first page and the association relationship between each element
  • the view tree of the second page includes all the elements of the second page and the association relationship between each element
  • the view tree includes RootView, ViewGroup, view and so on.
  • FIG. 7a it is a schematic diagram of the structure of a view tree in the Android system.
  • the view tree displays a topology structure under an Activity
  • the Activity includes at least one Window
  • the Window can be understood as a page displayed on a terminal device, such as a phone window (PhoneWindow), where the Activity is responsible for managing the Window.
  • each Window has a corresponding root View, also known as the window's view DecorView.
  • DecorView is a frame structure (FrameLayout), which is used to add the layout file of Activity, that is, the root view (RootView).
  • Connected to RootView are different View nodes, such as ViewGroupA, ViewGroupB, View1 and View2, etc.
  • Each Activity displays components of various application apps through different Views and/or ViewGroups.
  • Comparing the view trees of the first page and the second page refers to comparing, layer by layer, the degree of difference between the Activity layout file in the RootView of the first page and the Activity layout file in the RootView of the second page, such as the first page.
  • the similarity between the view trees of the first page and the second page is 75%.
  • the similarity of the view tree is related to the number of elements in the view tree, the relationship between each element, and the type.
  • the elements in the view tree include view, ViewGroup, etc., and the relationship between each element may be a parent-child relationship, or a parallel parent-parent, or child-child relationship.
  • the types include view, ViewGroup, and the like.
  • S7 Continue to S6, and determine whether the similarity between the view trees of the first page and the second page exceeds a threshold.
  • S8 Continue to the foregoing S7, if yes, that is, the similarity exceeds the threshold, determine that the first page and the second page are the same. Otherwise, if the similarity is less than or equal to the threshold, it indicates that the similarity between the two pages is not high, and it is further determined that the first page and the second page are different.
  • the threshold is 80%, according to the similarity obtained in S7 of 75% ⁇ 80%, it is determined that the first page and the second page are not the same; if the similarity of the two pages is obtained in S7 If it is greater than 80%, it is determined that the first page and the second page are the same.
  • the above-determined similarity may also be a range interval. If the similarity of the view trees of two pages is determined to be 70% to 75%, it is further determined whether the range interval exceeds the threshold.
  • the page features of the first page and the second page are extracted.
  • One implementation method is to use the mobilenet classification model.
  • the collected top 100 APPs are trained to obtain page features, and the page features are used as page tags; then, the tagged first and second pages are output to the page jump update module 105 .
  • mobilenet classification is a small and efficient AI model proposed by Google, which can be used to complete tasks such as image classification.
  • the two pages (Page) in Figure 7b, page 1 and page 2 both have the same activity name, but their Tab pages are different, so in step S5, it is judged that the two pages are different pages, and then mark the first page.
  • the page feature of one page (Page1) is "chat page”
  • the page feature of the second page (Page2) is "address book page”.
  • the page monitoring module inputs the click event corresponding to the com.hua Vietnameseore.huawei.navigation.NavigationTabIndicatorView component, which is adopted in this embodiment.
  • the hash value of this view (hashcode) is used as a unique identifier for each view.
  • the update logic is as follows: First, the terminal device uses the page comparison module 103 to find out which page (Page) activity A and activity B correspond to, and if not found, it is a new one The mapping relationship is stored directly; secondly, if there is a mapping relationship between the current page of activity A and the target page of activity B, that is, the mapping relationship has been stored, it is necessary to determine whether component a is a new user operation. Specifically, the component can be used.
  • the query module 106 determines whether the user's operation is new or stored.
  • the page jump update module 106 is used to store the page jump path, that is, the first mapping relationship.
  • the storage form of the page jump map is shown in Figure 8a, and each activity includes one or more pages, such as page 0 to page N.
  • Each page has one or more operations (TransOperate) that can jump to another page.
  • Each operation records the components that respond to the operation and how it operates.
  • the operation path TransOperate list List1 for jumping from one page to another activity D in activity C includes m operations, where m is greater than or equal to 1 and is a positive integer.
  • the list of operation paths to jump from activity A to activity B is "List2 ⁇ TransOperate>".
  • Each page is labeled after feature extraction, so as to establish a jump path from one activity's page to another activity's page, or "mapping relationship".
  • the page 0 to page N are page identifiers, which are used to uniquely identify the page.
  • an operation process for a terminal device to learn a user is as follows.
  • the activity name of the current first page is com.huawei.hua Vietnameseore.DetailActivity, assuming that the name is "activity A" and the first page is the page A0, after the user clicks the upper left corner to return (named TransOperate1 for the time being), the user enters the main page of "Huawei Mall", see the second page in Figure 8b, the second page is page B0, and the activity corresponding to the second page
  • the name is com.huawei.hua utilizata utilizating, and it is assumed that the name "activity B" is different from the activity name of the first page, and then it is determined that the first page (page A0) is different from the second page (page B0).
  • page A0 is the first page identifier of the first page
  • activity A is the name of the first view corresponding to the first page
  • page B0 is the second page identifier of the second page
  • activity B is the name of the second view corresponding to the second page.
  • the page monitoring module 101 After the page monitoring module 101 recognizes the change, it inputs page A0 and page B0 to the page comparison module 103, and the page comparison module 103 determines that the two pages are different pages according to the activity name and the view tree. Then, the page extraction module 104 extracts the page features of the two pages, for example, the page features of the last two pages are "chat interface" and "calling" respectively, and input the page features of these two pages into the page jump Update module 105.
  • the page jump update module 105 After the page jump update module 105 receives it, it first searches the database for a storage named activity A, and if it is not found, the page number in FIG. 8c is page A0 under the activity A directory. That is, it is determined that the source page to be jumped is page A0 of activity A. Then continue to search in the database to see if there is page B0 stored in the storage named activity B. If not found, determine or mark the page B0 in the activity B directory, and determine that the destination page to be jumped is the page B0 of activity B. In addition, there is no destination page stored in the database, nor is the mapping relationship from the source page to the destination page stored.
  • the current mapping relationship is a new operation of the user, which is recorded as TransOperate1, and the TransOperate1 is stored in the list of jump paths, that is, the list List ⁇ Operation TransOperate>, thus completing the transition from activity to activity.
  • the database may be a local database of the terminal device, or a database delivered to the terminal device by the cloud server, or a database in the cloud server, which is not limited in this embodiment.
  • the database records and stores relevant information of all or part of the pages included in at least one application APP, such as the view name of the page, the Tab page, the view tree, and feature information.
  • the learning process of jumping from "Step 3" in Figure 1 to "Step 4" includes:
  • the page monitoring module 101 of the terminal device detects through the data operation 102 that the user has clicked on "My" (for the time being, the click operation is named TransOperate2), and the operation of "Step 4" shown in FIG. 1 is obtained. Input the two pages before and after the operation of clicking "My" into the page comparison module 103 respectively; the page comparison module 103 determines that the activity names of the two pages before and after this operation are the same, that is, the activity names are both com.huawei .hua utilizata meritore.MainActivity is activity A, but the tab page is different, so it still belongs to a different page and needs to be stored.
  • the page extraction module 104 tags the two pages and outputs them to the page jump update module 105.
  • the page jump update module 105 searches for pages according to activity B, and finds a page B0 in the activity B directory. Then compare page B0 with the page in "Step 3" before clicking "My", so it is confirmed that the source page to be jumped is page B0 of activity B, and then search according to the name activity B after the click operation. Whether the page B1 has been stored, if the page B1 is not found, you need to store the page B1 under the activity B and name it as the page B1 under the activity B directory. Therefore, it is confirmed that the purpose of jumping is the page B1. Since this mapping relationship is a newly added operation, this operation is also directly stored, that is, it can be represented as a jump path TransOperate2.
  • the learning process of jumping from "Step 4" in Figure 1 to "Step 5" includes: when it is recognized that the user clicks "to be received", the operation is assumed to be named TransOperate3. It is judged that the activity name of "step 4" is different from the activity name of "step 5".
  • the method provided in this embodiment extracts features from different pages generated before and after the user's operation, and labels them to learn and store the user's operating habits, that is, to establish the page features of a page and the operation features of the user's operation.
  • a mapping relationship is established with the destination page (the page to be jumped), so that when the operation is performed again, the intent can be executed according to the user's operating habits, and can be executed on any page according to the user's operating habits
  • For cross-page intent there is no need to restart the APP, no configuration file, and no three-party cooperation, which improves the page jump efficiency and user experience.
  • This embodiment also provides a method for page jumping, which is used to use the stored user operations, thereby improving the efficiency of page jumping.
  • the method includes:
  • the page monitoring module 101 of the terminal device detects the second operation of the user on the third page, and displays the fourth page on the display screen in response to the second operation, if the third page and the fourth page are different, Then, find out whether the mapping relationship from the third page to the fourth page has been stored, and if so, directly jump from the third page to the fourth page according to the mapping relationship.
  • the page jump module 105 obtains the third page, the fourth page and the second operation TransOperate 4, assuming that the activity name corresponding to the third page is activity A, and is in the activity A directory
  • the stored page has page A0. According to activity A, find out whether page A0 is stored in all the pages stored. If page A0 is found, it is determined that the page A0 and the third page are the same page, and then it is determined that the page A0 is to be skipped.
  • the source page of the transfer is page A0 of activity A.
  • the destination page to be jumped is the page B0 of activity B, and it is judged whether the mapping relationship from the page A0 to the page B0 is stored, that is, it is judged whether TransOperate 4 is stored, and if not stored, then the storage
  • This mapping relationship namely the jump path TransOperate 4, as shown in Figure 9b, only TransOperate 1 is stored in the local database of the terminal device, and TransOperate 4 is not stored, so the second operation TransOperate 4 is an operation newly added by the user.
  • the TransOperate4 is added to List ⁇ TransOperate>. If the TransOperate 4 has been stored, the third page (page A0) is jumped to the fourth page (page B0) directly according to the mapping relationship of the TransOperate 4.
  • each page of the terminal device can be constructed and updated by learning the user's habits, so as to realize the query of the path and components of the label page of a specific application on any page.
  • the method further includes: the terminal device inquires and executes the method steps of page jumping according to the stored mapping relationship. Specifically, as shown in Figure 10, the method includes:
  • the component query module 106 of the terminal device obtains the hash value of the component a, and determines whether the hashcode is in the stored List by looking up the hashcode corresponding to the component a in the stored page, so as to determine whether the component a is newly added.
  • the search method includes: the component query module 106 obtains the stored page A0 and the Decorview of the updated page B0 respectively, and searches for the components of the stored page A0 layer by layer according to the level and characteristics of the component a in the updated page B0. When a component with matching structure and hierarchical features is reached, component a is a newly added component, and the component a is stored in the storage unit.
  • the above embodiment exemplifies the method for page jumping in the same application APP. According to the above method, it is also possible to learn and realize page jumping between different application APPs.
  • An activity such as "Huawei Mall”.
  • Each application in the "Taobao” and “WeChat” APPs can contain multiple activities, and each activity contains at least one page, and each page can be identified by a label.
  • Each of the tags may correspond to a page function of a page.
  • the path query module 20 performs a depth-first traversal through the graph theory of all the stored mapping relationships. Query, and set the maximum depth to take into account the efficiency, so as to realize the page jump between different applications.
  • this embodiment also provides another page jumping method, as shown in FIG. 11a, the method includes:
  • 602 Determine a fourth page according to the first voice instruction, where the fourth page is a destination page that responds to the first voice instruction and provides services to the user.
  • each of the N mapping relationships includes: the page feature of the current page, the page feature of the next page of the current page, and the operation feature of the operation from the current page to the next page, And the page feature of the current page and the operation feature have a mapping relationship with the page feature of the next page after binding, where N ⁇ 1 and N is a positive integer.
  • the mapping relationship includes: the page feature of the third page, the operation feature of the second operation and the fourth page Page characteristics of the page.
  • the second operation is an operation for the user to enter the fourth page from the third page.
  • the second operation includes, but is not limited to, clicking, sliding, tapping, dragging, and the like.
  • an implementation manner is to search for whether the jump path is stored according to the method of traversing the graph. For example, searching through the depth-first traversal of graph theory, and setting the maximum depth to take into account the efficiency.
  • a flow chart of page jumping is executed on the terminal device, and the process starts to search from the detail page 1 of "Taobao" Whether each step of jumping stores a mapping relationship from the current page to the next page, if so, jump from the current page to the next page according to the mapping relationship.
  • This method can automatically learn the user's habit of operating the APP, thereby constructing a page jump map.
  • each page of the APP is labeled, and you only need to query the label when using it.
  • This embodiment provides an apparatus for saving page features.
  • the structure of the apparatus is as shown in the aforementioned FIG. 3 , and the apparatus includes: a processing module 10, a path query module 20 and storage medium 30.
  • the processing module 10 includes: a page monitoring module 101, a data manipulation module 102, a page comparison module 103, a page extraction module 104, a page jump update module 105, and a component query module 106.
  • the storage medium 30 may be at least one storage unit.
  • the page monitoring module 101 is configured to receive the user's first operation on the first page of the display screen; the page jump update module 105 is configured to display the user's first operation on the display screen in response to the first operation A second page is displayed, the second page being different from the first page.
  • a storage unit configured to store a first mapping relationship, where the first mapping relationship includes: page characteristics of the first page, page characteristics of the second page, and operation characteristics of the first operation, and the page characteristics of the first page The feature and the operation feature of the first operation have a mapping relationship with the page feature of the second page after being bound.
  • the page comparison module 103 is configured to compare whether the first page and the second page are the same, and further, the first page and the second page different, including:
  • the name of the first view of the first page is different from the name of the second view of the second page
  • the name of the first view and the name of the second view are the same, the directories of the name of the first view and the name of the second view both contain tab pages, and the first view name in the directory of the first view name
  • the tab page is different from the second tab page under the second view name directory, and the second tab page is the page after the first operation is performed.
  • each activity may include one or more Tab pages.
  • the page comparison module 103 is further configured to have the same name of the first view of the first page and the second view of the second page, and the name of the first view of the first page is the same. If at least one of the directories with the name of a view and the name of the second view does not contain a tab page, obtain the view trees of the first page and the second page, and compare the view tree of the first page and the view tree of the second page. similarity of the view tree of the second page; and determining that the first page and the second page are different when the similarity does not exceed a threshold.
  • the component query module 106 is configured to obtain the first view name and the first page identifier corresponding to the first page, and find out in the database whether there are stored The page whose name of the first view and the identifier of the first page match; if not, the storage of the name of the first view is established, and the storage of the name of the first view includes the name directory of the first view at least one page below.
  • the storage unit is further configured to store the storage of the first view name, and store the first page in the storage of the first view name.
  • the component query module 106 is further configured to, in the case where a page matching both the first view name and the first page identifier is found and stored in the database, determine that the matching page is source page.
  • the component query module 106 is further configured to, in the case where a page matching both the second view name and the second page identifier is found and stored in the database, determine the matching page as the destination page , looking up in the database whether the operation characteristics from the source page to the destination page are stored; the storage unit is further configured to store the operation characteristics of the first operation if the operation characteristics are not stored. operating characteristics. For a specific determination method, reference may be made to the method flow shown in FIG. 5 , which is not repeated in this embodiment.
  • the component query module 106 is further configured to judge whether the M operation characteristics include the operation characteristics of the first operation under the condition that there are M operation characteristics stored in the database, where M ⁇ 1 and M is a positive integer ; the storage unit is further configured to store the operation characteristics of the first operation when the component query module determines that the operation characteristics of the first operation are not included.
  • the page extraction module 104 is configured to extract page features of the first page and page features of the second page when comparing the first page and the second page to be different. And label each page, for example, the first page of activity A is labeled as page A0, and the second page of activity B is labeled as page B0.
  • the present application also provides a page jumping device, which can realize automatic page jumping between different applications, wherein the structure of the page jumping device can be the structure shown in the aforementioned FIG. 3 are the same or may be different, which is not limited in this embodiment.
  • the structure of the page jumping device is the same as that of the device shown in FIG. 3 as an example.
  • the page monitoring module 101 is configured to obtain the information displayed on the display screen when receiving the first voice command issued by the user.
  • the path query module 20 is configured to find out whether a jump path is stored between the third page and the fourth page, and if so, jump from the third page to the fourth page according to the jump path.
  • each of the N mapping relationships includes: the page feature of the current page, the page feature of the next page of the current page, and the operation feature of the operation from the current page to the next page, And the page feature of the current page and the operation feature have a mapping relationship with the page feature of the next page after binding, where N ⁇ 1 and N is a positive integer.
  • the operational feature of the second operation may be implemented by an auxiliary function of the terminal device.
  • the above device can automatically learn the user's habit of operating the APP, thereby constructing a page jump map.
  • each page of the APP is labeled, and you only need to query the label when using it.
  • this embodiment also provides a wireless communication system, which includes at least one terminal device and a network device, where the network device may be a cloud server or a data center, and is used to provide a database to the terminal device.
  • the network device may be a cloud server or a data center, and is used to provide a database to the terminal device.
  • the terminal device is the terminal device in the foregoing embodiment, and is configured to implement the methods described in the foregoing FIG. 4 to FIG. 11 .
  • the structure of the device such as the cloud server or the data center may be the same as or different from the structure of the terminal device shown in FIG. 2 or FIG. 12 , which is not limited in this embodiment. It should be understood that the above wireless communication system may also include other devices, such as switches and the like.
  • Embodiments of the present application further provide a computer-readable storage medium, where instructions, data, etc. are stored in the computer-readable storage medium, and when the computer-readable storage medium runs on a computer, the computer can execute the methods in the foregoing embodiments.
  • Embodiments of the present application also provide a computer program product containing instructions, which, when run on a computer, cause the computer to execute the methods of the above aspects.
  • the computer may be a general purpose computer, special purpose computer, computer network, or other programmable device.
  • the steps of the method or algorithm described in the embodiments of this application may be directly embedded in hardware, a software unit executed by a processor, or a combination of the two.
  • the software unit may be stored in RAM, flash memory, ROM, EPROM, EEPROM, registers, hard disk, removable disk, CD-ROM, or any other form of storage medium known in the art.
  • a storage medium may be coupled to the processor, such that the processor may read information from, and store information in, the storage medium.
  • the storage medium can also be integrated into the processor.
  • the processor and the storage medium may also be provided in different components of the terminal device.
  • FIG. 12 is a schematic structural diagram of the chip system.
  • the chip system includes a processor 1201 for supporting the above-mentioned apparatus to implement the functions involved in the above-mentioned aspects, for example, receiving a first operation of a user on a first page of a display screen; responding to the first operation on the display screen A second page is displayed on the screen, and the second page is different from the first page; and the first mapping relationship is saved.
  • the chip system further includes a memory 1202, a storage device for storing page characteristics, computer instructions 1203 and data necessary for the page jump device.
  • the chip system may be composed of chips, or may include chips and other discrete devices.
  • the chip system further includes at least one interface circuit for connecting internal and external devices to realize data transmission within the chip system and with external devices, such as external sensors.

Landscapes

  • Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • User Interface Of Digital Computer (AREA)

Abstract

一种页面特征的保存方法、页面跳转方法和装置,其中,保存方法包括:终端设备在显示屏的第一页面上接收用户的第一操作(401),响应于第一操作在显示屏上显示第二页面,第二页面与第一页面不同(402);保存第一映射关系,第一映射关系包括:第一页面的页面特征、第二页面的页面特征和第一操作的操作特征,且第一页面的页面特征、第一操作的操作特征绑定后与第二页面的页面特征具有映射关系(403)。保存方法学习和存储用户的操作习惯,建立页面的页面特征、用户操作的操作特征与目的页面之间的映射关系,从而当再次执行该操作时,可以按照用户的操作习惯去执行意图,提高页面跳转效率和用户体验。

Description

一种页面特征的保存方法、页面跳转方法和装置
本申请要求于2021年3月12日提交中国国家知识产权局、申请号为202110268624.1、发明名称为“一种页面特征的保存方法、页面跳转方法和装置”的中国专利申请的优先权,其全部内容通过引用结合在本申请中。
技术领域
本申请涉及终端领域,尤其是涉及一种页面特征的保存方法、页面跳转方法和装置。
背景技术
随着智能手机、智能电视等终端设备的飞速发展,利用语音来控制智能终端并为用户提供功能服务已经成为终端领域发展的一个新趋势,比如利用语音控制手机购物、下单、转发分享等操作。目前对于用户下达的简单的语音指令,比如“打开淘宝
Figure PCTCN2022079325-appb-000001
”、“播报天气”等服务已经能够在终端设备上给予服务响应,但是,对于跨页面或跨应用的语音控制操作,往往由于部分或全部功能无法被执行进而导致服务不能输出服务响应。
参见图1,用户在一网购APP上执行的一次用户操作。例如用户在华为手机中的“华为商城”APP上查看“待收货”的商品。具体地,在启动“华为商城”后的HUAWEI Mate 40手机浏览商品详情页中,接收到用户下达的“查看待收货”的语音指令时,按照预先配置的程序执行,第1步,APP会先点击“返回”并退出“华为商城”;第2步,开启“华为商城”APP,进入APP的主页面;第3步,在主页面中点击“我的”;第4步,在进入“我的”页面后点击“待收货”,第5步,在“待收货”显示页面中查看待收货的订单。
在上述过程中,无论用户当前下达语音指令是否是“华为商城”的APP页面,都需要从预设位置开始执行,该预设位置可以为APP首页,一般需要返回并退出“华为商城”APP,然后再开启该APP首页,并执行跨页面的操作意图,所以关闭后又重启APP的操作会影响用户体验,同时还增加启动时延,导致跨页面的语音控制功能执行得不流畅。
发明内容
本申请提供了一种页面特征的保存方法、使用方法和装置,用于实现跨页面或跨应用APP之间的自动跳转,按照用户操作习惯去执行跨页面或跨应用的操作意图,无需从预设位置开启执行并重启APP,无需配置文件,提高用户体验。具体地,公开了以下技术方案:
第一方面,本申请提供了一种页面特征的保存方法,该方法可应用于一种终端设备,所述方法包括:在显示屏的第一页面上接收用户的第一操作,响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同,保存第一映射关系。
其中,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有映射关系。所述第一操作包括但不限于点击、滑动、敲击、拖拽等,所述第一操作的操作特征为提取的用户点击、滑动、敲击、拖拽等操作相关的数据或信息。
本实施例提供的方法,对用户的操作前和操作后的产生的不同页面进行特征提取,并打标签,学习和存储用户的操作习惯,即从一个页面的页面特征与用户操作的操作特征建立绑定关系后,与目的页面(待跳转的页面)之间建立映射关系,从而当再次执行该操作时,可以按照用户的操作习惯去执行意图,即可在任意页面按照用户操作习惯去执行跨页面的意图,无需重启APP,无需配置文件,无需三方配合,提高了页面跳转效率和用户体验。
结合第一方面,在第一方面的一种可能的实现方式中,所述第一页面与所述第二页面不同,包括:
所述第一页面的第一视图名字和所述第二页面的第二视图名字不同;
或者,所述第一视图名字和所述第二视图名字相同,所述第一视图名字和所述第二视图名字的目录下均包含至少一个标签页,且所述第一视图名字目录中的第一标签页与所述第二视图名字目录中的第二标签页不相同。
其中,所述第一标签页是第一视图名字目录中的多个标签页的一个,所述第二标签页是第二视图名字目录中的多个标签页的一个。进一步地,所述第二标签页是用户执行第一操作后显示的页面,所述第一标签页是用户执行第一操作前显示的界面。
本实现方式中,通过每个页面的视图名字,以及标签页可以确定两个页面是否是相同的页面,从而判断是否需要学习用户的第一操作。
可选的,所述第一视图名字为第一activity名字,所述第二视图名字为第二activity名字。所述第一标签页为第一Tab页,所述第二标签页为第二Tab页。
另外,需要说明的是,本实现方式通过视图名字来标记不同的页面,应理解,还可以采用其他标识来对页面进行标记,比如标识符等,本申请对识别各个页面的标识不做限制。
结合第一方面,在第一方面的另一种可能的实现方式中,所述第一页面与所述第二页面不同,还包括:
在所述第一视图名字和所述第二视图名字相同,且所述第一视图名字和所述第二视图名字的目录中至少有一个不包含标签页的情况下,获取所述第一页面和所述第二页面的view树,比较所述第一页面的view树和所述第二页面的view树的相似度;如果所述相似度未超过阈值,则确定所述第一页面和所述第二页面不同。
另外,如果所述相似度超过所述阈值,则确定第一页面和第二页面相同。
结合第一方面,在第一方面的又一种可能的实现方式中,所述保存第一映射关系之前,还包括:查找本地是否存储了所述第一页面和所述第二页面。其中,查找是否存储所述第一页面包括:
获取所述第一页面所对应的第一视图名字和第一页面标识,所述第一视图名字和所述第一页面标识在页面设计时已经被标记和生成,所述第一页面标识用于唯一标识第一页面。在数据库中查找是否存储有与所述第一视图名字和所述第一页面标识均相匹配的页面;如果否,则建立所述第一视图名字的存储,并在所述第一视图名字的存储中保存所述第一页面。
具体地,所述相匹配的页面是指,在数据库中存储有所述第一视图名字的存储,且在该第一视图名字的存储中包括所述第一页面标识。
另外,还包括:如果是,即数据库中已经存储有上述均相匹配的页面,则确定与所述 第一视图名字和所述第一页面标识均相匹配的页面为源页面。
结合第一方面,在第一方面的又一种可能的实现方式中,查找是否存储所述第一页面包括:获取所述第二页面所对应的第二视图名字和第二页面标识,在所述数据库中查找是否存储有与所述第二视图名字和所述第二页面标识均相匹配的页面,即判断在数据库中是否存储有所述第二视图名字的存储,以及该第二视图名字的存储中是否包括所述第二页面标识;如果否,则建立所述第二视图名字的存储,并在所述第二视图名字的存储中保存所述第二页面。
结合第一方面,在第一方面的又一种可能的实现方式中,还包括:如果在数据库中查找到与所述第二视图名字和所述第二页面标识均相匹配的页面,则确定与所述第二视图名字和所述第二页面标识均相匹配的页面为目的页面,
在所述数据库中查找是否存储有从所述源页面到所述目的页面的操作特征,如果未存储,则存储所述第一操作的操作特征。
另外,还包括:如果存储了从所述源页面到所述目的页面之间的操作特征,且数据库中存储有M个操作特征,则进一步地判断所述M个操作特征中是否包括所述第一操作的操作特征,如果所述M个操作特征中不包括所述第一操作的操作特征,则存储所述第一操作的操作特征,M≥1且M为正整数。
如果包括所述第一操作的操作特征,则不存储,表明该第一操作的操作特征已经被预先存储。
第二方面,本申请还提供了一种页面跳转方法,该方法可应用于一种终端设备,所述方法包括:当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面;根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面;查找所述第三页面和所述第四页面之间是否存储有跳转路径,如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面。
其中,所述跳转路径包括从所述第三页面跳转到所述第四页面的N个映射关系,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数。
可选的,当N=1时,所述当前页面为第三页面,所述当前页面的下一个页面是第四页面,所述映射关系包括:第三页面的页面特征,第二操作的操作特征和第四页面的页面特征。所述第二操作为用户从第三页面进入到第四页面的操作。所述第二操作包括但不限于点击、滑动、敲击、拖拽等。
本方法可自动学习用户操作APP的习惯,从而构建出页面跳转图。同时为APP的每个页面打上了标签,使用时只需要查询标签即可,无需重启APP,无需配置文件,无需三方配合,节省人力并提高了用户体验。
结合第二方面,在第二方面的一种可能的实现方式中,查找所述第三页面和所述第四页面之间是否存储有跳转路径,包括:按照图的遍历的方法查找是否存储所述跳转路径。进一步地,通过图论的深度优先遍历进行查找,同时设置最大深度兼顾效率。
此外,结合第二方面,在第二方面的另一种可能的实现方式中,还包括:如果查找没 有存储所述跳转路径,则发出跳转失败,或无法跳转的指示信息,因为预先没有学习用户从第三页面跳转到第四页面的操作,即没有建立所述第三页面到第四页面的映射关系。
第三方面,本申请还提供了一种页面特征的保存装置,包括:页面监控模块,用于在显示屏的第一页面上接收用户的第一操作;页面跳转更新模块,响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同;存储单元,用于保存第一映射关系,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有映射关系。
结合第三方面,在第三方面的一种可能的实现方式中,还包括页面比较模块,所述页面比较模块,用于比较所述第一页面和所述第二页面是否相同。
其中所述第一页面和所述第二页面不同,包括:
所述第一页面的第一视图名字和所述第二页面的第二视图名字不同;
或者,所述第一视图名字和所述第二视图名字相同,所述第一视图名字和所述第二视图名字的目录中均包含标签页,且所述第一视图名字目录下的第一的标签页与所述第二视图名字目录中的第二标签页不相同,所述第二标签页是执行所述第一操作后的页面。
结合第三方面,在第三方面的另一种可能的实现方式中,所述页面比较模块,还用于在所述第一视图名字和所述第二视图名字相同,且所述第一视图名字和所述第二视图名字的目录中至少有一个不包含标签页的情况下,获取所述第一页面和所述第二页面的view树,比较所述第一页面的view树和所述第二页面的view树的相似度;以及当所述相似度未超过阈值时,确定所述第一页面和所述第二页面不同。
可选的,所述相似度可通过分辨率来表示。
结合第三方面,在第三方面的又一种可能的实现方式中,还包括组件查询模块,所述组件查询模块,用于获取所述第一页面所对应的第一视图名字和第一页面标识,在数据库中查找是否存储有与所述第一视图名字和所述第一页面标识均相匹配的页面;如果否,则建立所述第一视图名字的存储;所述存储单元,还用于保存所述第一视图名字的存储,以及在所述第一视图名字的存储中保存所述第一页面。
结合第三方面,在第三方面的又一种可能的实现方式中,所述组件查询模块,还用于在所述数据库中查找到存储有与所述第一视图名字和所述第一页面标识均相匹配的页面的情况下,确定所述相匹配的页面为源页面。
结合第三方面,在第三方面的又一种可能的实现方式中,所述组件查询模块,还用于在所述数据库中查找到存储有与所述第二视图名字和第二页面标识均相匹配的页面的情况下,确定所述相匹配的页面为目的页面,在所述数据库中查找是否存储有从所述源页面到所述目的页面的操作特征;所述存储单元,还用于在未存储所述操作特征的情况下,存储所述第一操作的操作特征。
结合第三方面,在第三方面的又一种可能的实现方式中,所述组件查询模块,还用于在所述数据库中存储有M个操作特征的情况下,判断所述M个操作特征中是否包括所述第一操作的操作特征,M≥1且M为正整数;所述存储单元,还用于当所述组件查询模块确定不包括所述第一操作的操作特征时,存储所述第一操作的操作特征。
第四方面,本申请还提供了一种页面跳转装置,所述装置包括:页面监控模块,用于 当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面,以及,根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面;路径查询模块,用于查找所述第三页面和所述第四页面之间是否存储有跳转路径,所述跳转路径包括从所述第三页面跳转到所述第四页面的N个映射关系,如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面。
其中,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数。
第五方面,本申请还提供一种终端设备,该终端设备包括至少一个处理器和存储器,其中所述存储器,用于存储计算机程序指令,和/或,数据;所述至少一个处理器,用于执行所述指令,以实现前述第一方面及第一方面各种实现方式中的方法,和,第二方面及第二方面各种实现方式中的方法。
可选的,所述终端设备还包括接口电路,所述接口电路用于为所述至少一个处理器提供指令和/或数据。
可选的,所述至少一个处理器和处理器可以集成在一个处理芯片或者芯片电路中。
可选的,所述终端设备包括但不限于手机、PC、平板电脑。
第六方面,本申请还提供了一种计算机可读存储介质,该存储介质中存储有指令,使得当指令在计算机或处理器上运行时,可以用于执行前述第一方面以及第一方面各种实现方式中的方法,和,前述第二方面以及第二方面各种实现方式中的方法。
另外,本申请还提供了一种计算机程序产品,该计算机程序产品包括计算机指令,当该指令被计算机或处理器执行时,可实现前述第一方面以及第一方面各种实现方式中的方法,和,前述第二方面以及第二方面各种实现方式中的方法。
需要说明的是,上述第二方面至第六方面的各种实现方式的技术方案所对应的有益效果与前述第一方面以及第一方面的各种实现方式的有益效果相同,具体参见上述第一方面以及第一方面的各种实现方式中的有益效果描述,不再赘述。
附图说明
图1为本申请提供的一种响应于用户下达的语音指令的页面跳转流程图;
图2为本申请提供的一种终端设备的结构示意图;
图3为本申请提供的一种终端设备的结构框图;
图4为本申请提供的一种页面特征保存方法的流程图;
图5为本申请提供的一种判断两个页面是否相同的流程图;
图6a为本申请提供的一种同一个activity的示意图;
图6b为本申请提供的一种微信
Figure PCTCN2022079325-appb-000002
页面通信录的页面示意图;
图6c为本申请提供的一种淘宝
Figure PCTCN2022079325-appb-000003
页面的商品详情页的示意图;
图7a为本申请提供的一种Android系统中view树的结构示意图;
图7b为本申请提供的一种从聊天页面跳转到通信录页面的示意图;
图8a为本申请提供的一种存储不同页面的标签、跳转操作关系的示意图;
图8b为本申请提供的一种从华为商城
Figure PCTCN2022079325-appb-000004
的商品详情页面返回至主页面的操作流程图;
图8c为本申请提供的一种学习并存储两个页面之间映射关系的示意图;
图8d为本申请提供的一种学习并存储图1所示的页面跳转流程的映射关系的示意图;
图9a为本申请提供的一种用户从第三页面跳转到第四页面的示意图;
图9b为本申请提供的一种存储用户新增的用户操作的页面映射关系的示意图;
图10为本申请提供的一种存储组件a的关系示意图;
图11a为本申请提供的一种页面跳转方法的流程图;
图11b为本申请提供的一种语音控制跨应用APP之间页面跳转的流程图示意图;
图12为本申请提供的一种芯片系统的结构示意图。
具体实施方式
为了使本技术领域的人员更好地理解本申请实施例中的技术方案,下面结合附图对本申请实施例中的技术方案作详细的说明。
在对本申请实施例的技术方案说明之前,首先对本申请实施例的应用场景进行说明。
本申请的技术方案可应用于一种终端设备,该终端设备中可加载至少一个Android应用程序包(Android application package,APK),并利用所述至少一个APK实现各种服务功能,比如语音控制APP功能。所述APK包括语音助手或者语音程序包。
其中,所述终端设备包括以下任意一种设备,比如手机、笔记本电脑、平板电脑、个人计算机(personal computer,PC)、个人数字助理(personal digital assistant,PDA),可折叠终端、车载终端、具备无线通讯功能的可穿戴设备(例如智能手表或手环)、用户设备(user device)或用户设备(user equipment,UE)、以及增强现实(augmented reality,AR)或者虚拟现实(virtual reality,VR)设备等。本申请的实施例对终端设备的具体设备形态不做限定。另外,上述各种终端设备中包括但不限于搭载苹果(IOS)、安卓(Android)、微软(Microsoft)或者其他操作系统。
以上述终端设备为一手机举例,参见图2示出了一种终端设备的结构示意图。比如手机终端,该手机终端可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,USB)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,射频模块150,通信模块160,音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,传感器模块180,按键190,马达191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,SIM)卡接口195等。
可以理解的是,本申请实施例示意的结构并不构成对手机的具体限定。在本申请另一些实施例中,手机可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
处理器110可以包括一个或多个处理单元,例如:处理器110可以包括应用处理器(application processor,AP),调制解调处理器,图形处理器(graphics processing unit,GPU),图像信号处理器(image signal processor,ISP),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,DSP),基带处理器,和/或神经网络处理器(neural-network processing unit,NPU)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
处理器110中还可以设置存储器,用于存储程序指令和数据。在一些实施例中,处理 器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从所述存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
在一些实施例中,处理器110可以包括一个或多个接口。接口可以包括集成电路(inter-integrated circuit,I2C)接口,集成电路内置音频(inter-integrated circuit sound,I2S)接口,脉冲编码调制(pulse code modulation,PCM)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,UART)接口,移动产业处理器接口(mobile industry processor interface,MIPI),通用输入输出(general-purpose input/output,GPIO)接口,用户标识模块(subscriber identity module,SIM)接口,和/或通用串行总线(universal serial bus,USB)接口等。
其中,I2C接口是一种双向同步串行总线,包括一根串行数据线(serial data line,SDA)和一根串行时钟线(derail clock line,SCL)。在一些实施例中,处理器110可以包含多组I2C总线。处理器110可以通过不同的I2C总线接口分别耦合传感器模块180、充电器、闪光灯、摄像头193等。I2S接口可以用于音频通信。在一些实施例中,处理器110可以包含多组I2S总线。处理器110可以通过I2S总线与音频模块170耦合,实现处理器110与音频模块170之间的通信。
PCM接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与通信模块160可以通过PCM总线接口耦合。UART接口是一种通用串行数据总线,用于异步通信。该总线可以为双向通信总线。它将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,UART接口通常被用于连接处理器110与通信模块160。MIPI接口可以被用于连接处理器110与显示屏194、摄像头193等外围器件。在一些实施例中,处理器110和摄像头193通过摄像头串行接口(camera serial interface,CSI)通信,实现手机的拍摄功能。处理器110和显示屏194通过显示屏串行接口(display serial interface,DSI)通信,实现手机的显示功能。
USB接口130是符合USB标准规范的接口,具体可以是Mini USB接口,Micro USB接口,USB Type C接口等。USB接口130可以用于连接充电器为手机充电,也可以用于手机与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。该接口还可以用于连接其他终端设备,例如AR设备等。
可以理解的是,本申请实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对手机的结构限定。在本申请另一些实施例中,手机也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过USB接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过手机的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备供电。
电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193和通信模块160等供电。电源管理模块141还可以用于 监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
手机的无线通信功能可以通过天线1,天线2,射频模块150,通信模块160,调制解调处理器以及基带处理器等实现。其中,天线1和天线2用于发射和接收电磁波信号。手机中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。
射频模块150可以提供应用在手机上的包括2G/3G/4G/5G等无线通信的解决方案。射频模块150可以包括至少一个滤波器,开关,功率放大器,低噪声放大器(low noise amplifier,LNA)等。射频模块150可以由天线1接收电磁波,并对接收的电磁波进行滤波,放大等处理,传送至调制解调处理器进行解调。射频模块150还可以对经调制解调处理器调制后的信号放大,经天线1转为电磁波辐射出去。在一些实施例中,射频模块150的至少部分功能模块可以被设置于处理器110中。在一些实施例中,射频模块150的至少部分功能模块可以与处理器110的至少部分模块被设置在同一个器件中。
调制解调处理器可以包括调制器和解调器。其中,调制器用于将待发送的低频基带信号调制成中高频信号。解调器用于将接收的电磁波信号解调为低频基带信号。随后解调器将解调得到的低频基带信号传送至基带处理器处理。低频基带信号经基带处理器处理后,被传递给应用处理器。在一些实施例中,调制解调处理器可以是独立的器件,也可以独立于处理器110,与射频模块150或其他功能模块设置在同一个器件中。
通信模块160可以提供应用在手机上的包括无线局域网(wireless local area networks,WLAN)(如无线保真(wireless fidelity,WiFi)网络),蓝牙(Bluetooth,BT),全球导航卫星系统(global navigation satellite system,GNSS),调频(frequency modulation,FM),近距离无线通信技术(near field communication,NFC),红外技术(infrared,IR)等无线通信的解决方案。通信模块160可以是集成至少一个通信处理模块的一个或多个器件。通信模块160经由天线2接收电磁波,将电磁波信号调频以及滤波处理,将处理后的信号发送到处理器110。通信模块160还可以从处理器110接收待发送的信号,对其进行调频,放大,经天线2转为电磁波辐射出去。
在一些实施例中,手机的天线1和射频模块150耦合,天线2和通信模块160耦合,使得手机可以通过无线通信技术与网络以及其他设备通信。所述无线通信技术可以包括全球移动通讯系统(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技术等。所述GNSS可以包括全球卫星定位系统(global positioning system,GPS),全球导航卫星系统(global navigation satellite system,GLONASS),北斗卫星导航系统(beidou navigation satellite system,BDS),准天顶卫星系统(quasi-zenith satellite system,QZSS)和/或星基增强系统(satellite based augmentation systems,SBAS)。
在本申请实施例中,显示屏1~N 194中可包括显示器和触控器件。显示器用于向用户输出显示内容,触控器件用于接收用户在显示屏上输入的触摸事件。在一些实施例中,手机可以包括1个或N个摄像头193,N为大于1的正整数。
在手机中,传感器模块180可以包括陀螺仪传感器,加速度传感器,压力传感器,气压传感器,磁传感器(例如霍尔传感器),距离传感器,接近光传感器,指纹传感器,温度传感器,触摸传感器或环境光传感器等一项或多项,本申请实施例对此不做任何限制。
其中,视频编解码器用于对数字视频压缩或解压缩。手机可以支持一种或多种视频编解码器。这样,手机可以播放或录制多种编码格式的视频,例如:动态图像专家组(moving picture experts group,MPEG)1,MPEG2,MPEG3,MPEG4等。
NPU为神经网络(neural-network,NN)计算处理器,通过借鉴生物神经网络结构,例如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过NPU可以实现手机的智能认知等应用,例如:图像识别,人脸识别,语音识别,文本理解等。
外部存储器接口120可以用于连接外部存储卡,例如Micro SD卡,实现扩展手机的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。例如将音乐,视频等文件保存在外部存储卡中。
内部存储器121可以用于存储计算机可执行程序代码,所述可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,从而执行手机的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储手机使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,UFS)等。
手机可以通过音频模块170,扬声器170A,受话器170B,麦克风170C,耳机接口170D,以及应用处理器等实现音频功能。例如音乐播放,录音等。
音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
扬声器170A,也称“喇叭”,用于将音频电信号转换为声音信号。手机可以通过扬声器170A收听音乐,或收听免提通话。
受话器170B,也称“听筒”,用于将音频电信号转换成声音信号。当手机接听电话或语音信息时,可以通过将受话器170B靠近人耳接听语音。
麦克风170C,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170C发声,将声音信号输入到麦克风170C。手机可以设置至少一个麦克风170C。在另一些实施例中,手机可以设置两个麦克风170C,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,手机还可以设置三个,四个或更多麦克风170C,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
耳机接口170D用于连接有线耳机。耳机接口170D可以是USB接口130,也可以是3.5mm的开放移动电子设备平台(open mobile terminal platform,OMTP)标准接口,或者,美国蜂窝电信工业协会(cellular telecommunications industry association of the USA,CTIA)标准接口。
按键190包括开机键,音量键等。按键190可以是机械按键。也可以是触摸式按键。手机可以接收按键输入,产生与手机的用户设置以及功能控制有关的键信号输入。
马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。例如,作用于不同应用(例如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏1~N 194不同区域的触摸操作,马达191也可对应不同的振动反馈效果。不同的应用场景(例如:时间提醒,接收信息,闹钟,游戏等)也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
SIM卡接口195用于连接SIM卡。SIM卡可以通过插入SIM卡接口195,或从SIM卡接口195拔出,实现和手机的接触和分离。手机可以支持1个或N个SIM卡接口,N为大于1的正整数。
另外,在上述部件之上,运行有操作系统。例如苹果公司所开发的iOS操作系统,谷歌公司所开发的安卓Android开源操作系统,微软公司所开发的Windows操作系统等。在该操作系统上可以安装运行应用程序。
在上述终端设备中,还安装有第三方语音控件/语音模块程序包,比如APK,可对用户下达的语音指令提供相应的服务。其中,语音控件/语音模块可通过模拟点击实现跨页面或跨应用的一系列操作,模拟点击是将要实现的操作通过约定的形式写在配置文件上,当需要执行操作时,从配置文件上读取该操作以及组件,然后执行。
如图1中,在“华为商城
Figure PCTCN2022079325-appb-000005
”APP中点击“我的”操作,可按照如下的模拟点击实现,示例性地,JSON(JavaScript Object Notation,JS对象简谱)中记录,动作action:click,Text:“我的”;ActivityName(视图名字):“com.huawei.huaweistore.MainActivity”。执行时:在com.huawei.huaweistore.MainActivity下找到文本为”我的”的组件,再执行点击动作click。这种预先将执行操作写在配置文件的方法,虽然可以实现语音控制功能,但是同时也会存在以下问题:
1.模拟点击需要人工配置文件,且人工配置文件(如JSON)的功能有限,需要依赖第三方的实现,若第三方应用APP升级后,则恐怕导致原来配置的执行操作程序无法使用。如将“我的”更名为“我的商城”,则变更后点击“我的商城”图标,会导致页面跳转功能无法执行。
2.模拟点击的执行操作一般从固定位置(比如首页)开始执行,在中间过程中执行时都需要先关闭APP,再重启该APP,影响用户体验。
为了解决上述问题,本申请实施例利用页面跳转图来构建各个页面之间的映射关系,从而实现从当前源页面直接跳转到目的页面,即实现在任意页面按照用户习惯去执行跨页面/跨应用间的动作,无需重启APP,也无需人工配置文件以及第三方配合,节省人力同时还提高了用户体验。
具体地,参见图3,为上述终端设备所对应的虚拟装置的结构框图。该装置包括:处理模块10、路径查询模块20和存储介质30。其中,所述处理模块10中包括:页面监控模块101、数据操作102、页面比较模块103、页面提取模块104、页面跳转更新模块105和组件查询模块106。另外,上述处理模块10还可以包括其他更多或更少模块,本实施例 对此不予限制。
其中,各个模块的功能和作用如表1所示。
表1,模块功能对照表
Figure PCTCN2022079325-appb-000006
具体地,页面监控模块101监控到用户有在终端设备的显示屏上执行用户操作,比如第一操作后,将用户操作前和操作后的两个页面发送到页面比较模块103。所述第一操作包括但不限于点击、滑动、敲击、拖拽等。例如在用户执行第一操作前的页面为第一页面,执行完第一操作后的页面为第二页面。
页面比较模块103接收后,比较操作前和操作后的两个页面是否为同一个页面,如果是,则此次用户操作未产生新的页面,即页面未发生跳转;如果否,即不是同一个页面,则利用页面提取模块104提取用户第一操作前、第一操作后两个页面的特征信息,得到第一页面的页面特征和第二页面的页面特征,并将这两个页面的页面特征发送至页面跳转更新模块105。
页面跳转图更新模块105,接收第一页面和第二页面的页面特征后,查询第一页面和第二页面之间是否有映射关系,即是否存储有从第一页面到第二页面的跳转路径,如果没有存储,则表示该用户的第一操作是新增操作,数据库中未存储有该第一操作,则存储该映射关系,包括第一页面和第二页面的页面特征,以及所述第一操作的操作特征;如果已经存储有所述映射关系,则进一步地识别用户的所述第一操作是否已经存储。
具体地,通过组件查询模块106查询此次的第一操作是否已经存储过,因为从第一页面到第二页面之间可能会有多个操作,如果有存储该第一操作的操作特征,则直接按照该存储的第一操作,以及所述映射关系将第一页面跳转到第二页面;如果没有存储,则存储该第一操作的操作特征,即学习并存储了用户的第一操作,建立了从第一页面的页面跳转和第一操作的操作特征绑定后,跳转到第二页面的跳转路径。
在使用时,路径查询模块20可在任意页面查询到任一应用APP的跳转路径,即从第一页面和第一操作的操作特征,到第二页面的映射关系,从而实现按照用户操作习惯完成 页面跳转操作。
本方法可自主地学习用户的操作习惯,并存储用户的操作,即将第一页面和用户的第一操作作为输入,将第二页面作为输出,建立从输入到输出之间的映射关系,从而避免按照预先设置的程序配置文件进行页面跳转操作。
下面对本实施例提供的一种页面特征的保存方法做详细介绍。
参见图4,为本申请实施例提供的一种页面特征的保存方法的流程图,该方法可应用于前述任意一种终端设备,所述方法包括:
401:在终端设备的显示屏的第一页面上接收用户的第一操作。所述第一操作包括但不限于用户点击、滑动、敲击、拖拽等操作,所述第一操作的操作特征为提取的用户点击、滑动、敲击、拖拽等操作的数据或信息。
具体地,终端设备的页面监控模块101利用辅助功能获取所述第一操作。其中,所述辅助功能可以是一个Android系统提供的一种服务,比如Android系统的AccessibilityService功能,该辅助服务提供了增强的用户页面,可识别出用户在终端设备上的第一操作,从而帮助残障人士或者可能暂时无法与设备充分交互的人们实现人机交互,比如语音控制等。
页面监控模块101还可以获取当前应用APP的View树、响应于所述第一操作的组件等信息。
402:响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同。
403:保存第一映射关系,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有第一映射关系。
所述第一页面的页面特征用于标识所述第一页面,所述第二页面的页面特征用于标识所述第二页面,所述第一操作的操作特征为从所述第一页面到所述第二页面的跳转路径。所述第一映射关系为“第一页面的页面特征和第一操作的操作特征”与“第二页面的页面特征”之间的对应关系。
可选的,将所述第一映射关系保存在存储介质30中。
终端设备的页面监控模块101当监控到用户的第一操作后,将用户在所述第一操作前、第一操作后的两个页面输入到页面比较模块103,页面比较模块103判断两个页面是否为同一个页面,即用户的第一操作是否引起页面发生变化。
具体地,如图5所示,步骤402中获取所述第一操作后得到的第二页面后,判断第一页面和第二页面是否相同的方法包括:
S1:分别获取第一页面和第二页面的视图(activity)名字。
其中,activity是一个Android的应用组件,它提供屏幕进行交互。每个activity都会获得一个用于绘制其用户页面的窗口(window),窗口可以充满整个屏幕,或者也可以小于屏幕并浮动在其他窗口之上。
终端设备在系统测试阶段通过测试APP获得每个应用的activity名字,包括所述第一视图名字和第二视图名字,其中第一视图名字为第一页面的activity名字,第二视图名字为第二页面的activity名字,并且每个视图(activity)名字中可能会有很多标签(Tab)页, 每个Tab页可为一个页面,三方实现Tab页的点击各有特性,可能不遵从安卓控件的规则。因此,可以从计算机视觉(ComputerVision,CV)角度去判断Tab页是否相同。
例如图6a所示的“华为商城”主页面中,“分类”、“发现”、“购物车”和“我的”组件,都具有相同的activity名字,比如他们的activity名字都是com.huawei.huaweistore.Main Activity。其中,“分类”所对应的Tab页标记为“Tab 1”,“发现”所对应的Tab页标记为“Tab 2”,“购物车”所对应的Tab页标记为“Tab 3”,“我的”所对应的Tab页标记为“Tab 4”。
类似的,在图6b所示的微信
Figure PCTCN2022079325-appb-000007
页面中,“微信”的Tab页为Tab1“通讯录”的Tab页为Tab2、“信息”的Tab页为Tab3、“购物车”的Tab页为Tab4。这4个Tab页面的activity名字都是com.tencent.mm.MainActivity。
此外,另一种activity名字相同的情况是,同一个activity名字下的不同窗口(window),例如,图6c所示,弹出的商品小窗口(图中标注为window1,是一个可点击的页面),与后面被覆盖的窗口,即(图中标注为window2,被覆盖的页面),这两个页面的activity名字都是com.taobao.taobao.DetailActivity,但是他们的窗口不同。
S2:判断所述第一页面和所述第二页面的activity名字是否相同。其中,所述第一页面的activity名字为第一视图名字,所述第二页面的activity名字为第二视图名字。
上述图6a至图6c中任意一个视图中存在不同的Tab页,但是activity名字都是同一个名字;但是图6a和图6b所示的两个页面的activity名字不同,图6a所示华为商城的页面的activity名字是“com.huawei.huaweistore.MainActivity”,而图6b所示微信
Figure PCTCN2022079325-appb-000008
页面的activity名字是“com.tencent.mm.MainActivity”,所以确定第一页面和第二页面不相同。
同理地,图6b与图6c所示的页面也不是同一页面,因为图6c的淘宝
Figure PCTCN2022079325-appb-000009
所对应的activity名字是com.taobao.taobao.DetailActivity,其与前面两个页面的视图名字都不同。
返回到步骤S5,上述方法还包括:
S3:如果两个页面的activity名字相同,则判断所述第一页面和所述第二页面是否都有Tab页。
S4:接前述S3,如果是,即所述第一页面和第二页面都包含有至少一个标签(Tab)页,则判断第一页面的第一Tab页和第二页面的第二Tab页是否相同,其中第一Tab页是用户执行所述第一操作前的标签页,所述第二Tab页是用户执行所述第一操作后的标签页。
比如,图6a所示,第一页面的第一视图名字为“com.huawei.huaweistore.MainActivity”,该第一视图名字目录下包含4个Tab页,分别是“分类”、“发现”、“购物车”和“我的”,如果当前第一视图名字目录下的第一Tab页是1,表示“分类”的Tab页,第二页面的第二Tab页是4,表示“我的”的Tab页,则此时确定所述第一Tab页与所述第二Tab页不同。
S5:接前述S4,如果否,即所述第一Tab页和所述第二Tab页不相同,则确定所述第一页面和所述第二页面不相同。
另外,在前述步骤S2中,判断如果第一页面和第二页面的activity名字不相同,则确定所述第一页面和所述第二页面不相同,即步骤S5。
还包括:S6:接前述S3,如果否,即所述第一页面中没有Tab页,和/或,所述第二页面中没有Tab页,则分别遍历所述第一页面和所述第二页面的观察(view)树,比较第一页面的view树和第二页面的view树的相似度。
其中,所述第一页面的view树包含第一页面的所有元素和各个元素之间的关联关系, 类似的,第二页面的view树包含第二页面的所有元素和各个元素之间的关联关系。可选的,所述view树包括RootView,ViewGroup和view等等。
如图7a所示,为安卓系统中的一个view树的结构示意图。该view树中展示一个Activity下的拓扑结构,该Activity中包含至少一个Window,所述Window可以理解为终端设备上显示的页面,比如手机窗(PhoneWindow),其中Activity负责管理Window。此外,每个Window都对应有一个根View,又称window的视图DecorView。DecorView是一个框架结构(FrameLayout),用于添加Activity的布局文件,即根视图(RootView)。与RootView相连接的是不同的View节点,比如ViewGroupA,ViewGroupB,View1和View2等。每个Activity通过不同的View和/或ViewGroup显示各种应用APP的组件。
比较所述第一页面和第二页面的view树是指,逐层比较第一页面的RootView中的Activity布局文件,与第二页面的RootView中的Activity布局文件之间的差异程度,比如第一页面与第二页面相比较,第二页面只有View1,没有View2,则在Activity的布局文件1中4个模块中两个页面相比较第二页面比第一页面少一个View组件,则相似度为1-25%=75%,完全相似时,两个页面的相似度为100%。本实施例中假设所述第一页面和所述第二页面view树的相似度为75%。
其中,所述view树的相似度view树中元素的数量、各个元素之间的关系,以及类型等相关。所述view树中的元素包括view、ViewGroup等,各个元素之间的关系可以是父子关系,或者并列的父与父,或子与子关系。所述类型包括view和ViewGroup等。
S7:接前述S6,判断所述第一页面和所述第二页面的view树的相似度是否超过阈值。
S8:接前述S7,如果是,即所述相似度超过所述阈值,则确定所述第一页面和所述第二页面相同。否则,如果所述相似度小于等于所述阈值,则表明两个页面之间的相似度不高,进而确定所述第一页面和所述第二页面不相同。
本示例中,假设阈值为80%,则根据S7中获得的相似度75%<80%,则确定所述第一页面和所述第二页面不相同;如果S7中得到两个页面的相似度大于80%,则确定第一页面和所述第二页面相同。
应理解,上述确定的相似度还可以是一个范围区间,比确定两个页面的view树的相似度为70%~75%,则进一步地判断该范围区间是否超过所述阈值。
本实施例中,通过对不同页面的activity名字、Tab页以及view树遍历可以确定两个页面是否是同一个页面,进而确定用户的第一操作是否产生的页面变化。
另外,本实施例还可以采用其他方法来确定第一页面和第二页面是否是同一个页面,本实施例对此不做限制。
在判断所述第一页面和所述第二页面不同时,即对应图5的步骤S8,提取所述第一页面和所述第二页面的页面特征,一种实现方式是,使用mobilenet分类模型对采集的前top100APP进行训练,得到页面的特征,并将该页面特征作为页面的标签;然后,再将打好标签的第一页面和第二页面输出到页面跳转更新模块105。其中,mobilenet分类是Google提出的一种小巧而高效的AI模型,该AI模型可用于完成图片分类等任 务。
例如图7b中的两个页面(Page),页面1和页面2,都是同一个activity名字,但是他们的Tab页不同,所以在步骤S5中判断这两个页面是不同的页面,然后标记第一页面(Page1)的页面特征为“聊天页面”,第二页面(Page2)的页面特征为“通讯录页面”。
另外,还可以对其他页面进行标记,比如对于任意应用APP,比如“华为商城”、“淘宝
Figure PCTCN2022079325-appb-000010
”或者“微信
Figure PCTCN2022079325-appb-000011
”等APP中,每一个页面的页面特征对应都可以标记为一个“Page”,比如从页面1至页面N。
在一示例中,比如在图1的“第3步”用户点击“我的”,则页面监控模块输入的是:com.huaweistore.huawei.navigation.NavigationTabIndicatorView组件相应的点击事件,本实施例中采用这个view的哈希值(hashcode)作为每个view的唯一标识。
如输入了activity A内点击组件a跳转到了页面activity B,更新逻辑如下:首先,终端设备使用页面比较模块103查找activity A与activity B对应属于哪个页面(Page),如未找到则为新的映射关系,直接存储;其次,如果从activity A当前页面到activity B的目标页面之间存在映射关系,即映射关系已存储,需要判断组件a是否是一个新的用户操作,具体地,可使用组件查询模块106来决定用户的操作是新增还是已存储。
页面跳转更新模块106,用于存储页面跳转路径,即所述第一映射关系,页面跳转图存储形式如图8a所示,每个activity包含一个或多个页面,比如页面0至页面N。每个页面有一个或多个操作(TransOperate)可以跳转到另一个页面。每个操作记录的是响应操作的组件以及操作方式。比如activity C中从一个页面跳转到另一个activity D的操作路径TransOperate清单List1中包括m种操作,m大于等于1,且为正整数。类似的,从activity A跳转到activity B的操作路径清单为“List2<TransOperate>”。每个页面都是经过特征提取后被打上的标签,从而建立从一个activity的页面到另一个activity的页面之间的跳转路径,或者称为“映射关系”。其中,所述页面0至页面N为页面标识,用于唯一标识该页面。
举例说明,终端设备学习用户的一次操作过程如下,如图8b和图8c所示,当前第一页面的activity名字为com.huawei.huaweistore.DetailActivity,假设命名为“activity A”第一页面为页面A0,用户点击左上角返回(暂且命名为TransOperate1)后,进入“华为商城”的主页面,参见图8b的第二页面,该第二页面为页面B0,且所述第二页面所对应的activity名字为com.huawei.huaweistore.MainActivity,假设命名为“activity B”与第一个页面的activity名字不相同,进而确定第一页面(页面A0)与第二页面(页面B0)不相同。
其中,页面A0为第一页面的第一页面标识,activity A为所述第一页面对应的第一视图名字。类似的,页面B0为第二页面的第二页面标识,activity B为所述第二页面对应的第二视图名字。
页面监控模块101识别出这个变化后,将页面A0和页面B0输入到页面比较模块103,页面比较模块103根据activity名字和view树判断这两个页面是不同的页面。然后,页面提取模块104提取这两个页面的页面特征,比如提取后两个页面的页面特征分别是“聊天界面”和“打电话”,并将这两个页面的页面特征输入到页面跳转更新模块 105。
页面跳转更新模块105接收后,先在数据库中查找名字为activity A的存储,如果没有找到,则将图8c的页面编号为activity A目录下的页面A0。即确定要跳转的源页面为activity A的页面A0。然后在数据库中继续查找名字为activity B的存储中是否存储有页面B0,如果没找到,则确定或标记activity B目录下的页面B0,以及确定要跳转的目的页面为activity B的页面B0,并且数据库中未存储有目的页面,也未存储从源页面到目的页面的映射关系。由于在数据库中没有存储映射关系,所以,当前此映射关系为用户新的操作,记为TransOperate1,并将该TransOperate1存储到跳转路径的列表中,即清单List<操作TransOperate>,从而完成从activity A目录下的一个页面A0跳转到另一个activity B中页面B0的学习过程。
其中,所述数据库可以是终端设备本地的数据库,也可以是云端服务器下发给终端设备的数据库,或者是云端服务器中的数据库,本实施例对此不予限制。所述数据库中记录并存储有至少一个应用APP所包含的全部或部分页面的相关信息,比如页面的视图名字,Tab页,view树以及特征信息等。
同理地,从图1的“第3步”跳转到“第4步”的学习过程包括:
终端设备的页面监控模块101通过数据操作102检测到用户点击了“我的”(暂且将该点击操作命名为TransOperate2),得到图1所示的“第4步”的操作。将点击“我的”操作前和操作后的两个页面分别输入到页面比较模块103;页面比较模块103判断出此次操作的前后两个页面的activity名字相同,即activity名字均为com.huawei.huaweistore.MainActivity,即activity A,但Tab页面不同,所以仍然属于不同的页面,需要存储。
页面提取模块104对这两个页面打标签后输出到页面跳转更新模块105,页面跳转更新模块105根据activity B去查找页面,找到一个activity B目录下的页面B0。然后比较页面B0与点击“我的”前“第3步”的页面为同一个页面,因此确认了要跳转的源页面为activity B的页面B0,然后根据点击操作后的名字activity B去查找是否已存储的页面B1,如果未找到页面B1,则需要存储activity B下的页面B1,并命名为activity B目录下的页面B1。因此确认了要跳转的目的为该页面B1。由于此映射关系为新增的操作,因此也直接存储该操作,即又可以表示为跳转路径TransOperate2。
同理地,从图1的“第4步”跳转到“第5步”的学习过程包括:当识别到用户点击“待收货”后,该操作假设命名为TransOperate3。判断“第4步”的activity名字与“第5步”的activity名字不同。假设当点击“待收货”后得到的页面的activity名字为com.huawei.huaweistore.productActivity”,与“第4步”的activity名字“com.huawei.huaweistore.MainActivity”不同,且命名为“activity C”,同理按照前述学习过程进行比较和存储activity C目录下的页面C0,至此存储形式如图8d所示。
本实施例提供的方法,对用户的操作前和操作后的产生的不同页面进行特征提取,并打标签,学习和存储用户的操作习惯,即从一个页面的页面特征与用户操作的操作特征建立绑定关系后,与目的页面(待跳转的页面)之间建立映射关系,从而当再次执行该操作时,可以按照用户的操作习惯去执行意图,即可在任意页面按照用户操作习惯去执行跨页面的意图,无需重启APP,无需配置文件,无需三方配合,提高了页 面跳转效率和用户体验。
本实施例还提供了一种页面跳转方法,用于使用已经存储的用户操作,从而提高页面跳转效率,具体地,方法包括:
终端设备的页面监控模块101检测到用户在第三页面上的第二操作,响应于所述第二操作在显示屏上显示第四页面,如果所述第三页面和所述第四页面不同,则查找是否已经存储有从所述第三页面到所述第四页面的映射关系,如果是,则按照所述映射关系直接从所述第三页面跳转至所述第四页面。
例如图9a所示,当检测到用户点击“返回”的第二操作时,假设该第二操作为“TransOperate 4”,如从图9a所示的第三页面点击左下角的“返回”,返回到第四页面,则页面跳转模块105获取所述第三页面、所述第四页面和所述第二操作TransOperate 4,假设第三页面所对应的activity名字为activity A,且在activity A目录下存储的页面有页面A0,根据actrivity A查找存储的所有页面中是否存储有页面A0,如果查找到页面A0,则确定该页面A0与所述第三页面为同一个页面,进而确定了要跳转的源页面为activity A的页面A0。
同理地,确定了要跳转的目的页面为activity B的页面B0,并且判断是否存储有从所述页面A0到页面B0的映射关系,即判断是否存储有TransOperate 4,如果未存储,则存储该映射关系,即跳转路径TransOperate 4,如图9b所示,终端设备的本地数据库中仅存储了TransOperate 1,未存储有TransOperate 4,所以该第二操作TransOperate 4是用户新增的操作,将该TransOperate4添加到List<TransOperate>中。如果已经存储有TransOperate 4,则直接按照该TransOperate 4的映射关系将第三页面(页面A0)跳转到第四页面(页面B0)。
本方法对终端设备的每个页面可通过学习用户的习惯进行构建与更新,从而实现在任意页面查询特定应用的标签页面的路径与组件。
进一步地,在上述建立并存储第三页面到第四页面的映射关系之后,方法还包括:终端设备查询并按照存储的映射关系执行页面跳转的方法步骤。具体地,如图10所示,方法包括:
终端设备的组件查询模块106获取组件a的哈希值,通过查找组件a对应于在存储的页面里面的hashcode,来判断这个hashcode是否在存储的List清单中,从而判断该组件a是否是新增。具体地,查找方法包括:组件查询模块106分别获取存储的页面A0与更新页面B0的Decorview,根据组件a在更新后的页面B0的层次与特征,层层查找存储的页面A0的组件,如果查找到有结构和层次特征相匹配的组件,则组件a是新增组件,将该组件a存储在存储单元中。
需要说明的是,上述实施例中例举了同一应用APP中页面的跳转方法,按照上述方法还可以学习和实现不同应用APP之间的页面跳转,其中,每个应用APP中可以包含多个activity,比如“华为商城”。“淘宝”、“微信”APP中的每个应用可以包含多个activity,每个activity又包含至少一个页面,每个页面可通过标签进行标识。每个所述标签可对应一个页面的页面功能。当不同应用APP之间进行页面跳转时,如从当前页面(淘宝的商品详情页)到微信的通讯录页面的跳转时,路径查询模块20通过存储的所有映射关系图论的深度优先遍历进行查询,同时设置最大深度兼顾效率,以实现不 同应用APP间的页面跳转。
在一些实施例中,本实施例还提供了另一种页面跳转方法,如图11a所示,该方法包括:
601:当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面;
602:根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面。
603:查找所述第三页面和所述第四页面之间是否存储有跳转路径,所述跳转路径包括从所述第三页面跳转到所述第四页面的N个映射关系。
其中,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数。
当N=1时,所述当前页面为第三页面,所述当前页面的下一个页面是第四页面,所述映射关系包括:第三页面的页面特征,第二操作的操作特征和第四页面的页面特征。所述第二操作为用户从第三页面进入到第四页面的操作。所述第二操作包括但不限于点击、滑动、敲击、拖拽等。
可选的,一种实施方式是,按照图的遍历的方法查找是否存储所述跳转路径。比如通过图论的深度优先遍历进行查找,同时设置最大深度兼顾效率。
604:如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面。
605:如果否,则跳转失败,以及显示跳转失败的指示信息。
例如,参见图11b,当终端设备接收用户下达内容为“分享给微信的老婆”的语音指令时,在终端设备上执行的页面跳转流程图,该过程从“淘宝”的详情页面1开始查找每一步跳转是否存储有从当前页面到下一个页面的映射关系,如果是,则按照该映射关系从当前页面跳转到下一个页面,比如终端设备预先学习并保存了从微信详情页到微信分享的一系列操作流程,则当接收到用户下达的语音指令时,按照学习的用户操作流程,从第一步开始经过8次跳转TransOperate(即Step1至Step8)到达目的页面9,其中每一次跳转Step都经历了前述实施例图4和图5所示的学习和查找过程,即从页面1至页面9的跳转过程中学习并存储了至少8(N=8)个映射关系,对应9个不同的页面。本实施例对从页面1跳转至页面9的具体过程不再赘述。
本方法可自动学习用户操作APP的习惯,从而构建出页面跳转图。同时为APP的每个页面打上了标签,使用时只需要查询标签即可,无需重启APP,无需配置文件,无需三方配合,节省人力并提高了用户体验。
需要说明的是,本申请实施例中涉及的一些操作界面截图,比如图1、图6a、图6c、图7b、图8b、图9a和图11b等界面图,在这些图中涉及的文字、符号、图案等内容,仅仅是操作界面的一种示意,本申请对其中可能存在的文字、符号、图案等内容不做限制。
下面介绍与上述方法本实施例相对应的装置实施例,本实施例提供了一种页面特征的保存装置,该装置的结构如前述图3所示,该装置包括:处理模块10、路径查询模块20和存储介质30。其中,所述处理模块10中包括:页面监控模块101、数据操 作102、页面比较模块103、页面提取模块104、页面跳转更新模块105和组件查询模块106。
其中,存储介质30可以是至少一个存储单元。
上述各个模块的功能和作用可见前述表1描述。
一种可能的实施方式是,页面监控模块101,用于在显示屏的第一页面上接收用户的第一操作;页面跳转更新模块105,响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同。存储单元,用于保存第一映射关系,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有映射关系。
可选的,在另一种可能的实施方式中,页面比较模块103,用于比较所述第一页面和所述第二页面是否相同,进一步地,所述第一页面和所述第二页面不同,包括:
所述第一页面的第一视图名字和所述第二页面的第二视图名字不同;
或者,所述第一视图名字和所述第二视图名字相同,所述第一视图名字和所述第二视图名字的目录中均包含标签页,且所述第一视图名字目录中的第一标签页与所述第二视图名字目录下的第二标签页不相同,所述第二标签页是执行所述第一操作后的页面。
其中,所述标签页为Tab页,每个activity中可以包括一个或多个Tab页。
可选的,在又一种可能的实施方式中,页面比较模块103,还用于在所述第一页面的第一视图名字和所述第二页面的第二视图名字相同,且所述第一视图名字和所述第二视图名字的目录中至少有一个不包含标签页的情况下,获取所述第一页面和所述第二页面的view树,比较所述第一页面的view树和所述第二页面的view树的相似度;以及当所述相似度未超过阈值时,确定所述第一页面和所述第二页面不同。
另外,如果第一页面和第二页面的view树的相似度超过所述阈值,则确定这两个页面相同。
可选的,在又一种可能的实施方式中,所述组件查询模块106,用于获取所述第一页面所对应的第一视图名字和第一页面标识,在数据库中查找是否存储有与所述第一视图名字和所述第一页面标识均相匹配的页面;如果否,则建立所述第一视图名字的存储,所述第一视图名字的存储中包括所述第一视图名字目录下的至少一个页面。所述存储单元,还用于保存所述第一视图名字的存储,以及在所述第一视图名字的存储中保存所述第一页面。
所述组件查询模块106,还用于在所述数据库中查找到存储有与所述第一视图名字和所述第一页面标识均相匹配的页面的情况下,确定所述相匹配的页面为源页面。
另外,组件查询模块106,还用于在所述数据库中查找到存储有与所述第二视图名字和第二页面标识均相匹配的页面的情况下,确定所述相匹配的页面为目的页面,在所述数据库中查找是否存储有从所述源页面到所述目的页面的操作特征;所述存储单元,还用于在未存储所述操作特征的情况下,存储所述第一操作的操作特征。具体地判断方法可参见前述图5所示的方法流程,本实施例对此不再赘述。
组件查询模块106,还用于在所述数据库中存储有M个操作特征的情况下,判断 所述M个操作特征中是否包括所述第一操作的操作特征,M≥1且M为正整数;所述存储单元,还用于当所述组件查询模块确定不包括所述第一操作的操作特征时,存储所述第一操作的操作特征。
页面提取模块104,用于在比较所述第一页面和所述第二页面不相同时,提取第一页面的页面特征和第二页面的页面特征。并给每个页面打标签,比如对于activity A的第一页面打标签为页面A0,对于activity B的第二页面打标签为页面B0。
在一些实施例中,本申请还提供了一种页面跳转装置,该装置可实现不同应用之间页面的自动跳转,其中,该页面跳转装置的结构可以图前述图3所示的结构相同,也可以不相同,本实施例对此不做限制。
本实施例以该页面跳转装置的结构与前述图3所示的装置结构相同举例,具体地,页面监控模块101,用于当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面,以及,根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面。路径查询模块20,用于查找第三页面和第四页面之间是否存储有跳转路径,如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面。
其中,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数。另外,所述第二操作的操作特征可以通过终端设备的辅助功能来实现。
上述装置可自动学习用户操作APP的习惯,从而构建出页面跳转图。同时为APP的每个页面打上了标签,使用时只需要查询标签即可,无需重启APP,无需配置文件,无需三方配合,节省人力并提高了用户体验。
此外,本实施例还提供了一种无线通信系统,该系统中包括至少一个终端设备和网络设备,所述网络设备可以是云端服务器或数据中心等设备,用于向所述终端设备提供数据库。
所述终端设备为前述实施例中的终端设备,用于实现前述图4至图11所述的方法。
另外,所述云端服务器或数据中心等设备的结构可以与前述图2或图12所示的终端设备的结构相同,也可以不相同,本实施例对此不予限制。应理解,上述无线通信系统中还可以包括其他设备,比如交换机等等。
本申请实施例还提供一种计算机可读存储介质,该计算机可读存储介质中存储有指令,数据等,当其在计算机上运行时,使得计算机执行上述各实施例中的方法。
本申请实施例还提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述各方面的方法。所述计算机可以是通用计算机、专用计算机、计算机网络或者其他可编程装置。
另外,本申请实施例中所描述的方法或算法的步骤可以直接嵌入硬件、处理器执行的软件单元、或者这两者的结合。软件单元可以存储于RAM、闪存、ROM、EPROM、EEPROM、寄存器、硬盘、可移动磁盘、CD-ROM或本领域中其它任意形式的存储媒介中。
示例性地,存储介质可以与处理器连接,以使得处理器可以从存储介质中读取信息,并可以向存储介质存写信息。可选的,存储介质还可以集成到处理器中。可选的,处理器和存储媒介也可以设置于终端设备的不同的部件中。
本申请实施例还提供了一种芯片系统,图12为该芯片系统的结构示意图。该芯片系统包括处理器1201,用于支持上述装置实现上述方面中所涉及的功能,例如,在显示屏的第一页面上接收用户的第一操作;响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同;以及保存第一映射关系等。
在一种可能的设计中,芯片系统还包括存储器1202,用于保存页面特征的保存装置、页面跳转装置必要的计算机指令1203和数据。该芯片系统,可以由芯片构成,也可以包含芯片和其他分立器件。
另外,所述芯片系统还包括至少一个接口电路,用于连接内部和外部设备,实现芯片系统内部和与外部设备,比如外部传感器的数据传输。
此外,在本申请的描述中,除非另有说明,“多个”是指两个或多于两个。另外,为了便于清楚描述本申请实施例的技术方案,在本申请的实施例中,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
以上所述的本申请实施方式并不构成对本申请保护范围的限定。

Claims (20)

  1. 一种页面特征的保存方法,其特征在于,所述方法包括:
    在显示屏的第一页面上接收用户的第一操作;
    响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同;
    保存第一映射关系,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有映射关系。
  2. 根据权利要求1所述的方法,其特征在于,所述第一页面与所述第二页面不同,包括:
    所述第一页面的第一视图名字和所述第二页面的第二视图名字不同;
    或者,
    所述第一视图名字和所述第二视图名字相同,所述第一视图名字和所述第二视图名字的目录中均包含至少一个标签页,且所述第一视图名字目录中的第一标签页与所述第二视图名字目录中的第二标签页不相同,其中所述第二标签页是执行所述第一操作后的页面。
  3. 根据权利要求2所述的方法,其特征在于,所述第一页面与所述第二页面不同,还包括:
    在所述第一页面的第一视图名字和所述第二页面的第二视图名字相同,且所述第一视图名字和所述第二视图名字的目录中至少有一个不包含标签页的情况下,获取所述第一页面和所述第二页面的观察view树;
    比较所述第一页面的view树和所述第二页面的view树的相似度,如果所述相似度未超过阈值,则确定所述第一页面和所述第二页面不同。
  4. 根据权利要求2或3所述的方法,其特征在于,所述保存第一映射关系之前,还包括:
    获取所述第一页面所对应的第一视图名字和第一页面标识;
    在数据库中查找是否存储有与所述第一视图名字和所述第一页面标识均相匹配的页面;
    如果否,则建立所述第一视图名字的存储,并在所述第一视图名字的存储中保存所述第一页面。
  5. 根据权利要求4所述的方法,其特征在于,所述方法还包括:
    如果是,则确定与所述第一视图名字和所述第一页面标识均相匹配的页面为源页面。
  6. 根据权利要求5所述的方法,其特征在于,还包括:
    获取所述第二页面所对应的第二视图名字和第二页面标识;
    在数据库中查找是否存储有与所述第二视图名字和所述第二页面标识均相匹配的页面;
    如果否,则建立所述第二视图名字的存储,并在所述第二视图名字的存储中保存所述第二页面。
  7. 根据权利要求6所述的方法,其特征在于,还包括:
    如果是,则确定与所述第二视图名字和所述第二页面标识均相匹配的页面为目的页面,
    在所述数据库中查找是否存储有从所述源页面到所述目的页面的操作特征,如果未存储,则存储所述第一操作的操作特征。
  8. 根据权利要求7所述的方法,其特征在于,还包括:
    如果所述数据库中存储有M个操作特征,且所述M个操作特征中不包括所述第一操作的操作特征,则存储所述第一操作的操作特征,M≥1且M为正整数。
  9. 一种页面跳转方法,其特征在于,所述方法包括:
    当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面;
    根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面;
    查找所述第三页面和所述第四页面之间是否存储有跳转路径,所述跳转路径包括从所述第三页面跳转到所述第四页面的N个映射关系,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数;
    如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面。
  10. 一种页面特征的保存装置,其特征在于,包括:
    页面监控模块,用于在显示屏的第一页面上接收用户的第一操作;
    页面跳转更新模块,响应于所述第一操作在所述显示屏上显示第二页面,所述第二页面与所述第一页面不同;
    存储单元,用于保存第一映射关系,所述第一映射关系包括:第一页面的页面特征、第二页面的页面特征和所述第一操作的操作特征,且所述第一页面的页面特征、所述第一操作的操作特征绑定后与所述第二页面的页面特征具有映射关系。
  11. 根据权利要求10所述的装置,其特征在于,还包括页面比较模块,所述页面比较模块,用于比较所述第一页面和所述第二页面是否相同;
    其中所述第一页面和所述第二页面不同,包括:
    所述第一页面的第一视图名字和所述第二页面的第二视图名字不同;
    或者,所述第一视图名字和所述第二视图名字相同,所述第一视图名字和所述第二视图名字的目录中均包含标签页,且所述第一视图名字目录中的第一的标签页与所述第二视图名字目录中的第二标签页不相同,所述第二标签页是执行所述第一操作后的页面。
  12. 根据权利要求11所述的装置,其特征在于,
    所述页面比较模块,还用于在所述第一页面的第一视图名字和所述第二页面的第二视图名字相同,且所述第一视图名字和所述第二视图名字的目录中至少有一个不包含标签页的情况下,获取所述第一页面和所述第二页面的view树,比较所述第一页面的view树和所述第二页面的view树的相似度;以及当所述相似度未超过阈值时,确定所述第一页面和所述第二页面不同。
  13. 根据权利要求11或12所述的装置,其特征在于,还包括组件查询模块,
    所述组件查询模块,用于获取所述第一页面所对应的第一视图名字和第一页面标识,在数据库中查找是否存储有与所述第一视图名字和所述第一页面标识均相匹配的页面;如果否,则建立所述第一视图名字的存储;
    所述存储单元,还用于在所述第一视图名字的存储中保存所述第一页面。
  14. 根据权利要求13所述的装置,其特征在于,
    所述组件查询模块,还用于在所述数据库中查找到存储有与所述第一视图名字和所述第一页面标识均相匹配的页面的情况下,确定所述相匹配的页面为源页面。
  15. 根据权利要求14所述的装置,其特征在于,
    所述组件查询模块,还用于获取所述第二页面所对应的第二视图名字和第二页面标识;在数据库中查找是否存储有与所述第二视图名字和所述第二页面标识均相匹配的页面;如果否,则建立所述第二视图名字的存储,
    所述存储单元,还用于在所述第二视图名字的存储中保存所述第二页面。
  16. 根据权利要求15所述的装置,其特征在于,
    所述组件查询模块,还用于在所述数据库中查找到存储有与所述第二视图名字和第二页面标识均相匹配的页面的情况下,确定所述相匹配的页面为目的页面,在所述数据库中查找是否存储有从所述源页面到所述目的页面的操作特征;
    所述存储单元,还用于在未存储所述操作特征的情况下,存储所述第一操作的操作特征。
  17. 根据权利要求16所述的装置,其特征在于,
    所述组件查询模块,还用于在所述数据库中存储有M个操作特征的情况下,判断所述M个操作特征中是否包括所述第一操作的操作特征,M≥1且M为正整数;
    所述存储单元,还用于当所述组件查询模块确定不包括所述第一操作的操作特征时,存储所述第一操作的操作特征。
  18. 一种页面跳转装置,其特征在于,所述装置包括:
    页面监控模块,用于当接收用户下达的第一语音指令时,获取显示屏上显示的第三页面,以及根据所述第一语音指令确定第四页面,所述第四页面为响应于所述第一语音指令且为所述用户提供服务的目的页面;
    路径查询模块,用于查找所述第三页面和所述第四页面之间是否存储有跳转路径,所述跳转路径包括从所述第三页面跳转到所述第四页面的N个映射关系,如果是,则按照所述跳转路径从所述第三页面跳转到所述第四页面;
    其中,所述N个映射关系中的每个映射关系包括:当前页面的页面特征、所述当前页面的下一个页面的页面特征和从所述当前页面到所述下一个页面操作的操作特征,且所述当前页面的页面特征和所述操作特征绑定后与所述下一个页面的页面特征具有映射关系,N≥1且N为正整数。
  19. 一种终端设备,其特征在于,包括:至少一个处理器和存储器,
    所述存储器,用于存储计算机程序指令;
    所述至少一个处理器,用于执行所述指令,以实现如权利要求1至8,或权利要求9所述的方法。
  20. 一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序指令,
    当所述计算机程序指令被运行时,实现如权利要求1至8,或权利要求9所述的方法。
PCT/CN2022/079325 2021-03-12 2022-03-04 一种页面特征的保存方法、页面跳转方法和装置 WO2022188713A1 (zh)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
CN202110268624.1A CN115080159A (zh) 2021-03-12 2021-03-12 一种页面特征的保存方法、页面跳转方法和装置
CN202110268624.1 2021-03-12

Publications (1)

Publication Number Publication Date
WO2022188713A1 true WO2022188713A1 (zh) 2022-09-15

Family

ID=83227407

Family Applications (1)

Application Number Title Priority Date Filing Date
PCT/CN2022/079325 WO2022188713A1 (zh) 2021-03-12 2022-03-04 一种页面特征的保存方法、页面跳转方法和装置

Country Status (2)

Country Link
CN (1) CN115080159A (zh)
WO (1) WO2022188713A1 (zh)

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN107844324A (zh) * 2017-10-23 2018-03-27 北京京东尚科信息技术有限公司 客户端页面跳转处理方法和装置
CN109063082A (zh) * 2018-07-25 2018-12-21 珠海格力电器股份有限公司 一种页面跳转方法及终端设备
CN109241485A (zh) * 2018-09-06 2019-01-18 深圳市腾讯网络信息技术有限公司 一种页面间跳转关系建立方法,及装置
CN109683776A (zh) * 2018-12-13 2019-04-26 廖明月 一种页面跳转方法和系统
US20190220159A1 (en) * 2017-01-22 2019-07-18 Tencent Technology (Shenzhen) Company Limited Page display method, apparatus, terminal, and server, and storage medium

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20190220159A1 (en) * 2017-01-22 2019-07-18 Tencent Technology (Shenzhen) Company Limited Page display method, apparatus, terminal, and server, and storage medium
CN107844324A (zh) * 2017-10-23 2018-03-27 北京京东尚科信息技术有限公司 客户端页面跳转处理方法和装置
CN109063082A (zh) * 2018-07-25 2018-12-21 珠海格力电器股份有限公司 一种页面跳转方法及终端设备
CN109241485A (zh) * 2018-09-06 2019-01-18 深圳市腾讯网络信息技术有限公司 一种页面间跳转关系建立方法,及装置
CN109683776A (zh) * 2018-12-13 2019-04-26 廖明月 一种页面跳转方法和系统

Also Published As

Publication number Publication date
CN115080159A (zh) 2022-09-20

Similar Documents

Publication Publication Date Title
US11900924B2 (en) Semantic parsing method and server
WO2020177622A1 (zh) Ui组件显示的方法及电子设备
WO2020192456A1 (zh) 一种语音交互方法及电子设备
WO2020155014A1 (zh) 智能家居设备分享系统、方法及电子设备
US9807218B2 (en) Method for filtering spam in electronic device and the electronic device
US11949805B2 (en) Call method and apparatus
US20220358089A1 (en) Learning-Based Keyword Search Method and Electronic Device
WO2020233556A1 (zh) 一种通话内容处理方法和电子设备
WO2020029094A1 (zh) 一种语音控制命令生成方法及终端
CN111030990A (zh) 一种建立通信连接的方法及客户端、服务端
US20220124607A1 (en) Method for Accessing Network by Smart Home Device and Related Device
WO2023273543A1 (zh) 一种文件夹管理方法及装置
CN116114239A (zh) 音量管理的方法及电子设备
CN113504887A (zh) 一种音量设置方法及电子设备
CN113488042B (zh) 一种语音控制方法及电子设备
WO2020062014A1 (zh) 一种向输入框中输入信息的方法及电子设备
EP4020251A1 (en) Data processing method and apparatus thereof
WO2023005711A1 (zh) 一种服务的推荐方法及电子设备
WO2022188713A1 (zh) 一种页面特征的保存方法、页面跳转方法和装置
WO2021196980A1 (zh) 多屏交互方法、电子设备及计算机可读存储介质
WO2020216144A1 (zh) 一种添加邮件联系人的方法和电子设备
JP7462659B2 (ja) 情報表示方法および装置
CN115640414B (zh) 图像的显示方法及电子设备
CN114666441B (zh) 一种调用其他设备能力的方法、电子设备、系统和存储介质
WO2022068654A1 (zh) 一种终端设备交互方法及装置

Legal Events

Date Code Title Description
121 Ep: the epo has been informed by wipo that ep was designated in this application

Ref document number: 22766238

Country of ref document: EP

Kind code of ref document: A1

NENP Non-entry into the national phase

Ref country code: DE

122 Ep: pct application non-entry in european phase

Ref document number: 22766238

Country of ref document: EP

Kind code of ref document: A1