A fingerprint data processing method and apparatus
By copying fingerprint template data from the system partition to the vendor partition when the client operating system is upgraded to the specified version, the problem of inability to access fingerprint template data in Android 8.0 and later versions is solved, ensuring the normal operation of fingerprint recognition function.
Patent Information
- Application Number
- CN201910295839.5
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2019-04-12
- Publication Date
- 2025-07-08
- Estimated Expiration
- 2039-04-12
AI Technical Summary
After the client operating system is upgraded to Android 8.0 and later versions, the change in the data storage path of the fingerprint template makes it inaccessible, affecting the normal operation of the fingerprint recognition function.
When the client operating system is detected to be upgraded to the specified version, the fingerprint template data is copied from the first data partition (system partition) to the second data partition (vendor partition) to ensure that fingerprint template data can be accessed during fingerprint recognition.
It can still access fingerprint template data normally after the operating system is upgraded, ensuring the continuity of fingerprint recognition function and not being affected by changes in the operating system version.
Smart Images

Figure CN111813426B_ABST
Abstract
Description
Technical Field
[0001] The present disclosure relates to the field of application development technologies, and in particular, to a fingerprint data processing method and apparatus. Background Art
[0002] Currently, fingerprint recognition is a relatively common recognition method in biometric recognition. Therefore, many clients support the fingerprint recognition function. Through fingerprint recognition, various functions such as boot verification, payment verification, and login verification can be completed. Fingerprint template data is essential data in the fingerprint recognition process. The fingerprint template data may include fingerprint data of multiple legitimate users stored. During the fingerprint recognition process, when the fingerprint data obtained by the client matches any of the fingerprint data in the fingerprint template data, it can be determined that the user corresponding to the obtained fingerprint data is one of the multiple legitimate users.
[0003] In the related art, the fingerprint template data is often stored at a preset location in the client. However, in some cases, during the fingerprint recognition process of the client, the preset location for storing the fingerprint template data is often inaccessible, resulting in difficulty in completing fingerprint recognition on the client.
[0004] Therefore, there is an urgent need for a fingerprint data processing method in the related art to enable the client to successfully obtain the fingerprint template data during the fingerprint recognition process. Summary of the Invention
[0005] To overcome the problems existing in the related art, the present disclosure provides a fingerprint data processing method and apparatus.
[0006] According to a first aspect of an embodiment of the present disclosure, there is provided a fingerprint data processing method, including:
[0007] Determine whether the operating system of the client has been upgraded to a specified version;
[0008] If the determination result is yes, copy the fingerprint template data from the first data partition to the second data partition, where the second data partition is a data storage area accessible during fingerprint recognition in the client.
[0009] According to a second aspect of an embodiment of the present disclosure, there is provided a fingerprint data processing apparatus, including:
[0010] A determination module, configured to determine whether the operating system of the client has been upgraded to a specified version;
[0011] A data copy module, configured to, if the determination result is yes, copy the fingerprint template data from the first data partition to the second data partition, where the second data partition is a data storage area accessible during fingerprint recognition in the client.
[0012] According to a third aspect of embodiments of the present disclosure, there is provided a fingerprint data processing device, including:
[0013] A processor;
[0014] A memory for storing instructions executable by the processor;
[0015] Wherein, the processor is configured to execute the fingerprint data processing method.
[0016] According to a fourth aspect of embodiments of the present disclosure, there is provided a non-transitory computer-readable storage medium, which, when the instructions in the storage medium are executed by a processor, enables the processor to execute the fingerprint data processing method.
[0017] The technical solutions provided by the embodiments of the present disclosure may include the following beneficial effects: For the fingerprint data processing methods provided by various embodiments of the present disclosure, when the fingerprint template data in the first data partition cannot be accessed after the client operating system is upgraded to a specified version, when it is detected that the operating system of the client is upgraded to the specified version, the fingerprint template data is copied from the first data partition to the second data partition, and the second data partition is a data storage area accessible during fingerprint recognition in the client. In this way, not only can the fingerprint recognition function of the client be unaffected by the client operating system, but even if the client operating system is downgraded to a previous version, the normal access to the fingerprint template data can still be ensured. BRIEF DESCRIPTION OF THE DRAWINGS
[0018] The accompanying drawings herein are incorporated into the specification and form a part of the specification, showing embodiments consistent with the present disclosure and used together with the specification to explain the principles of the present disclosure.
[0019] Figure 1 is a schematic diagram of a scenario of a fingerprint data processing method shown according to an exemplary embodiment.
[0020] Figure 2 is a flowchart of a fingerprint data processing method shown according to an exemplary embodiment.
[0021] Figure 3 is a flowchart of a fingerprint data processing method shown according to an exemplary embodiment.
[0022] Figure 4 is a block diagram of a fingerprint data processing device shown according to an exemplary embodiment.
[0023] Figure 5 is a block diagram of a device shown according to an exemplary embodiment.
[0024] Figure 6It is a block diagram of a device shown according to an exemplary embodiment. Detailed implementation
[0025] Here, the exemplary embodiments will be described in detail, and the examples are shown in the drawings. When the following description refers to the drawings, unless otherwise indicated, the same numbers in different drawings represent the same or similar elements. The implementation manners described in the following exemplary embodiments do not represent all the implementation manners consistent with the present disclosure. On the contrary, they are only examples of devices and methods consistent with some aspects of the present disclosure as detailed in the appended claims.
[0026] To facilitate the understanding of the technical solutions provided in the embodiments of the present application by those skilled in the art, the technical environment for implementing the technical solutions will be described first below.
[0027] For versions before Android 8.0 (referred to as Android 8.0 for short), the upgrade of the operating system (such as upgrading from Android 6.0 to Android 7.0) often takes a long time. Usually, after Google releases a new version of the Android Open-Source Project (AOSP), the SoC manufacturer needs to upgrade the Hardware Abstraction Layer (HAL), and the OEM manufacturer needs to upgrade the HAL and the system framework before the user can receive the push of the Over-the-Air Technology (OTA) upgrade package on the client. Even lower-end products will not be upgraded with the operating system after leaving the factory. To solve the above problems, Google proposed the Project Treble project in Android 8.0. In the Project Treble project, the system framework and the HAL can be separated and designed. In Android 8.0, based on the Hardware Interface Definition Language (HIDL), the system framework can be updated without rebuilding the HAL. Through the separated design of the system framework and the HAL, it also enables the Android system after Android 8.0 to directly upgrade the system framework without considering the changes in the HAL layer when upgrading, thereby shortening the time for the user device to receive the OTA push for system upgrade.
[0028] In Android 8.0 and later versions, the HAL can be built by the vendor or the SOC manufacturer and stored in the vendor data partition of the client. In this way, the system framework can be updated and replaced through OTA in the vendor data partition without recompiling the HAL. However, the separation of the system framework and the HAL may lead to restrictions on data access permissions. For example, for the fingerprint template data required during the fingerprint recognition process, in versions before Android 8.0, the fingerprint template data was stored in the system data partition, while in Android 8.0 and later versions, the storage path of the fingerprint template data was modified to the vendor data partition. As a result, in Android 8.0 and later versions, the fingerprint template data in the system data partition cannot be accessed, and thus, after the client operating system is upgraded, the user cannot complete the fingerprint verification.
[0029] Based on the above technical requirements, the fingerprint data processing method provided by the present disclosure can copy the fingerprint template data source from the system data partition to the vendor data partition when it is detected that the operating system of the client is upgraded to a specified version. In this way, the fingerprint template data can be accessed in Android 8.0 and later versions.
[0030] The fingerprint data processing method described in the present disclosure will be described in detail below with reference to the accompanying drawings. Figure 1 It is a flowchart of a method of an embodiment of the fingerprint data processing method provided by the present disclosure. Although the present disclosure provides method operation steps as shown in the following embodiments or drawings, more or fewer operation steps may be included in the method based on routine or non-creative labor. In steps where there is no necessary causal relationship logically, the execution order of these steps is not limited to the execution order provided in the embodiments of the present disclosure.
[0031] Specifically, an embodiment of the fingerprint data processing method provided by the present disclosure is as Figure 1 shown and may include:
[0032] In step 101, it is determined whether the operating system of the client is upgraded to a specified version;
[0033] In step 103, if the determination result is yes, the fingerprint template data is copied from the first data partition to the second data partition, where the second data partition is the data storage area accessible during fingerprint recognition in the client.
[0034] The fingerprint data processing method provided by the present disclosure can be applied to any client with an operating system, and the operating system includes but is not limited to Android operating system, iOS, Windows, etc. The client can include various electronic devices such as mobile smart phones, computers (including laptops and desktop computers), tablet electronic devices, personal digital assistants (PDAs), or smart wearable devices, etc.
[0035] In an embodiment of the present disclosure, the client can detect whether the operating system is upgraded to a specified version. In one embodiment, the specified version can include Android operating system version 8.0. Of course, the specified version is not limited to the Android operating system version 8.0. In any application scenario where the client cannot access the fingerprint template data in the old version due to the version upgrade of the operating system, the fingerprint data processing method provided by the embodiments of the present disclosure can be used. If the judgment result is that the operating system of the client is upgraded to the specified version, the fingerprint template data is copied from the first data partition to the second data partition, where the second data partition is the data storage area accessible during fingerprint recognition in the client.
[0036] In one example, the first data partition can include the system partition in the Android operating system, and the second data partition can include the vendor data partition. In Android 8.0 and later versions, the separation of the system framework and HAL results in the separation of the data access permissions of their corresponding data partitions (i.e., the system data partition and the vendor data partition). Based on this, the fingerprint template data stored in the system data partition can be copied to the vendor data partition, so that during the fingerprint recognition process of the client, the historical fingerprint template data stored in the client can be normally accessed.
[0037] In an embodiment of the present disclosure, if the judgment result is that the operating system of the client is upgraded to the specified version, the fingerprint template data can be copied from the first data partition to the second data partition when the fingerprint template data needs to be loaded. That is, when it is detected that the operating system of the client is upgraded to the specified version and when the fingerprint template data needs to be loaded, the fingerprint template data is copied from the first data partition to the second data partition. Of course, in other embodiments, the fingerprint template data can also be copied from the first data partition to the second data partition at any time after detecting that the operating system of the client is upgraded to the specified version and before loading the fingerprint template data. The present disclosure does not limit the time for copying the fingerprint template data.
[0038] In an embodiment of the present disclosure, as Figure 2 shown, in the process of copying the fingerprint template data from the first data partition to the second data partition, it can include:
[0039] In step 201, determine the first storage path of the fingerprint template data in the first data partition;
[0040] In step 203, create a second storage path in the second data partition;
[0041] In step 205, copy the fingerprint template data in the first storage path to the second storage path.
[0042] In an embodiment of the present disclosure, during the process of copying the fingerprint template data from the first data partition to the second data partition, the first storage path of the fingerprint template data in the first data partition may be determined first. In one example, according to the definition of the Android operating system, the storage path of the fingerprint template data in the system data partition may be / data / system / $userId / fpdata. Then, a second storage path may be created in the second data partition. In the above example, a second storage path / data / vendor_de / $userId / fpdata may be created in the vendor data partition to store the fingerprint template data. Wherein, the second storage path may be the storage path defined by the updated operating system, or may be an arbitrarily created storage path by the client, and the present disclosure does not limit this here. Finally, the fingerprint template data in the first storage path may be copied to the second storage path.
[0043] In an embodiment of the present disclosure, when the fingerprint template data in the first data partition is updated, the fingerprint template data in the second data partition may also be synchronously updated. Specifically, as Figure 3 shown, it may include:
[0044] In step 301, determine whether the fingerprint template data in the first data partition is updated;
[0045] In step 303, if the judgment result is yes, synchronously update the updated data of the fingerprint template data in the first data partition to the fingerprint template data in the second data partition.
[0046] In one example, during the use of Android 8.0 and later versions, if the client updates the fingerprint template data, the update operation may include, for example, deletion, addition, etc. Based on this, it can be determined whether the fingerprint template data in the first data partition is updated. If the judgment result is that the fingerprint template data in the first data partition is updated, then the updated data in the fingerprint template data in the first data partition is synchronously updated to the fingerprint template data in the second data partition.
[0047] The fingerprint data processing method provided by each embodiment of the present disclosure can copy the fingerprint template data from the first data partition to the second data partition when it is detected that the operating system of the client is upgraded to the specified version, in the case where the fingerprint template data in the first data partition cannot be accessed after the client operating system is upgraded to the specified version. The second data partition is a data storage area accessible during fingerprint recognition on the client. In this way, not only can the fingerprint recognition function of the client be unaffected by the client operating system, but even if the client operating system is downgraded to a previous version, the normal access to the fingerprint template data can be ensured.
[0048] On the other hand, the present disclosure also provides a fingerprint data processing device. Figure 4 It is a block diagram of a fingerprint data processing device 400 shown according to an exemplary embodiment. Refer to Figure 4 This device includes a judgment module 401 and a data replication template 403, where
[0049] The judgment module 401 is used to judge whether the operating system of the client is upgraded to the specified version;
[0050] The data replication template 403 is used to copy the fingerprint template data from the first data partition to the second data partition if the judgment result is yes, where the second data partition is a data storage area accessible during fingerprint recognition on the client.
[0051] Optionally, in an embodiment of the present disclosure, the data replication template includes:
[0052] The data replication sub-template is used to copy the fingerprint template data from the first data partition to the second data partition when the judgment result is yes and when the fingerprint template data needs to be loaded.
[0053] Optionally, in an embodiment of the present disclosure, the data replication template includes:
[0054] The storage path determination sub-template is used to determine the first storage path of the fingerprint template data in the first data partition;
[0055] The path creation sub-template is used to create a second storage path in the second data partition;
[0056] The data replication sub-template is used to copy the fingerprint template data in the first storage path to the second storage path.
[0057] Optionally, in an embodiment of the present disclosure, the device further includes:
[0058] An update judgment template is used to judge whether the fingerprint template data in the first data partition has been updated;
[0059] A synchronization update template is used to, if the judgment result is yes, synchronously update the updated data of the fingerprint template data in the first data partition to the fingerprint template data in the second data partition.
[0060] Optionally, in an embodiment of the present disclosure, the specified version includes the Android operating system version 8.0.
[0061] Figure 5 FIG. 10 is a block diagram of a device 700 for resource allocation indication according to an exemplary embodiment. For example, the device 700 may be a mobile phone, a computer, a digital broadcast terminal, a messaging device, a game console, a tablet device, a medical device, a fitness device, a personal digital assistant, etc.
[0062] Referring to Figure 5 , the device 700 may include one or more of the following components: a processing component 702, a memory 704, a power component 706, a multimedia component 708, an audio component 710, an input / output (I / O) interface 712, a sensor component 714, and a communication component 716.
[0063] The processing component 702 generally controls the overall operation of the device 700, such as operations associated with display, telephone calls, data communication, camera operations, and recording operations. The processing component 702 may include one or more processors 720 to execute instructions to complete all or part of the steps of the above methods. In addition, the processing component 702 may include one or more modules to facilitate the interaction between the processing component 702 and other components. For example, the processing component 702 may include a multimedia module to facilitate the interaction between the multimedia component 708 and the processing component 702.
[0064] The memory 704 is configured to store various types of data to support the operation of the device 700. Examples of these data include instructions for any application or method operating on the device 700, contact data, phone book data, messages, pictures, videos, etc. The memory 704 may be implemented by any type of volatile or non-volatile storage device or a combination thereof, such as static random access memory (SRAM), electrically erasable programmable read-only memory (EEPROM), erasable programmable read-only memory (EPROM), programmable read-only memory (PROM), read-only memory (ROM), magnetic memory, flash memory, a magnetic disk, or an optical disc.
[0065] The power supply component 706 provides power for various components of the device 700. The power supply component 706 may include a power management system, one or more power supplies, and other components associated with generating, managing, and distributing power for the device 700.
[0066] The multimedia component 708 includes a screen that provides an output interface between the device 700 and the user. In some embodiments, the screen may include a liquid crystal display (LCD) and a touch panel (TP). If the screen includes a touch panel, the screen can be implemented as a touch-sensitive display to transmit input signals from the user. The touch panel includes one or more touch sensors to sense touches, swipes, and gestures on the touch panel. The touch sensors can not only sense the boundaries of touch or swipe actions, but also detect the duration and pressure associated with the touch or swipe operations. In some embodiments, the multimedia component 708 includes a front camera and / or a rear camera. When the device 700 is in an operating mode, such as a shooting mode or a video mode, the front camera and / or the rear camera can transmit external multimedia data. Each of the front camera and the rear camera can be a fixed optical lens system or have focal length and optical zoom capabilities.
[0067] The audio component 710 is configured to output and / or input audio signals. For example, the audio component 710 includes a microphone (MIC) that is configured to transmit external audio signals when the device 700 is in an operating mode, such as a call mode, a recording mode, and a voice recognition mode. The transmitted audio signals can be further stored in the memory 704 or sent via the communication component 716. In some embodiments, the audio component 710 further includes a speaker for outputting audio signals.
[0068] The I / O interface 712 provides an interface between the processing component 702 and a peripheral interface module, which can be a keyboard, a click wheel, buttons, etc. These buttons can include, but are not limited to: a home button, a volume button, a power button, and a lock button.
[0069] The sensor assembly 714 includes one or more sensors for providing an assessment of various aspects of the status of the device 700. For example, the sensor assembly 714 can detect the on / off state of the device 700, the relative positioning of components, such as the display and keypad of the device 700. The sensor assembly 714 can also detect a change in the position of the device 700 or a component of the device 700, the presence or absence of user contact with the device 700, the orientation or acceleration / deceleration of the device 700, and a change in the temperature of the device 700. The sensor assembly 714 can include a proximity sensor configured to detect the presence of nearby objects without any physical contact. The sensor assembly 714 can also include a light sensor, such as a CMOS or CCD image sensor, for use in imaging applications. In some embodiments, the sensor assembly 714 can also include an acceleration sensor, a gyroscope sensor, a magnetic sensor, a pressure sensor, or a temperature sensor.
[0070] The communication component 716 is configured to facilitate communication between the device 700 and other devices in a wired or wireless manner. The device 700 can access a wireless network based on communication standards, such as WiFi, 2G, or 3G, or a combination thereof. In an exemplary embodiment, the communication component 716 transmits broadcast signals or broadcast-related information from an external broadcast management system via a broadcast channel. In an exemplary embodiment, the communication component 716 further includes a near field communication (NFC) module to facilitate short-range communication. For example, the NFC module can be implemented based on radio frequency identification (RFID) technology, infrared data association (IrDA) technology, ultra-wideband (UWB) technology, Bluetooth (BT) technology, and other technologies.
[0071] In an exemplary embodiment, the device 700 can be implemented by one or more application specific integrated circuits (ASICs), digital signal processors (DSPs), digital signal processing devices (DSPDs), programmable logic devices (PLDs), field programmable gate arrays (FPGAs), controllers, microcontrollers, microprocessors, or other electronic components for performing the above method.
[0072] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as a memory 704 including instructions that can be executed by a processor 720 of the device 700 to complete the above method. For example, the non-transitory computer-readable storage medium can be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.
[0073] Figure 6 is a block diagram of a device 800 for information processing shown in accordance with an exemplary embodiment. For example, the device 800 can be provided as a server. Refer to Figure 6, the apparatus 800 includes a processing component 822, which further includes one or more processors, and memory resources represented by a memory 832 for storing instructions executable by the processing component 822, such as application programs. The application programs stored in the memory 832 may include one or more modules each corresponding to a set of instructions. In addition, the processing component 822 is configured to execute instructions to perform the method described in any of the above embodiments.
[0074] The apparatus 800 may further include a power component 826 configured to perform power management of the apparatus 800, a wired or wireless network interface 850 configured to connect the apparatus 800 to a network, and an input / output (I / O) interface 858. The apparatus 800 may operate based on an operating system stored in the memory 832, such as Windows ServerTM, Mac OS XTM, UnixTM, LinuxTM, FreeBSDTM or the like.
[0075] In an exemplary embodiment, a non-transitory computer-readable storage medium including instructions is also provided, such as the memory 832 including instructions, and the above instructions can be executed by the processing component 822 of the apparatus 800 to complete the above method. For example, the non-transitory computer-readable storage medium may be a ROM, a random access memory (RAM), a CD-ROM, a magnetic tape, a floppy disk, and an optical data storage device, etc.
[0076] Those skilled in the art will readily conceive of other embodiments of the present disclosure after considering the specification and practicing the invention disclosed herein. The present disclosure is intended to cover any variations, uses, or adaptations of the present disclosure that follow the general principles of the present disclosure and include known common knowledge or conventional technical means in the technical field not disclosed by the present disclosure. The specification and embodiments are to be considered as exemplary only, and the true scope and spirit of the present disclosure are pointed out by the following claims.
[0077] It should be understood that the present disclosure is not limited to the exact structures described above and shown in the drawings, and various modifications and changes can be made without departing from its scope. The scope of the present disclosure is only limited by the appended claims.
Claims
1. A fingerprint data processing method, characterized in that, Including: Determine whether the operating system of the client has been upgraded to a specified version; If the judgment result is yes, copy the fingerprint template data from the first data partition to the second data partition, where both the first data partition and the second data partition belong to the built-in storage area, and the second data partition is the data storage area accessible during fingerprint recognition in the client under the operating system of the specified version, and the first data partition is the data storage area that was accessible and used to store the fingerprint template data in the operating system before the specified version and is inaccessible to the client under the operating system of the specified version.
2. The fingerprint data processing method according to claim 1, wherein, The step of "if the judgment result is yes, copy the fingerprint template data from the first data partition to the second data partition" includes: If the judgment result is yes, when the fingerprint template data needs to be loaded, copy the fingerprint template data from the first data partition to the second data partition.
3. The fingerprint data processing method according to claim 1 or 2, characterized in that The step of "copy the fingerprint template data from the first data partition to the second data partition" includes: Determine the first storage path of the fingerprint template data in the first data partition; Create a second storage path in the second data partition; Copy the fingerprint template data in the first storage path to the second storage path.
4. The fingerprint data processing method according to claim 1, wherein The method further includes: Determine whether the fingerprint template data in the first data partition has been updated; If the judgment result is yes, synchronously update the updated data of the fingerprint template data in the first data partition to the fingerprint template data in the second data partition.
5. The fingerprint data processing method according to any one of claims 1 to 4, characterized in that The specified version includes Android operating system version 8.
0.
6. A fingerprint data processing device, characterized in that, Including: A judgment module, used to determine whether the operating system of the client has been upgraded to a specified version; A data copy template, used to copy the fingerprint template data from the first data partition to the second data partition if the judgment result is yes, where both the first data partition and the second data partition belong to the built-in storage area, the second data partition is the data storage area accessible during fingerprint recognition in the client under the operating system of the specified version, and the first data partition is the data storage area that was accessible and used to store the fingerprint template data in the operating system before the specified version and is inaccessible to the client under the operating system of the specified version.
7. The fingerprint data processing device according to claim 6, wherein The data copy template includes: A data copy sub-template, used to copy the fingerprint template data from the first data partition to the second data partition when the fingerprint template data needs to be loaded if the judgment result is yes.
8. The fingerprint data processing device according to claim 6 or 7, characterized in that, The data copy template includes: A storage path determination sub-template, used to determine the first storage path of the fingerprint template data in the first data partition; A path creation sub-template, used to create a second storage path in the second data partition; A data copy sub-template, used to copy the fingerprint template data in the first storage path to the second storage path.
9. The fingerprint data processing device according to claim 6, wherein The device further includes: An update judgment template, used to determine whether the fingerprint template data in the first data partition has been updated; Synchronous update template, used to synchronously update the fingerprint template data in the first data partition to the fingerprint template data in the second data partition if the judgment result is yes.
10. The fingerprint data processing device according to any one of claims 6 to 9, characterized in that, The specified version includes the Android operating system version 8.
0.
11. A fingerprint data processing device, characterized in that, Comprising: A processor; A memory for storing processor-executable instructions; Wherein, the processor is configured to execute the method according to any one of claims 1-5.
12. A non-transitory computer-readable storage medium, when the instructions in the storage medium are executed by a processor, enabling the processor to execute the method according to any one of claims 1-5.
Citation Information
Patent Citations
Terminal calibration data storage method and apparatus
CN105550069A