A fixed-coordinate macro cannot reliably enter a password when the numeric keys move. The first digit may be in the expected place, while the next rendering puts that same number somewhere else. Replaying a saved sequence of coordinates can therefore enter the wrong value and submit it before the error is visible.
EmuloMobile has a dedicated Virtual Keyboard action for this case. Instead of storing one coordinate per password digit, you capture a visual reference for each glyph from 0 to 9. During execution, the action finds the required digit on a fresh screen frame before every tap, enters a locally stored password, and then taps the Confirm point you configured.
Use this feature only on accounts and services where automation is allowed. It automates a keyboard you are authorized to use; it does not bypass authentication, access controls, or a service’s rules.
When the Virtual Keyboard action is the right tool
Use this action when all of the following are true:
- the screen asks for a numeric password or sub-password with 4 to 10 digits;
- the keys are drawn on screen and their positions can change;
- the glyphs 0 through 9 have a stable visual style;
- there is a Confirm button at a predictable point on that screen;
- your macro can identify when the keyboard is actually present.
For an ordinary labeled button that moves, the Tap Text action with on-device OCR is usually simpler. For a static keypad, a guarded sequence of taps may be enough. Virtual Keyboard is specifically useful when the flow must locate the digits again as the layout changes.
Prepare the screen before editing the macro
Open the target app and navigate to the keyboard. Keep all ten digits and the Confirm button visible. Build and run the macro with the same resolution and orientation: EmuloMobile associates a macro with its display dimensions and orientation, so changing either requires returning to a compatible display before editing or executing it.
Choose clean visual references. A useful digit capture contains the glyph and enough of its key background to distinguish it, without including neighboring keys, animated effects, balances, usernames, or other changing content. If a key has a pressed state, capture its normal resting state.
If the service changes the keyboard theme, font, scale, or color later, plan to recapture the affected references. A template represents what the key looks like; it is not a semantic description of every possible design.
How to configure a shuffled keyboard in EmuloMobile
Start with the macro open in the builder and the target keyboard visible behind it.
1. Add the Virtual Keyboard action
Add a new action, go to the Password section, and choose Virtual Keyboard. This editor keeps a separate set of digit images for this keyboard, so another Virtual Keyboard step can use a different keypad design without sharing its references.
Do not attach the action to a generic screen state. Add a condition that is specific to the password prompt—for example, a stable title, keyboard panel, or nearby label. The condition is evaluated before the action. A precise trigger reduces the chance that the step runs on an unrelated numeric screen.
If you are still assembling your first visual flow, review the on-device Android automation guide before adding this specialized step.
2. Capture digits 0 through 9
The editor shows Keyboard digits (0/10) and one capture control for every digit. Select 0, position the live region over the zero key, and confirm. Repeat the process for 1 through 9 until the counter reaches 10/10.
Capture only one key at a time. Keep the crop tight and consistent across all ten references. If the built-in OCR check says a captured digit looks like another value, inspect the crop and recapture it rather than dismissing a clear mismatch.
The configuration is not complete with only the digits that happen to appear in your current password. All ten references are required. That complete set lets the same action continue to work if the password is changed later without rebuilding its visual catalog.
3. Set the Confirm point
Choose Set Confirm button, move the live crosshair to the center of the final confirmation control, and accept the point. The digit keys are located visually at runtime, but Confirm is a configured screen coordinate. Place it away from the button edge and verify that banners or the software keyboard do not shift it.
This difference matters during maintenance: a changed digit layout calls for new digit captures; a moved Confirm button calls for a new Confirm point.
4. Register the numeric password
Enter a password containing 4 to 10 digits. The editor rejects letters and values outside that length. The field is masked and can be revealed while you verify it.
The password is not written into the macro file. EmuloMobile encrypts it with a key from the Android Keystore and keeps it for this keyboard on this device. It does not enter the macro package, cloud synchronization, or sharing. Sertta cannot read or recover it.
That boundary has a practical consequence: after moving or downloading the macro on another device, open the Virtual Keyboard step there and register the password again. A macro can carry the digit references and Confirm point, but not this local secret.
When editing an already configured action, leave the password field empty to keep the value stored on that device. Entering a new value replaces the previous one when you confirm the editor.
5. Save the step and the macro
The action can be added only after all ten digits, the Confirm point, and a valid local password are present. Confirm the action, then use the macro builder’s explicit Save control. Leaving the builder with unsaved changes does not make the new configuration part of the stored macro.
What happens during execution
When the action’s conditions pass, EmuloMobile loads the ten digit references and the password from the device. For each character in the password, it:
- captures a fresh frame of the current screen;
- finds the visual reference for the required digit;
- checks the candidate glyph with OCR when it can make a clear decision;
- taps the center of the accepted key;
- waits briefly before locating the next digit.
Using a fresh frame per digit is important for keyboards that reshuffle or animate after a tap. After the last digit, the action taps the configured Confirm point and allows the prompt time to settle.
The digit-matching threshold starts at 82% in the action model. Treat recapturing a weak reference as the first fix. Lowering recognition requirements indiscriminately would make visually similar keys harder to distinguish safely.
Understand the built-in stopping safeguards
Password entry should fail closed when the screen cannot be interpreted reliably. The Virtual Keyboard action therefore includes two relevant stops.
If a required key cannot be identified safely, the action does not tap Confirm and the macro stops on that first detection failure. Open the app, inspect the warning, and recapture the digit references before trying again.
The action also tracks completed submissions for each configured keyboard. If two confirmations occurred within 30 seconds and the same keyboard invokes the action again inside that window, EmuloMobile stops before typing a third time. The warning directs you to check three likely causes:
- the registered password is wrong;
- the Confirm point is wrong;
- the action’s trigger condition is allowing an unintended loop.
This is not proof that the remote service rejected a password; the app does not infer account state. It is a local guard against rapidly resubmitting when the keyboard keeps coming back.
Test with a controlled checklist
Run the macro while you can watch the keyboard and stop it immediately. Check the following:
- the action stays idle until the password prompt is visible;
- every required digit is tapped, including repeated digits;
- a reshuffle after one tap does not send the next tap to the old position;
- Confirm receives one centered tap;
- the prompt closes and the flow proceeds to the expected screen;
- stopping and restarting the macro does not ask for the password again on the same device;
- a deliberately outdated digit reference makes the action stop instead of submitting an uncertain sequence.
Do not test repeated wrong submissions against a live account. Validate captures and the trigger condition on a safe screen or test account where possible, and respect any lockout policy imposed by the service.
For longer flows, you can use variables and conditional actions to record what should happen after the keyboard step. Keep that state separate from the password itself: variables belong to the macro’s runtime logic, while the numeric secret remains in the device vault.
Maintain the action when the screen changes
Reopen the step after any change to the target interface. Recapture a digit if its glyph or key background changed. Reset Confirm if the button moved. Review the trigger condition if the same keyboard panel can appear in more than one context.
Also re-register the password after moving to a new device, restoring an environment that no longer has access to its Android Keystore key, or intentionally replacing the secret. The correct maintenance response to a missing local password is to enter it again—not to place it in a note, variable, filename, or shared macro.
Turn a moving keypad into an explicit macro step
A shuffled keyboard is unreliable only when the macro treats it as a fixed grid. Capturing each digit, protecting the trigger, and keeping the password outside the macro turns that changing layout into a step you can inspect and maintain.
Explore EmuloMobile and build visual Android automations directly on the device.