Xiaomi / Redmi / POCO · Check the OEM dialer and copy original recordings from shared storage

Xiaomi and HyperOS call recording — OEM dialer and original files

Check Xiaomi OEM call recording, accessible original files, and scoped community-reported HyperOS ADB restoration. Preserve filenames before importing into Callery.

Sources reviewed . Documentation-based guidance; device behavior may vary.

Check that this guide applies to your phone
Devices
Xiaomi, Redmi, and POCO phones whose regional firmware offers an OEM recording dialer and file-manager access to original recordings; no universal HyperOS compatibility claim
Region
Check the exact model, regional firmware, carrier, and dialer; the brand or HyperOS version alone does not establish support
Dialer
Xiaomi OEM Phone/Contacts and dialer where included and supported; Google Phone is not a supported bulk archive source
Software
MIUI or HyperOS; menu locations and original-file access must be checked on the installed build
Recording access
Must confirm original files in a file manager
Callery audio formats
MP3, WAV, M4A, MP4, WebM. File access and filename requirements also apply.
Filename recognition
Older MIUI filenames have recognized caller/phone and call-date layouts; a new HyperOS filename must pass a sample import before automatic organization can be assumed.

Callery’s supported workflow needs original call recordings in a folder you can open in File Manager and copy in bulk without changing their filenames. A recording that can only be played or shared from a dialer does not meet that requirement. The filename must also contain a layout Callery recognizes for automatic caller and call-date organization.

For Xiaomi, Redmi, and POCO, start with the installed dialer and the exact firmware. Having HyperOS does not prove that a compatible Xiaomi dialer is available. Xiaomi identifies model, region, and carrier as factors in recording availability.

Check whether your phone has a usable OEM dialer

  1. Long-press Phone → App info. Note whether it is Google Phone or Xiaomi’s own Phone/Contacts and dialer, plus its version.
  2. Record the model and full regional build from Settings → About phone.
  3. Search Settings for Default apps → Phone app. If Xiaomi’s OEM app is already offered, select it. Google documents default-phone selection; the Settings labels vary by device.
  4. Check the OEM Phone app’s settings for Call recording. Xiaomi’s older MIUI guide documents call-recording options under the dial-pad menu. This is evidence for MIUI’s feature, not a promise that every HyperOS build uses that menu.

If Google Phone is the only available app, the current recording setup does not meet Callery’s original-folder requirements. That does not establish that the hardware can never work: some firmware includes an OEM dialer that needs setup. Check the scoped ADB section below if the OEM apps are not offered in Settings. A Record button in Google Phone is insufficient; see its storage limitation.

Enable an available OEM recording control

Use the OEM dialer’s recording setting or in-call recording button if your installed build provides one. Begin with one short call whose participants agree to recording. Play it back and check both voices before considering automatic recording.

If recording controls are absent, ask Xiaomi support about that exact model and regional build. Switching the default app alone does not establish that its recording integration works. Keep the previous dialer and existing recordings while checking incoming and outgoing calling.

Find the original recordings in File Manager

Xiaomi’s system-file location reference lists the call-recording directory under MIUI/Sound_recorder/Call_rec. On compatible OEM setups, check:

Internal storage/MIUI/sound_recorder/call_rec/

Open File Manager → Internal storage, then browse to the actual folder on your device. Folder capitalization may differ in the displayed reference; use the folder that already exists. Confirm that the new test recording appears there as an ordinary audio file. Do not create an empty folder and assume that recordings will start appearing in it.

This path is a place to check, not certification of every current build. Xiaomi’s current UK Google Phone article instead describes playback and individual sharing inside Phone. If you cannot find and bulk-copy the originals from accessible storage, your current setup does not meet Callery’s supported archive workflow.

Copy and check a sample before moving the archive

  1. Copy two or three original files directly from that storage folder to your computer, using USB file transfer or a file-copy method that preserves the names.
  2. Compare their names and extensions on the phone and computer. Keep every caller/number and timestamp component intact. Avoid the dialer’s Share action, messaging exports, and renaming.
  3. Play the copied files, then import them into Callery. Check the caller and original call date as well as playback.
  4. When those checks pass, copy the remaining files in batches. Keep the phone originals and a backup until the imports are checked.

Callery recognizes older MIUI filename patterns. That does not certify a new HyperOS filename. A supported audio extension alone cannot recover caller or date information that a filename does not contain. Callery accepts MP3, WAV, M4A, MP4, and WebM; merely renaming another extension is not conversion.

Community-reported OEM dialer restoration through ADB

Advanced, community-reported procedure; not Xiaomi-supported or tested by Callery on these phones. The original author’s guide restores firmware packages with ADB. It also removes Google apps and a telephony overlay for the current Android user. Those are different operations, with different consequences; do not paste the entire article as a script.

What the reports establish

Reported phone and software Reported result Still unverified for Callery
Xiaomi 14T Pro, Global ROM, HyperOS 2.0.216.0 A first-hand commenter reports the original procedure worked. The full regional build suffix is not supplied. Original recording-folder access, exact filenames, and caller/date import.
Redmi Note 14 4G, Global ROM, HyperOS 3.1 The author reports testing OEM dialer restoration. The complete build number is absent. Recording behavior and the complete original-file-to-Callery workflow.
Other models or builds Not established by these success reports. The original thread also contains missing-package, contact/default-dialer, and incoming-call UI failures. Treat the exact installed build as a separate configuration.

An OEM dialer in another region’s firmware does not prove that your current firmware contains it. Even a matching model name is insufficient after a software update. Use the reports as evidence of a possible setup path, not a compatibility certificate.

1. Check the device and save its previous state

Use Google’s official Platform Tools. Enable USB debugging on your phone and authorize your own computer as described in the ADB guide. The commands below run in your computer’s terminal. Replace PHONE_SERIAL with the exact serial shown by the first command, including it in every later command so another connected device is not selected accidentally.

adb devices -l
adb -s PHONE_SERIAL shell am get-current-user
adb -s PHONE_SERIAL shell getprop ro.product.model
adb -s PHONE_SERIAL shell getprop ro.build.version.incremental

This procedure is scoped to the phone’s owner user 0. Stop if the current user is not 0, authorization fails, or you cannot identify the target device. Do not change a work profile or substitute another user ID in an untested procedure.

Before changing anything, back up contacts and accessible recordings, note the previous default Phone app in Settings, and keep an alternative way to make a call available while testing. Check for the two existing system packages:

adb -s PHONE_SERIAL shell pm list packages -s -u --user 0 com.android.contacts
adb -s PHONE_SERIAL shell pm list packages -s -u --user 0 com.android.incallui

Each result must include the exact corresponding package:com.android.contacts or package:com.android.incallui entry. -u includes packages removed for the user; it does not download missing firmware. If either is absent, stop. NameNotFoundException, Unknown package, or a permission error is a stop condition, not a reason to obtain a regional APK or remove more apps.

Save the following outputs in private local files. Their User 0 entries record whether each package was installed and its enabled state; they are recovery notes, not a backup of contacts or call audio.

adb -s PHONE_SERIAL shell dumpsys package com.android.contacts > xiaomi-contacts-before.txt
adb -s PHONE_SERIAL shell dumpsys package com.android.incallui > xiaomi-incallui-before.txt
adb -s PHONE_SERIAL shell dumpsys package com.google.android.dialer > google-phone-before.txt
adb -s PHONE_SERIAL shell dumpsys package com.google.android.contacts > google-contacts-before.txt
adb -s PHONE_SERIAL shell dumpsys package com.android.phone.cust.overlay.miui > phone-overlay-before.txt

Do not continue if you cannot read the previous installed and enabled state or the rollback instructions below. If the package is hidden or suspended, stop rather than changing management restrictions with this procedure. Keep these files locally; they can contain device details.

2. Restore packages that already exist, then test

Start with package restoration, keeping the existing Google apps installed:

adb -s PHONE_SERIAL shell pm install-existing --user 0 com.android.contacts
adb -s PHONE_SERIAL shell pm install-existing --user 0 com.android.incallui

This is a staged adaptation of the community method: its original sequence removed other packages first. The staged order has not been hardware-tested by Callery. Android’s package implementation establishes the command’s existing-package behavior, not Xiaomi dialer compatibility.

If a restored package remains disabled, the following commands enable it. Record which commands you actually use so the previous enabled state can be restored later.

adb -s PHONE_SERIAL shell pm enable --user 0 com.android.contacts
adb -s PHONE_SERIAL shell pm enable --user 0 com.android.incallui

Open Settings → Apps → Default apps → Phone app. If the Xiaomi app is offered, select it and test an outgoing call and an incoming call using ordinary test numbers. Check contact viewing/editing, then record a short agreed test call and listen to both voices. If the OEM app is missing, crashes, cannot take the default role, or calling fails, use rollback; a successful package command alone is not success.

If recording and accessible files already work, skip all removals below and complete the archive checks. If recording is absent, the remaining source procedure is an additional, more disruptive change rather than an automatic next step.

3. Separate advanced changes in the original source

The original author also used the following removals. They are included to document the reported method, not as general cleanup or a requirement for every Xiaomi phone. Removing Google Phone or Contacts makes those apps unavailable to user 0 and can affect calling, contact editing, and access to recordings kept inside them. Removing the telephony overlay changes firmware behavior. The source thread contains reports of incomplete default-dialer and contact behavior; these reports do not establish safe operation on your build.

Before considering a removal, confirm that the particular package is a firmware system package with an exact entry, using adb -s PHONE_SERIAL shell pm list packages -s -u --user 0 PACKAGE_NAME, and that your saved User 0 state says installed=true. If the package is absent, is not a system package, or lacks a recoverable previous state, do not remove it. Do not remove Google apps simply because the OEM icon appeared.

These are the Google-app removals from the source, expressed as complete ADB commands:

adb -s PHONE_SERIAL shell pm uninstall -k --user 0 com.google.android.dialer
adb -s PHONE_SERIAL shell pm uninstall -k --user 0 com.google.android.contacts

The source separately removes this telephony overlay to expose recording on its reported setup:

adb -s PHONE_SERIAL shell pm uninstall -k --user 0 com.android.phone.cust.overlay.miui

If you choose to reproduce a removal, run one command at a time, save its result, and recheck the default Phone selection, incoming/outgoing calling, and contact behavior before continuing. Stop and roll back on any error or regression. The -k flag retains package data/cache during removal; it is not an independent backup or a guarantee that a different dialer can read private recordings. Do not clear app storage or repeat a reset/uninstall loop to force a missing feature.

4. Roll back only the changes you made

Restore a removed package only if your saved state says it was installed before this procedure. Run the applicable command for each package you removed; do not run the whole block indiscriminately:

adb -s PHONE_SERIAL shell pm install-existing --user 0 com.android.phone.cust.overlay.miui
adb -s PHONE_SERIAL shell pm install-existing --user 0 com.google.android.contacts
adb -s PHONE_SERIAL shell pm install-existing --user 0 com.google.android.dialer

Use Settings to select the previous default Phone app, then verify incoming/outgoing calls and contact access before removing an OEM app you restored for the test. If an OEM package had installed=false before you restored it, undo that installation for user 0, retaining data:

adb -s PHONE_SERIAL shell pm uninstall -k --user 0 com.android.incallui
adb -s PHONE_SERIAL shell pm uninstall -k --user 0 com.android.contacts

Again, apply only the line matching a package you installed that was previously absent for user 0. A package that was already installed must stay installed. For any package whose enabled state you changed, use its recorded value and replace PACKAGE_NAME with that exact package:

Previous enabled value in the User 0 record Restore command
0 (default) adb -s PHONE_SERIAL shell pm default-state --user 0 PACKAGE_NAME
1 (enabled) adb -s PHONE_SERIAL shell pm enable --user 0 PACKAGE_NAME
2 (disabled) adb -s PHONE_SERIAL shell pm disable --user 0 PACKAGE_NAME
3 (disabled by user) adb -s PHONE_SERIAL shell pm disable-user --user 0 PACKAGE_NAME
4 (disabled until used) adb -s PHONE_SERIAL shell pm disable-until-used --user 0 PACKAGE_NAME

Reboot if needed and test the restored calling setup again. If package restoration fails or calling remains broken, stop further package changes and contact Xiaomi support with your saved model/build and operation results. Do not reset the phone or erase its data as an archive troubleshooting step. After testing, turn USB debugging off and revoke the computer’s debugging authorization if you no longer need it.

5. Pass the complete archive check

Dialer restoration and Callery compatibility are separate outcomes. Before relying on the new setup, confirm all five:

  1. Incoming and outgoing calls work, and contact access still works.
  2. A test recording contains both voices.
  3. The original audio appears in a normal file-manager folder and several recordings can be copied together.
  4. Copies keep the original filenames and supported audio format.
  5. A small import into your Callery instance recognizes the caller and historical call date, not an unknown caller and upload time.

If any check fails, the complete workflow is not established for this build. Preserve the originals rather than bulk-importing an archive on the assumption that metadata can be reconstructed. Changing dialers does not move old Google Phone recordings into the OEM folder. Continue with the bulk backup and import guide only after these checks pass.

Sources and further reading

Browse call recording setup guides