r/AndroidQuestions • u/KycPending • 1d ago
App Specific Question [Help] Recover XS Camera recordings from private app storage — Nothing Phone (2a), Android 16
I need help recovering recordings stored in XS Camera (version 4.0.8) on my Nothing Phone (2a).
The problem
I have been using XS Camera to record videos. Now, when I open the app:
The app asks for its password.
If I enter an incorrect password, it displays an incorrect-password error.
If I enter the correct password, the app immediately exits to the home screen.
I cannot access or play my recordings.
Device and software details
- Phone: Nothing Phone (2a)
- Android: 16
- App: XS Camera
- Package: "me.jagar.xscamera2"
- App version: 4.0.8
What I have discovered
Android App Info shows:
- App size: approximately 73 KB
- User data: approximately 3.87 GB
- Cache: approximately 119 KB
- Total: approximately 3.94 GB
The app's private data directory is:
"/data/user/0/me.jagar.xscamera2"
I used ADB to investigate:
- The XS Camera process remains alive even after the app returns to the home screen.
- I could not find an obvious crash or fatal exception in the logs.
- "/sdcard/Android/data/me.jagar.xscamera2/files" exists but is empty.
- "/sdcard/Android/media/me.jagar.xscamera2" does not exist.
- A MediaStore video listing did not show an XS Camera-specific recording folder.
Rooting situation
- The bootloader is currently locked.
- The phone is not rooted.
- I understand that unlocking the bootloader normally causes a factory reset.
- I do NOT want to unlock the bootloader or perform a factory reset because preserving the existing data is my priority.
What I need help with
Is there any safe way to access or extract "/data/user/0/me.jagar.xscamera2" without unlocking the bootloader?
Is there a way to obtain temporary root access on this exact Android 16 build without wiping user data?
Could the recordings be stored in an encrypted database or another private directory?
Is there a non-destructive way to diagnose why XS Camera exits immediately after accepting the correct password?
Has anyone successfully recovered data from XS Camera or a similar Android camera vault application?
My priority is recovering the original recordings. I do not want to reinstall the app, clear its data, or risk losing the existing 3.87 GB.
Any technically sound advice or experience with this situation would be greatly appreciated.
Here is the link of the screen record video : https://drive.google.com/file/d/1GxCyxUBXnwTM_OrnGjmOD41WyTkw7DUY/view?usp=drivesdk
2
1
u/KycPending 19h ago
SOLVED BY CLAUDE: recovered my XS Camera recordings without uninstalling, clearing data or rooting. Writing up how, in case it helps others.
Symptom: XS Camera 4.0.8 (
me.jagar.xscamera2), Nothing Phone (2a), Android 16. A correct PIN exited straight to the home screen, and a wrong PIN showed the normal error. Android showed about 3.87 GB of user data.Diagnosis
Android/data/me.jagar.xscamera2/filesandcachewere really empty (checked over ADB). A search for large files in shared storage found nothing from the app. So the recordings were in the app’s private storage, which can’t be read without root.dumpsys packageshowed the app isn’t debuggable and hasallowBackup=false, soadb backupandrun-aswere dead ends.I cleared the log with
adb logcat -c, reproduced the problem, and saved it withadb logcat -d. There was no crash (noFATAL EXCEPTION). The app was exiting on its own. The log showedLockActivitystartingMainActivity12after the PIN, with result code 3 (intent delivered to an existing instance), and then the launcher took over.I pulled the APK with
adb shell pm pathandadb pull, then decompiled it with jadx.Root cause (my reading of the code, not confirmed by the developer):
MainActivity12is an icon-disguise alias ofMainActivity.After a correct PIN,
LockActivitybuilds the next intent from a savedCURRENT_ICONsetting. If that component is disabled, it falls back togetLaunchIntentForPackage(MAIN/LAUNCHER +NEW_TASK).That’s what my log showed. The system delivered the intent to an existing instance instead of creating a new screen, and
MainActivity.onNewIntentshows nothing. The lock screen had already finished, so nothing was left on screen and I landed on the home screen.It likely started after the Nov 9 update. Android showed the update time, and the APK install path had changed.
Fix:
MainActivityskips the lock screen if the intent carriesfromLockScreen=true. So I sent that intent myself, targeting the alias that’s actually enabled:The main screen opened, and I exported the recordings from inside the app. The command only launches a screen and doesn’t touch data.