Device unlocking method and apparatus, electronic device, and readable storage medium
Patent Information
- Application Number
- CN202310316346.1
- Authority / Receiving Office
- CN · China
- Patent Type
- Patents(China)
- Current Assignee / Owner
- Filing Date
- 2023-03-28
- Publication Date
- 2026-09-22
- Estimated Expiration
- 2043-03-28
AI Technical Summary
[0037]本发明提出的一种设备解锁方法、装置、电子设备及可读存储介质,在锁定状态下,若触发解锁请求状态,则获取多个所述手柄的被控数据,以及各所述被控数据对应的被控顺序;判断所述被控数据以及所述被控顺序是否满足预设解锁条件;若所述被控数据以及所述被控顺序满足预设解锁条件,则执行解锁操作。通过基于手柄的被控数据来实现对于设备的解锁,使得用户能够基于手柄本身的使用方式来完成解锁操作,符合用户使用直觉的同时,实现快速解锁,而无需基于虚拟键盘逐个输入字符;被控顺序的添加能够拓展解锁方式的种类,以及提高解锁方式的复杂性,在增强安全性的同时,满足用户更多样性的操作习惯。
Smart Images

Figure CN116361757B_ABST
Abstract
Description
Technical Field
[0001] This application relates to the field of virtual reality, and more particularly to a device unlocking method, apparatus, electronic device, and readable storage medium. Background Technology
[0002] As the VR (Virtual Reality) field matures, more and more manufacturers are launching VR all-in-one devices. To meet users' needs to pause the use of VR all-in-one devices, existing VR all-in-one devices offer a locking function. However, unlocking requires manually entering characters one by one on the virtual keyboard by operating the movement and confirmation buttons on the controller. The unlocking method is cumbersome and inconvenient for users. Summary of the Invention
[0003] This application provides a device unlocking method, apparatus, electronic device, and readable storage medium, aiming to solve the technical problem that the unlocking methods of VR all-in-one devices in the prior art are cumbersome and inconvenient for users.
[0004] To solve, or at least partially solve, the aforementioned technical problems, this application provides a device unlocking method.
[0005] The device is connected to multiple handles, and the device unlocking method includes:
[0006] In the locked state, if an unlock request state is triggered, the controlled data of multiple handles and the controlled order corresponding to each controlled data are obtained.
[0007] Determine whether the controlled data and the controlled sequence meet the preset unlocking conditions;
[0008] If the controlled data and the controlled sequence meet the preset unlocking conditions, then the unlocking operation is performed.
[0009] Optionally, the handle includes a joystick, and the controlled data includes the rotation trajectory of the joystick; the step of determining whether the controlled data and the controlled sequence meet the preset unlocking conditions includes:
[0010] Determine whether the rotation trajectory matches the preset trajectory in the preset unlocking conditions, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking conditions;
[0011] If the rotation trajectory matches the preset trajectory, and the controlled sequence corresponding to each rotation trajectory matches the preset sequence, then the controlled data and the controlled sequence satisfy the preset unlocking condition.
[0012] Optionally, the step of determining whether the rotation trajectory matches a preset trajectory in the preset unlocking conditions, and whether the controlled order corresponding to each rotation trajectory matches a preset order in the preset unlocking conditions, includes:
[0013] Determine the trajectory features and joystick identifiers corresponding to each sub-trajectory in the rotation trajectory, wherein the sub-trajectory is the trajectory generated by a single continuous rotation of the handle joystick;
[0014] The trajectory features are associated with the corresponding joystick identifiers, and a feature sequence is generated based on the controlled sequence and the associated trajectory features;
[0015] Determine whether the feature sequence contains a preset sequence corresponding to the preset trajectory;
[0016] If the feature sequence contains a preset sequence corresponding to the preset trajectory, then the rotation trajectory matches the preset trajectory, and the controlled order corresponding to each rotation trajectory matches the preset order.
[0017] Optionally, the step of determining whether the rotation trajectory matches the preset trajectory in the preset unlocking conditions includes:
[0018] Obtain the unit trajectory step size, and adjust the rotation trajectory to an integer multiple of the unit trajectory step size to obtain a unit rotation trajectory. The length of the unit rotation trajectory is less than or equal to the rotation trajectory, and the difference between the lengths of the unit rotation trajectory and the rotation trajectory is less than the unit trajectory step size.
[0019] Obtain the unit preset trajectory corresponding to the preset trajectory and the unit trajectory, and determine whether the unit rotation trajectory matches the unit preset trajectory;
[0020] If the unit rotation trajectory matches the unit preset trajectory, then the rotation trajectory matches the preset trajectory.
[0021] Optionally, the device includes a head-mounted display, and the step of acquiring controlled data of multiple controllers and the controlled sequence corresponding to each controlled data when an unlock request is triggered in the locked state includes:
[0022] Real-time detection of whether the wearing status of the head-mounted display changes from not wearing to wearing;
[0023] If the wearing state of the head-mounted display changes from not wearing to wearing, then the controlled data of multiple controllers and the controlled order corresponding to each controlled data are acquired.
[0024] Optionally, the method further includes:
[0025] Receive the unlock setting command, continuously detect the controlled state of the controller to obtain setting data and the setting order corresponding to the setting data;
[0026] If a confirmation command is received, the currently acquired setting data will be used as the preset trajectory, and the preset trajectory will be associated with the setting order.
[0027] The preset unlocking conditions are generated based on the preset trajectory.
[0028] Optionally, the step of using the currently acquired setting data as a preset trajectory and associating the preset trajectory with the setting order includes:
[0029] Perform a reconfirmation prompt operation and continuously monitor the controlled status of the controller to obtain reconfirmation data;
[0030] If the reconfirmation data is consistent with the setting data and the setting order, then the currently acquired setting data is used as the preset trajectory, and the preset trajectory is associated with the setting order.
[0031] To achieve the above objectives, the present invention also provides a device unlocking device, wherein the device is connected to a handle, and the number of handles is multiple, and the device unlocking device includes:
[0032] The first detection module is used to obtain the controlled data of multiple handles and the controlled order corresponding to each controlled data if an unlock request state is triggered in the locked state.
[0033] The first judgment module is used to determine whether the controlled data and the controlled sequence meet the preset unlocking conditions.
[0034] The first execution module is used to perform an unlocking operation if the controlled data and the controlled sequence meet the preset unlocking conditions.
[0035] To achieve the above objectives, the present invention also provides an electronic device, the electronic device including a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the device unlocking method as described above.
[0036] To achieve the above objectives, the present invention also provides a computer-readable storage medium storing a computer program, which, when executed by a processor, implements the steps of the device unlocking method described above.
[0037] This invention proposes a device unlocking method, apparatus, electronic device, and readable storage medium. In a locked state, if an unlocking request is triggered, controlled data from multiple controllers and their corresponding control order are acquired. It then determines whether the controlled data and control order meet preset unlocking conditions. If the controlled data and control order meet the preset unlocking conditions, an unlocking operation is performed. By unlocking the device based on the controller's controlled data, users can perform the unlocking operation using the controller's inherent usage, conforming to user intuition and achieving quick unlocking without needing to input characters one by one using a virtual keyboard. Adding a control order expands the types and complexity of unlocking methods, enhancing security while satisfying more diverse user operating habits. Attached Figure Description
[0038] The accompanying drawings, which are incorporated in and form part of this specification, illustrate embodiments consistent with the invention and, together with the description, serve to explain the principles of the invention.
[0039] To more clearly illustrate the technical solutions in the embodiments of the present invention or the prior art, the drawings used in the description of the embodiments or the prior art will be briefly introduced below. Obviously, those skilled in the art can obtain other drawings based on these drawings without creative effort.
[0040] Figure 1 This is a flowchart illustrating the first embodiment of the device unlocking method of the present invention;
[0041] Figure 2 This is a flowchart illustrating the fourth embodiment of the device unlocking method of the present invention;
[0042] Figure 3 This is a schematic diagram of the module structure of the electronic device of the present invention. Detailed Implementation
[0043] It should be understood that the specific embodiments described herein are merely illustrative of the invention and are not intended to limit the invention. To enable those skilled in the art to better understand the present application, the technical solutions in the embodiments of the present application will be clearly and completely described below with reference to the accompanying drawings. Obviously, the described embodiments are only a part of the embodiments of the present application, and not all of them. Based on the embodiments in this application, all other embodiments obtained by those skilled in the art without creative effort should fall within the scope of protection of this application.
[0044] This invention provides a device unlocking method, referring to... Figure 1 , Figure 1This is a flowchart illustrating the first embodiment of the device unlocking method of the present invention. The device is connected to a handle, and there are multiple handles. The method includes the following steps:
[0045] Step S10: In the locked state, if an unlock request state is triggered, the controlled data of multiple handles and the controlled order corresponding to each controlled data are obtained.
[0046] The device includes at least a processing module headset. The processing module is mainly used for data processing and interaction with external systems. The headset is connected to the processing module and is a head-mounted display primarily used for display. It is understood that the processing module can be integrated into the headset or set up independently. The controllers are connected to the processing module wirelessly or via a wired connection. It should be noted that the above description only illustrates one possible scenario. In practical applications, the specific structure of the device can be designed based on the actual application scenario and requirements, and no limitations are imposed here.
[0047] A locked state refers to a state that restricts operation of the device. Generally, it can be set to enter the locked state when the device starts up, when the user actively selects the locked state, or when the device does not receive a control command within a certain period of time. Understandably, other conditions for entering the locked mode can also be set based on actual needs.
[0048] Generally, only unlock-related operations are allowed in the locked state. For example, when the device is woken up in the locked state, it will always display the lock screen. When the user performs an operation other than unlock-related, the device will not respond or will display an unlock prompt. When the user performs an unlock-related operation, the device can display relevant guidance information. After successfully unlocking, the device will return to the main screen or the screen before entering the locked state, depending on the settings. Understandably, based on actual application needs, other operations that can be performed in the locked state can also be set, such as powering off and controlling media playback.
[0049] The unlock request status refers to the status of verifying the validity of the unlock operation. Depending on the usage scenario, the triggering method of the unlock request status can be set, including but not limited to triggering by any button or a fixed unlock button, triggering automatically when the device is powered on, and triggering when user actions are detected.
[0050] Controlled data refers to the collection of control data generated by the user on the controller during the unlock request state; user operations on the controller include, but are not limited to, long-pressing buttons, short-pressing buttons, rotating joysticks, pushing joysticks in a fixed direction, moving the controller in space, and touch operations; controlled data includes, but is not limited to, the operations performed by the user, the time of the operation, and the location of the operation. Controlled sequence is used to indicate the order in which the controlled data was generated.
[0051] Step S20: Determine whether the controlled data and the controlled sequence meet the preset unlocking conditions;
[0052] The preset unlocking conditions are preset conditions used to determine whether the controlled data and the controlled sequence meet the triggering requirements of the unlocking operation; the specific judgment conditions of the preset unlocking conditions can be set based on the actual application scenario and needs; the preset unlocking conditions can be preset by the manufacturer or preset by the user based on actual needs.
[0053] Step S30: If the controlled data and the controlled sequence meet the preset unlocking conditions, then the unlocking operation is performed.
[0054] When the controlled data and the controlled sequence meet the preset unlocking conditions, it indicates that the controlled data and the controlled sequence meet the triggering requirements of the unlocking operation. At this time, the unlocking operation is executed to change the device from the locked state to the unlocked state.
[0055] If the controlled data and the controlled sequence do not meet the preset unlocking conditions, it means that the controlled data and the controlled sequence do not meet the triggering requirements of the unlocking operation. At this time, the device remains in a locked state. Furthermore, error messages and prompts for re-entry can also be displayed.
[0056] This embodiment unlocks the device by controlling the controller's data, allowing users to complete the unlocking operation based on the controller's inherent usage, which is intuitive and quick, without needing to input characters one by one using a virtual keyboard. Adding control sequences can expand the types of unlocking methods and increase their complexity, enhancing security while meeting more diverse user operating habits.
[0057] Furthermore, in the second embodiment of the device unlocking method of the present invention based on the first embodiment, the handle includes a joystick, and the controlled data includes the rotation trajectory of the joystick; step S20 includes the following steps:
[0058] Step S21: Determine whether the rotation trajectory matches the preset trajectory in the preset unlocking conditions, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking conditions;
[0059] Step S22: If the rotation trajectory matches the preset trajectory, and the controlled sequence corresponding to each rotation trajectory matches the preset sequence, then the controlled data and the controlled sequence satisfy the preset unlocking condition.
[0060] If the rotation trajectory does not match the preset trajectory, then the controlled data and the controlled sequence do not meet the preset unlocking conditions.
[0061] The rotation trajectory refers to the set of joystick positions generated when the joystick is rotated. It should be noted that since the joystick positions are generated based on the user's rotation of the joystick, the joystick positions have a time-based continuity, that is, the rotation trajectory has directionality; for example, the rotation trajectory can be represented as rotating 360° clockwise, rotating 360° counterclockwise, or rotating 90° clockwise and then rotating 180° counterclockwise.
[0062] When the rotation trajectory matches the preset trajectory, it is considered that the triggering requirements for the unlocking operation are met. Therefore, it is determined that the controlled data and the controlled sequence meet the preset unlocking conditions.
[0063] In other embodiments, the controlled data and the controlled sequence can be determined by the combination of directional key values of the fixed direction movement of the joystick to determine whether they meet the preset unlocking conditions.
[0064] If a preset combination of directional key values is set, when the combination of directional key values triggered by the user matches the preset combination of directional key values, it is considered that the controlled data and the controlled sequence meet the preset unlocking conditions; the combination of directional key values can be represented as up, down, left, right or up, up, down, down, and the specific preset combination of directional key values can be set based on the actual application scenario or user needs.
[0065] In other embodiments, the controllable data and the controllable sequence can be determined by selecting a button to see if they meet the preset unlocking conditions.
[0066] If a preset button combination is set, when the button combination triggered by the user matches the preset button combination, it is considered that the controlled data and the controlled sequence meet the preset unlocking conditions. The button combination can be represented as AABB, XXYY, or ABR, and the specific preset button combination can be set based on the actual application scenario or user needs. It should be noted that different types of gamepads have different types of fixed buttons, therefore, the preset button combination can be set based on the gamepad used in the actual application.
[0067] In other embodiments, the movement trajectory of the handle can also be used to determine whether the controlled data and the controlled sequence meet the preset unlocking conditions.
[0068] The gyroscope inside the handle is used to obtain the position of the handle in space, and then the corresponding motion trajectory of the handle is obtained; a preset motion trajectory is set, and when the motion trajectory triggered by the user matches the preset motion trajectory, it is considered that the controlled data and the controlled sequence meet the preset unlocking conditions; the motion trajectory can be represented as a circle or a checkmark, and the specific preset motion trajectory can be set based on the actual application scenario or user needs.
[0069] In other embodiments, the controlled data and the controlled sequence can be determined by drawing a trajectory via touch to see if they meet the preset unlocking conditions.
[0070] The touch drawing trajectory is obtained through the touch screen set in the controller; a preset touch drawing trajectory is set, and when the touch drawing trajectory triggered by the user matches the preset touch drawing trajectory, it is considered that the controlled data and the controlled sequence meet the preset unlocking conditions; the touch drawing trajectory can be represented as a circle or a checkmark, and the specific preset touch drawing trajectory can be set based on the actual application scenario or user needs.
[0071] It is understood that, based on other types of operable components set on the handle, corresponding preset unlocking conditions can be set by analogy with the above embodiments.
[0072] In other embodiments, multiple preset unlocking conditions can be combined to determine whether the controlled data and the controlled sequence meet the preset unlocking conditions.
[0073] For example, preset unlocking conditions may include sequential judgment of rotation trajectory and fixed button presses. Preset unlocking conditions could include rotating the joystick 360° clockwise and then pressing button A, or rotating the joystick 360° clockwise and then pressing button A, followed by inputting a combination of up, down, and down directional keys. Other types or numbers of unlocking condition combinations can be set analogously and will not be elaborated further. Subsequent embodiments will use rotation trajectory as an example for explanation; other types of unlocking conditions can be executed analogously and will not be elaborated further.
[0074] Further, step S21 includes the following steps:
[0075] Step S211: Determine the trajectory features and joystick identifiers corresponding to each sub-trajectory in the rotation trajectory, wherein the sub-trajectory is the trajectory generated by a single continuous rotation of the joystick;
[0076] It is understandable that the joystick is in the default position when it is not subjected to external force. Generally, the default position is the center position. When the joystick returns to the center position after being manipulated by the user, it is considered that the user has completed a control operation of the joystick. Therefore, the trajectory generated between the joystick leaving the center position and returning to the center position can be regarded as a sub-trajectory, which represents an independent joystick control operation.
[0077] Trajectory features are used to indicate the motion characteristics of sub-trajectories. It's understandable that due to operational jitter or sampling accuracy issues, the resulting sub-trajectories may be irregular. Therefore, regularizing the sub-trajectories through trajectory features improves the efficiency of subsequent judgments. Trajectory features can represent, for example, a 180° clockwise rotation, or a 180° clockwise rotation followed by a 90° counter-clockwise rotation. The specific method for determining the trajectory features of a sub-trajectories can be set based on the actual application scenario.
[0078] The joystick identifier is used to indicate the uniqueness of the joystick within the device. Understandably, the number of handles connected to the device can be specifically set based on the device type, for example, it could be two, including a left handle and a right handle. When there are multiple handles, they need to be distinguished to understand the source of the sub-tracks. For example, handles can include left and right handles; the following explanation will use left and right handles as an example. Other numbers or types of handles can be implemented analogously and will not be elaborated further. Specifically, the handle will attach its own joystick identifier when sending relevant data.
[0079] Step S212: Associate the trajectory features with the corresponding joystick identifier, and generate a feature sequence based on the controlled sequence and the associated trajectory features;
[0080] After standardizing all sub-trajectories into trajectory features, sorting them according to the controlled order yields the feature sequence. It should be noted that in some cases, it's necessary to emphasize the source of the sub-trajectory, i.e., restricting the joystick identifier corresponding to the trajectory feature. In this case, the feature sequence can be represented as the left joystick rotating 180° clockwise, then the right joystick rotating 90° counterclockwise. In other cases, the source of the sub-trajectory can be disregarded; in this case, the feature sequence can be represented as the joystick rotating 180° clockwise, then 90° counterclockwise. Specifically, whether to emphasize the source of the sub-trajectory can be set based on the actual application scenario and needs, such as choosing whether to emphasize the source when setting preset unlock conditions, or setting whether to emphasize the source based on different usage scenarios.
[0081] When setting preset unlock conditions, different levels of security can be selected, such as hard mode and easy mode. When hard mode is selected, the source of the sub-track can be emphasized, and when easy mode is selected, the source of the sub-track can be disregarded.
[0082] When setting whether to emphasize the source based on different usage scenarios, it can be determined whether the current environment is a trusted environment. For example, if the connected device is a trusted device and the local area network is trusted, the current environment is considered a trusted environment, and the source of the sub-trajectory does not need to be emphasized. Otherwise, the source of the sub-trajectory needs to be emphasized.
[0083] Step S213: Determine whether the feature sequence contains a preset sequence corresponding to the preset trajectory;
[0084] Step S214: If the feature sequence contains a preset sequence corresponding to the preset trajectory, then the rotation trajectory matches the preset trajectory, and the controlled order corresponding to each rotation trajectory matches the preset order.
[0085] If the feature sequence does not contain the preset sequence corresponding to the preset trajectory, then the rotation trajectory does not match the preset trajectory.
[0086] Understandably, in practical applications, situations may arise where user input or controller malfunction necessitates re-entry of controlled data. Therefore, the controller's controlled state is continuously monitored, and the resulting feature sequence is updated in real time. Whenever a preset sequence is detected, it indicates that the latest controlled data input includes the correct execution of the preset trajectory, thus meeting the trigger requirements for unlocking. Furthermore, a specific button can be set as a reset button. When the reset button is triggered, the received controlled data is cleared, and the judgment is based on subsequently received controlled data and the controlled sequence.
[0087] Further, step S21 includes the following steps:
[0088] Step S215: Obtain the unit trajectory step size and adjust the rotation trajectory to an integer multiple of the unit trajectory step size to obtain a unit rotation trajectory. The length of the unit rotation trajectory is less than or equal to the rotation trajectory, and the difference between the lengths of the unit rotation trajectory and the rotation trajectory is less than the unit trajectory step size.
[0089] Step S216: Obtain the unit preset trajectory corresponding to the preset trajectory and the unit trajectory, and determine whether the unit rotation trajectory matches the unit preset trajectory;
[0090] Step S217: If the unit rotation trajectory matches the unit preset trajectory, then the rotation trajectory matches the preset trajectory.
[0091] In practical applications, due to factors such as user perception or sampling accuracy, the actual generated rotation trajectory may deviate from the rotation trajectory expected by the user. For example, if the user needs to rotate 180° clockwise, the actual rotation trajectory may be 178° clockwise. If the rotation trajectory is strictly required to be consistent with the preset trajectory, it will cause difficulties in unlocking. To solve this problem, this embodiment sets a unit trajectory step size, which is used to indicate the shortest effective length of the trajectory. It should be noted that the length referred to in this embodiment and subsequent embodiments is used to characterize the degree of rotation of the joystick. In practical applications, the length can be converted into an angle for processing.
[0092] Converting the rotation trajectory to an integer multiple of the unit trajectory step size eliminates the potential deviation between the actual generated rotation trajectory and the user's expected rotation trajectory. Specifically, if the unit trajectory step size is 90°, when the rotation trajectory is less than 90°, the corresponding unit rotation trajectory is 0°; when the rotation trajectory is greater than or equal to 90° and less than 180°, the corresponding unit rotation trajectory is 90°; when the rotation trajectory is greater than or equal to 180° and less than 270°, the corresponding unit rotation trajectory is 180°; when the rotation trajectory is greater than or equal to 270° and less than 360°, the corresponding unit rotation trajectory is 270°; when the rotation trajectory is greater than or equal to 360° and less than 450°, the corresponding unit rotation trajectory is 360°; and so on.
[0093] As shown in the above conversion, when the preset trajectory is a 100° clockwise rotation, the corresponding unit preset trajectory is 90°. In this case, as long as the rotation trajectory is greater than or equal to 90° and less than 180°, the unit rotation trajectory will be 90°, successfully matching the unit preset trajectory; thus achieving a certain degree of fault tolerance. It should be noted that the unit trajectory step size can be set based on the actual application scenario, such as 30°, 45°, or 60°. A larger unit trajectory step size results in higher fault tolerance but lower required precision; conversely, a smaller unit trajectory step size results in lower fault tolerance but higher required precision.
[0094] In other embodiments, a fault tolerance threshold can be set. When the length difference between the rotation trajectory and the preset trajectory is less than the fault tolerance threshold, the rotation trajectory is considered to match the preset trajectory. For example, if the fault tolerance threshold is set to 20° and the preset trajectory is 90°, the rotation trajectory matches the preset trajectory when it is located in the interval [70°, 110°]. The fault tolerance threshold can be set based on the actual application scenario.
[0095] Furthermore, to improve the accuracy of user operation, the current rotation trajectory can be displayed in real time, and the rotation trajectory can be displayed based on a unit trajectory step. Target point feedback can also be set, such as vibrating the control handle whenever the rotation trajectory moves by one unit trajectory step to remind the user of the current trajectory length.
[0096] This embodiment can accurately determine whether the controlled data and the controlled sequence meet the preset unlocking conditions.
[0097] Furthermore, in the third embodiment of the device unlocking method of the present invention based on the first embodiment of the present invention, the device includes a head-mounted display, and step S10 includes the following steps:
[0098] Step S11: Real-time detection of whether the wearing status of the head-mounted display changes from not being worn to being worn;
[0099] Step S12: If the wearing state of the head-mounted display changes from not wearing to wearing, then acquire the controlled data of multiple controllers and the controlled order corresponding to each controlled data.
[0100] Generally, when using a device, a head-mounted display is required. Therefore, it is possible to determine whether a user is using the device based on the wearing status of the head-mounted display. Specifically, the wearing status of the head-mounted display can be determined based on the actual application scenario and the appropriate method to be selected, such as a distance sensor, a light sensor, or a pressure sensor.
[0101] When the headset is not in use, it is assumed that the user is not currently using the device. When the headset is changed from not in use to in use, it means that the user needs to use the device. At this time, the unlock request state is triggered, and the controlled state of the controller is continuously detected to obtain the controlled data and the controlled sequence.
[0102] Meanwhile, when the head-mounted display changes from being worn to not being worn, the device can be locked; furthermore, a waiting time can be set, and when the head-mounted display remains in the "not worn" state for the waiting time, the device will be locked.
[0103] In other embodiments, other methods for triggering the unlock request state can be set, such as triggering the unlock request state when any or a specific button or joystick on the controller is detected to be operated.
[0104] This embodiment enables the triggering of an unlock request state when a user needs to use the device.
[0105] Furthermore, in the fourth embodiment of the device unlocking method of the present invention based on the first embodiment of the present invention, see... Figure 2 The method further includes the following steps:
[0106] Step S40: Receive unlock setting command, continuously detect the controlled state of the controller to obtain setting data and the setting order corresponding to the setting data;
[0107] Step S50: If a confirmation command is received, the currently acquired setting data is used as a preset trajectory, and the preset trajectory is associated with the setting order;
[0108] Step S60: Generate the preset unlocking conditions based on the preset trajectory.
[0109] The unlock setting command is used to trigger the input of preset unlock conditions. It is understood that the preset unlock conditions set by the manufacturer may not meet the user's usage habits and needs. Therefore, this embodiment provides users with the option to input preset unlock conditions, thereby improving the user experience.
[0110] The detected setting data and corresponding setting order between the unlock setting command and the confirmation command are used as the preset trajectory expected by the user. In practical applications, the rotation trajectory can be displayed in real time so that the user can confirm whether the actual rotation trajectory is consistent with the user's expected input.
[0111] Further, step S50 includes the following steps:
[0112] Step S51: Perform a reconfirmation prompt operation and continuously detect the controlled state of the handle to obtain reconfirmation data;
[0113] Step S52: If the reconfirmation data is consistent with the setting data and the setting order, then the currently acquired setting data is used as the preset trajectory, and the preset trajectory is associated with the setting order.
[0114] The reconfirmation prompt operation may include displaying reconfirmation information. When a confirmation instruction based on the reconfirmation information is received from the user, the reconfirmation prompt operation is completed. At this time, the controlled state of the controller is continuously detected to obtain reconfirmation data.
[0115] When the reconfirmed data matches the set data, it indicates that the data entered by the user twice is consistent, and the two inputs are considered to meet the user's expectations. The set data and the setting order can then be used as a preset trajectory. The method for determining whether the reconfirmed data matches the set data is analogous to the method for determining whether the controlled data and the controlled order meet the preset unlocking conditions, and will not be elaborated further.
[0116] This embodiment provides users with the option to input preset unlocking conditions, which can meet users' usage habits and needs.
[0117] It should be noted that, for the sake of simplicity, the foregoing method embodiments are all described as a series of actions. However, those skilled in the art should understand that this application is not limited to the described order of actions, as some steps may be performed in other orders or simultaneously according to this application. Furthermore, those skilled in the art should also understand that the embodiments described in the specification are preferred embodiments, and the actions and modules involved are not necessarily essential to this application.
[0118] Through the above description of the embodiments, those skilled in the art can clearly understand that the methods according to the above embodiments can be implemented by means of software plus necessary general-purpose hardware platforms. Of course, they can also be implemented by hardware, but in many cases the former is a better implementation method. Based on this understanding, the technical solution of this application, in essence, or the part that contributes to the prior art, can be embodied in the form of a software product. This computer software product is stored in a storage medium (such as ROM / RAM, magnetic disk, optical disk) and includes several instructions to cause a terminal device (which may be a mobile phone, computer, server, or network device, etc.) to execute the methods described in the various embodiments of this application.
[0119] This application also provides a device unlocking apparatus for implementing the above-described device unlocking method, wherein the device is connected to a handle, and the number of handles is multiple, and the device unlocking apparatus includes:
[0120] The first detection module is used to obtain the controlled data of multiple handles and the controlled order corresponding to each controlled data if an unlock request state is triggered in the locked state.
[0121] The first judgment module is used to determine whether the controlled data and the controlled sequence meet the preset unlocking conditions.
[0122] The first execution module is used to perform an unlocking operation if the controlled data and the controlled sequence meet the preset unlocking conditions.
[0123] This device unlocking mechanism unlocks the device by controlling the data from the controller, allowing users to perform the unlocking operation using the controller itself. This intuitive and quick unlocking eliminates the need to input characters one by one using a virtual keyboard. Adding control sequences expands the types and complexity of unlocking methods, enhancing security while catering to more diverse user habits.
[0124] It should be noted that the first detection module in this embodiment can be used to execute step S10 in this application embodiment, the first judgment module in this embodiment can be used to execute step S20 in this application embodiment, and the first execution module in this embodiment can be used to execute step S30 in this application embodiment.
[0125] Furthermore, the handle includes a joystick, and the controlled data includes the rotation trajectory of the joystick; the first determination module includes:
[0126] The first judgment unit is used to determine whether the rotation trajectory matches the preset trajectory in the preset unlocking condition, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking condition.
[0127] The first execution unit is configured to, if the rotation trajectory matches the preset trajectory and the controlled sequence corresponding to each rotation trajectory matches the preset sequence, then the controlled data and the controlled sequence satisfy the preset unlocking condition.
[0128] Furthermore, the first determination unit includes:
[0129] The first determining subunit is used to determine the trajectory features and joystick identifiers corresponding to each sub-trajectory in the rotation trajectory, wherein the sub-trajectory is the trajectory generated by a single continuous rotation of the handle joystick;
[0130] The first generation subunit is used to associate the trajectory features with the corresponding joystick identifier, and generate a feature sequence according to the controlled sequence and the associated trajectory features;
[0131] The first judgment subunit is used to determine whether the feature sequence contains a preset sequence corresponding to the preset trajectory;
[0132] The first execution subunit is configured to, if the feature sequence contains a preset sequence corresponding to the preset trajectory, then the rotation trajectory matches the preset trajectory, and the controlled order corresponding to each rotation trajectory matches the preset order.
[0133] Furthermore, the first determination unit includes:
[0134] The first acquisition subunit is used to acquire the unit trajectory step size and adjust the rotation trajectory to an integer multiple of the unit trajectory step size to obtain a unit rotation trajectory. The length of the unit rotation trajectory is less than or equal to the rotation trajectory, and the difference between the length of the unit rotation trajectory and the rotation trajectory is less than the unit trajectory step size.
[0135] The second acquisition subunit is used to acquire the unit preset trajectory corresponding to the preset trajectory and the unit trajectory, and to determine whether the unit rotation trajectory matches the unit preset trajectory.
[0136] The second execution subunit is configured to match the rotation trajectory with the preset trajectory if the unit rotation trajectory matches the unit preset trajectory.
[0137] Furthermore, the device includes a head-mounted display, and the first detection module includes:
[0138] The first detection unit is used to detect in real time whether the wearing status of the head-mounted display changes from not being worn to being worn;
[0139] The second detection unit is used to acquire controlled data of multiple controllers and the controlled order corresponding to each controlled data if the wearing state of the head-mounted display changes from not wearing to wearing.
[0140] Furthermore, the device also includes:
[0141] The first receiving module is used to receive the unlock setting command, continuously detect the controlled state of the handle to obtain setting data and the setting order corresponding to the setting data;
[0142] The second execution module is used to, if a confirmation instruction is received, take the currently acquired setting data as a preset trajectory and associate the preset trajectory with the setting order;
[0143] The first generation module is used to generate the preset unlocking conditions based on the preset trajectory.
[0144] Furthermore, the second execution module includes:
[0145] The second execution unit is used to perform the reconfirmation prompt operation and continuously detect the controlled state of the handle to obtain reconfirmation data;
[0146] The third execution unit is configured to, if the reconfirmation data is consistent with the setting data and the setting order, use the currently acquired setting data as a preset trajectory and associate the preset trajectory with the setting order.
[0147] It should be noted that the examples and application scenarios implemented by the above modules and corresponding steps are the same, but are not limited to the content disclosed in the above embodiments. It should also be noted that the above modules, as part of the device, can be implemented in software or hardware, wherein the hardware environment includes a network environment.
[0148] Reference Figure 3 In terms of hardware structure, the electronic device may include components such as a communication module 10, a memory 20, and a processor 30. In the electronic device, the processor 30 is connected to both the memory 20 and the communication module 10. The memory 20 stores a computer program, which is executed by the processor 30. When the computer program is executed, it implements the steps of the above-described method embodiments.
[0149] The communication module 10 can connect to external communication devices via a network. The communication module 10 can receive requests from the external communication devices and can also send requests, instructions, and information to the external communication devices. The external communication devices can be other electronic devices, servers, or IoT devices, such as televisions, etc.
[0150] The memory 20 can be used to store software programs and various data. The memory 20 may primarily include a program storage area and a data storage area. The program storage area may store the operating system, at least one application program required for a function (such as acquiring controlled data from multiple controllers, and the controlled sequence corresponding to each controlled data), etc.; the data storage area may include a database, and may store data or information created based on system usage, etc. Furthermore, the memory 20 may include high-speed random access memory, and may also include non-volatile memory, such as at least one disk storage device, flash memory device, or other volatile solid-state storage device.
[0151] The processor 30 is the control center of the electronic device. It connects various parts of the electronic device via various interfaces and lines. By running or executing software programs and / or modules stored in the memory 20, and by calling data stored in the memory 20, it performs various functions and processes data, thereby providing overall monitoring of the electronic device. The processor 30 may include one or more processing units; optionally, the processor 30 may integrate an application processor and a modem processor. The application processor mainly handles the operating system, user interface, and applications, while the modem processor mainly handles wireless communication. It is understood that the modem processor may not be integrated into the processor 30.
[0152] although Figure 3 Not shown, but the above-described electronic device may further include a circuit control module for connecting to a power supply to ensure the normal operation of other components. Those skilled in the art will understand that... Figure 3 The electronic device structure shown does not constitute a limitation on the electronic device and may include more or fewer components than shown, or combine certain components, or have different component arrangements.
[0153] The present invention also proposes a computer-readable storage medium having a computer program stored thereon. The computer-readable storage medium may be... Figure 3 The memory 20 in the electronic device may also be at least one of ROM (Read-Only Memory) / RAM (Random Access Memory), magnetic disk, optical disk, etc. The computer-readable storage medium includes a number of instructions to cause a terminal device with a processor (which may be a television, automobile, mobile phone, computer, server, terminal, or network device, etc.) to execute the methods described in the various embodiments of the present invention.
[0154] In this invention, the terms "first," "second," "third," "fourth," and "fifth" are used for descriptive purposes only and should not be construed as indicating or implying relative importance. Those skilled in the art can understand the specific meaning of the above terms in this invention according to the specific circumstances.
[0155] In the description of this specification, the references to terms such as "one embodiment," "some embodiments," "example," "specific example," or "some examples," etc., indicate that a specific feature, structure, material, or characteristic described in connection with that embodiment or example is included in at least one embodiment or example of the present invention. In this specification, the illustrative expressions of the above terms do not necessarily refer to the same embodiment or example. Furthermore, the specific features, structures, materials, or characteristics described may be combined in any suitable manner in one or more embodiments or examples. Moreover, without contradiction, those skilled in the art can combine and integrate the different embodiments or examples described in this specification, as well as the features of different embodiments or examples.
[0156] Although embodiments of the present invention have been shown and described above, the scope of protection of the present invention is not limited thereto. It is understood that the above embodiments are exemplary and should not be construed as limiting the present invention. Those skilled in the art can make changes, modifications, and substitutions to the above embodiments within the scope of the present invention, and such changes, modifications, and substitutions should all be covered within the scope of protection of the present invention. Therefore, the scope of protection of the present invention should be determined by the scope of the claims.
Claims
1. A device unlocking method, characterized in that, The device is connected to multiple handles, and the device unlocking method includes: In the locked state, if an unlock request state is triggered, the controlled data of multiple handles and the controlled order corresponding to each controlled data are obtained. Determine whether the controlled data and the controlled sequence meet the preset unlocking conditions; If the controlled data and the controlled sequence meet the preset unlocking conditions, then the unlocking operation is performed; The handle includes a joystick, and the controlled data includes the rotation trajectory of the joystick; the step of determining whether the controlled data and the controlled sequence meet the preset unlocking conditions includes: Determine whether the rotation trajectory matches the preset trajectory in the preset unlocking conditions, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking conditions; If the rotation trajectory matches the preset trajectory, and the controlled sequence corresponding to each rotation trajectory matches the preset sequence, then the controlled data and the controlled sequence satisfy the preset unlocking condition. The step of determining whether the rotation trajectory matches the preset trajectory in the preset unlocking conditions includes: Obtain the unit trajectory step size and adjust the rotation trajectory to an integer multiple of the unit trajectory step size to obtain a unit rotation trajectory. The length of the unit rotation trajectory is less than or equal to the rotation trajectory, and the difference between the lengths of the unit rotation trajectory and the rotation trajectory is less than the unit trajectory step size. Whenever the rotation trajectory moves by one unit trajectory step size, the control handle vibrates. Obtain the unit preset trajectory corresponding to the preset trajectory and the unit trajectory, and determine whether the unit rotation trajectory matches the unit preset trajectory; If the unit rotation trajectory matches the unit preset trajectory, then the rotation trajectory matches the preset trajectory.
2. The device unlocking method as described in claim 1, characterized in that, The step of determining whether the rotation trajectory matches the preset trajectory in the preset unlocking condition, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking condition, includes: Determine the trajectory features and joystick identifiers corresponding to each sub-trajectory in the rotation trajectory, wherein the sub-trajectory is the trajectory generated by a single continuous rotation of the handle joystick; The trajectory features are associated with the corresponding joystick identifiers, and a feature sequence is generated based on the controlled sequence and the associated trajectory features; Determine whether the feature sequence contains a preset sequence corresponding to the preset trajectory; If the feature sequence contains a preset sequence corresponding to the preset trajectory, then the rotation trajectory matches the preset trajectory, and the controlled order corresponding to each rotation trajectory matches the preset order.
3. The device unlocking method as described in claim 1, characterized in that, The device includes a head-mounted display. The step of acquiring controlled data of multiple controllers and the controlled sequence corresponding to each controlled data when an unlock request is triggered in the locked state includes: Real-time detection of whether the wearing status of the head-mounted display changes from not wearing to wearing; If the wearing state of the head-mounted display changes from not wearing to wearing, then the controlled data of multiple controllers and the controlled order corresponding to each controlled data are acquired.
4. The device unlocking method as described in claim 1, characterized in that, The method further includes: Receive the unlock setting command, continuously detect the controlled state of the controller to obtain setting data and the setting order corresponding to the setting data; If a confirmation command is received, the currently acquired setting data will be used as the preset trajectory, and the preset trajectory will be associated with the setting order. The preset unlocking conditions are generated based on the preset trajectory.
5. The device unlocking method as described in claim 4, characterized in that, The step of using the currently acquired setting data as a preset trajectory and associating the preset trajectory with the setting order includes: Perform a reconfirmation prompt operation and continuously monitor the controlled status of the controller to obtain reconfirmation data; If the reconfirmation data is consistent with the setting data and the setting order, then the currently acquired setting data is used as the preset trajectory, and the preset trajectory is associated with the setting order.
6. A device unlocking device, characterized in that, The device is connected to a handle, and there are multiple handles. The device unlocking device includes: The first detection module is used to obtain the controlled data of multiple handles and the controlled order corresponding to each controlled data if an unlock request state is triggered in the locked state. The first judgment module is used to determine whether the controlled data and the controlled sequence meet the preset unlocking conditions. The first execution module is used to perform an unlocking operation if the controlled data and the controlled sequence meet the preset unlocking conditions. The handle includes a joystick, and the controlled data includes the rotation trajectory of the joystick; the first judgment module includes: The first judgment unit is used to determine whether the rotation trajectory matches the preset trajectory in the preset unlocking condition, and whether the controlled order corresponding to each rotation trajectory matches the preset order in the preset unlocking condition; The first execution unit is configured to, if the rotation trajectory matches the preset trajectory and the controlled sequence corresponding to each rotation trajectory matches the preset sequence, then the controlled data and the controlled sequence satisfy the preset unlocking condition; The first determination unit includes: The first acquisition subunit is used to acquire the unit trajectory step size and adjust the rotation trajectory to an integer multiple of the unit trajectory step size to obtain a unit rotation trajectory. The length of the unit rotation trajectory is less than or equal to the rotation trajectory, and the difference between the length of the unit rotation trajectory and the rotation trajectory is less than the unit trajectory step size. Whenever the rotation trajectory moves by one unit trajectory step size, the control handle vibrates. The second acquisition subunit is used to acquire the unit preset trajectory corresponding to the preset trajectory and the unit trajectory, and to determine whether the unit rotation trajectory matches the unit preset trajectory. The second execution subunit is configured to match the rotation trajectory with the preset trajectory if the unit rotation trajectory matches the unit preset trajectory.
7. An electronic device, characterized in that, The electronic device includes a memory, a processor, and a computer program stored in the memory and executable on the processor, wherein the computer program, when executed by the processor, implements the steps of the device unlocking method as described in any one of claims 1 to 5.
8. A computer-readable storage medium, characterized in that, The computer-readable storage medium stores a computer program that, when executed by a processor, implements the steps of the device unlocking method as described in any one of claims 1 to 5.
Citation Information
Patent Citations
Mobile terminal and unlocking method thereof
CN103914235A
User authentication method and device
CN107018121A