Short version
Problem: I found that my Android 15 mobile device was not mounting its file system on Windows 11 [obscure error?]
Attempt: After an extensive exhaustive troubleshooting odyssey I was able to fix the mount issue after downloading the Android SDK platform tools for Windows and then performing these commands:
.\adb.exe shell pm clear --user 0 com.android.mtp .\adb.exe shell cmd package unstop --user 0 com.android.mtp
Disclaimer: this may or may not apply to you.
Extensive version
Problem: I found that my Android 15 mobile device was not mounting its file system on Windows 11 [obscure error?]
Process: I fed ChatGPT all of my error logs, and all other infos that I could round up. The result of an exhaustive troubleshooting was this boiled down extensive list of steps to try.
Disclaimer: this may or may not apply to you.
Android 15 Phone Not Appearing in Windows 11 Explorer
This guide explains how to diagnose and repair an Android 15 phone that charges over USB and may even appear as an
MTP USB Device in Windows Device Manager, but does not appear under
This PC in Windows 11 File Explorer.
File Explorer uses MTP — Media Transfer Protocol.
ADB is used here as a diagnostic and repair interface into Android.
Contents
- Download Android SDK Platform Tools
- Open PowerShell
- Enable Developer Options
- Enable USB Debugging
- Connect the Phone
- Check ADB
- Check Android Storage
- Try Normal File Transfer
- Check Windows MTP Detection
- Check Android USB State
- Check android.process.media
- Check MtpService
- Check for Android ANRs
- Repair the Android MTP State
- Verify the Repair
- Quick Fix for Future Recurrence
1. Download Android SDK Platform Tools
Download Google’s official Android SDK Platform Tools for Windows:
https://developer.android.com/tools/releases/platform-tools
Download the Windows ZIP archive. It is normally named something similar to:
platform-tools-latest-windows.zip
Extract the ZIP to a permanent folder, for example:
C:\Android\platform-tools
Inside the directory you should see files such as:
adb.exe fastboot.exe AdbWinApi.dll AdbWinUsbApi.dll
Modern Windows 11 normally includes the necessary Microsoft MTP driver.
2. Open PowerShell in the Platform Tools Folder
Open the platform-tools directory in Windows File Explorer.
Click the Explorer address bar, type:
powershell
and press Enter.
You should get a prompt similar to:
PS C:\Android\platform-tools>
Test ADB:
.\adb.exe version
PowerShell requires the .\ prefix unless adb.exe has been added to your Windows PATH.
3. Enable Android Developer Options
On the phone open:
Settings → About phone
Find Build number.
Tap Build number seven times.
Android may ask for your PIN or password. You should then see a message saying that Developer Options have been enabled.
4. Enable USB Debugging
Open:
Settings → System → Developer options
Depending on the manufacturer, Developer Options may be in another submenu.
Enable:
USB debugging
Accept the Android warning.
5. Connect the Phone to Windows
Use a USB cable capable of data transfer.
Some USB cables are charging-only.
Prefer:
- a direct USB port on the PC,
- a known-good USB cable,
- an unlocked phone.
Initially, it is fine to leave the phone on:
Charging only / No data transfer
6. Check Whether ADB Sees the Phone
Run:
.\adb.exe devices
The first time you may see:
List of devices attached 5011AF1010000377 unauthorized
The serial number will be different on another phone.
unauthorized means that the computer has reached the phone, but Android has not yet authorized USB debugging.
Look at the phone. You should see:
Allow USB debugging?
Optionally select:
Always allow from this computer
Then press Allow.
Run again:
.\adb.exe devices
You want:
List of devices attached 5011AF1010000377 device
Run:
.\adb.exe kill-server .\adb.exe start-server .\adb.exe devices
Unlock the phone and look again for the authorization dialog.
7. Check That Android Internal Storage Exists
Run:
.\adb.exe shell ls /storage/emulated/0
A normal phone should show directories such as:
Alarms Android DCIM Documents Download Movies Music Notifications Pictures Podcasts Ringtones
This proves that Android’s shared internal storage is mounted internally.
8. Try Normal File Transfer First
Before performing any repair, try the standard Android method.
- Unlock the phone.
- Pull down the notification shade.
- Tap the USB notification.
- Select File transfer / Android Auto.
- Wait about 10 seconds.
- Open Windows File Explorer → This PC.
If the phone appears, stop here.
9. Check Whether Windows Detects MTP
In PowerShell run:
Get-PnpDevice -PresentOnly | Where-Object {
$_.FriendlyName -match 'MTP|Android' -or $_.Class -eq 'WPD'
} | Format-Table Status,Class,FriendlyName,InstanceId -AutoSize
A healthy MTP interface may appear as:
OK WPD MTP-USB-Gerät
On English Windows:
OK WPD MTP USB Device
ADB may also appear separately:
OK USBDevice ADB Interface
This is normal. Android presents several USB interfaces simultaneously.
10. Check Android’s USB State
With the phone connected, run:
.\adb.exe shell getprop sys.usb.config .\adb.exe shell getprop sys.usb.state .\adb.exe shell getprop persist.sys.usb.config
Vendor Android builds may return different values.
You can also inspect the USB manager:
.\adb.exe shell dumpsys usb
Useful values include:
current_functions=MTP current_functions_applied=true connected=true configured=true kernel_state=CONFIGURED
11. Check android.process.media
Android MTP depends on a process called:
android.process.media
Run:
.\adb.exe shell ps -A | findstr /i "android.process.media"
For the normal main Android user you may see:
u0_a50 18512 ... android.process.media
u0 means Android User 0, normally the phone’s main profile.
If you use an Android Work Profile you may additionally see:
u10_a50 18706 ... android.process.media
That is normal.
12. Check the Android MTP Service
Run:
.\adb.exe shell dumpsys activity services com.android.mtp
In a healthy state you should see:
com.android.mtp/.MtpService
and something similar to:
processName=android.process.media
app=ProcessRecord{...android.process.media/u0a50}
The service binding should eventually show:
binder=android.os.BinderProxy@... requested=true received=true hasBound=true
A broken state may instead show:
app=null binder=null requested=false received=false hasBound=false
or the service may remain under:
Pending services
13. Check Whether android.process.media Is Crashing
Run:
.\adb.exe shell ps -A | findstr /i "android.process.media"
Note the PID of the u0 process.
Wait about 20 seconds and run the command again.
If the PID changes repeatedly, or the User-0 process disappears, Android is probably killing and restarting it.
Check the Android log:
.\adb.exe logcat -d -v time | Select-String -Pattern ` "failed to complete startup|ANR in android.process.media|Start proc.*android.process.media|Killing.*android.process.media" | Select-Object -Last 30
A broken system may show:
ANR in android.process.media Reason: ... failed to complete startup
or:
timeout publishing content providers
Android itself is failing to initialize the system process required for MTP.
14. Repair the Android MTP State
This was the repair that solved the Android 15 failure described here.
First change the phone USB mode temporarily to:
Charging only / No data transfer
Keep USB debugging enabled.
Verify ADB:
.\adb.exe devices
You want:
xxxxxxxxxxxx device
Reset the per-user MTP package state
Run:
.\adb.exe shell pm clear --user 0 com.android.mtp
Expected:
Success
Then remove the Android “stopped” state:
.\adb.exe shell cmd package unstop --user 0 com.android.mtp
Expected:
Package com.android.mtp new stopped state: false
It resets the Android MTP system application’s per-user state.
15. Verify That the Repair Worked
Check android.process.media
.\adb.exe shell ps -A | findstr /i "android.process.media"
Note the User-0 PID.
Wait:
Start-Sleep -Seconds 20
Check again:
.\adb.exe shell ps -A | findstr /i "android.process.media"
The same User-0 PID should still be present.
Switch back to File Transfer
On the phone select:
USB → File transfer / Android Auto
Wait around 10 seconds.
Check MtpService again
.\adb.exe shell dumpsys activity services com.android.mtp
A healthy result should contain:
app=ProcessRecord{...android.process.media/u0a50}
and:
requested=true received=true hasBound=true
Check Windows
Get-PnpDevice -PresentOnly | Where-Object {
$_.FriendlyName -match 'MTP|Android' -or $_.Class -eq 'WPD'
} | Format-Table Status,Class,FriendlyName,InstanceId -AutoSize
You should see the Android MTP interface with status:
OK
Finally open:
Windows File Explorer → This PC
The phone should now appear as a portable device.
16. Important Terminology: Android Is Usually Not a Drive Letter
Windows normally does not mount a modern Android phone as a raw disk such as:
E:\ F:\ G:\
Instead, Android appears under This PC as a
portable MTP device.
This is normal.
Android deliberately does not normally expose its internal filesystem as a traditional USB mass-storage disk.
17. Quick Fix for Future Recurrence
If exactly the same problem returns — Windows detects the MTP USB interface but the phone does not appear in Explorer,
and android.process.media is failing — the important repair commands are:
.\adb.exe shell pm clear --user 0 com.android.mtp .\adb.exe shell cmd package unstop --user 0 com.android.mtp
Then switch the phone back to:
File transfer / Android Auto
and reopen Windows Explorer.
18. Optional Diagnostic Commands
Check connected Android devices
.\adb.exe devices
Restart ADB
.\adb.exe kill-server .\adb.exe start-server .\adb.exe devices
.\adb.exe shell ls -la /storage/emulated/0
Check Android storage volumes
.\adb.exe shell sm list-volumes all
Check Android mount state
.\adb.exe shell dumpsys mount
Check USB state
.\adb.exe shell dumpsys usb
Check MTP package status
.\adb.exe shell dumpsys package com.android.mtp | findstr /i "User 0 stopped enabled"
Check media process
.\adb.exe shell ps -A | findstr /i "android.process.media"
Check MTP service
.\adb.exe shell dumpsys activity services com.android.mtp
Check Windows MTP/WPD devices
Get-PnpDevice -PresentOnly | Where-Object {
$_.FriendlyName -match 'MTP|Android' -or $_.Class -eq 'WPD'
} | Format-Table Status,Class,FriendlyName,InstanceId -AutoSize
19. What the Failure Actually Looked Like
In the failed state, Windows correctly detected the phone’s MTP USB interface, but Android’s
android.process.media process for User 0 repeatedly failed during startup.
Android repeatedly reported:
ANR in android.process.media failed to complete startup
and:
timeout publishing content providers
Because the Android-side MTP service never completed its startup, Windows could load its MTP driver but could not obtain
a usable MTP session from the phone.
Resetting the User-0 state of:
com.android.mtp
restored a stable android.process.media process and a healthy MTP service binding.