2

I may have just messed up my smartphone and really need your help. I wanted to get rid of some of the bloatware on my A40 and read online that one can actually uninstall many apps via the Windows command line. So I looked up a list of apps supposedly safe to remove and ran a batch file to uninstall them. This is as far as I got:

a40:/ $ pm uninstall --user 0 com.sec.android.app.samsungapps
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.camera.sticker.facear.preload
Success
a40:/ $ pm uninstall --user 0 com.sec.android.mimage.gear360editor
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.smartmirroring
Success
a40:/ $ pm uninstall --user 0 com.android.htmlviewer
Success
a40:/ $ pm uninstall --user 0 com.sec.android.provider.badge
Success
a40:/ $ pm uninstall --user 0 com.android.sharedstoragebackup
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.simplesharing
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.themecenter
Success
a40:/ $ pm uninstall --user 0 android.autoinstalls.config.samsung
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.mdm.services.simpin
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.stickercenter
Success
a40:/ $ pm uninstall --user 0 com.sec.android.mimage.avatarstickers
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.knox.analytics.uploader
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.knox.cloudmdm.smdms
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.camera.sticker.stamp.preload
Success
1|a40:/ $ pm uninstall --user 0 com.sec.factory.cameralyzer
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.sdk.handwriting
Success
a40:/ $ pm uninstall --user 0 com.sec.android.app.fm
Success
a40:/ $ pm uninstall --user 0 com.sec.enterprise.knox.attestation
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.mdm
Success
1|a40:/ $ pm uninstall --user 0 com.sec.android.widgetapp.samsungapps
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.app.spage
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.drivelink.stub
Success
1|a40:/ $ pm uninstall --user 0 com.wsomacp
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.game.gametools
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.game.gos
Success
1|a40:/ $ pm uninstall --user 0 com.dsi.ant.sample.acquirechannels
Success
a40:/ $ pm uninstall --user 0 com.dsi.ant.service.socket
Success
a40:/ $ pm uninstall --user 0 com.dsi.ant.server
Success
1|a40:/ $ pm uninstall --user 0 com.android.egg
Success
a40:/ $ pm uninstall --user 0 com.sec.android.easyonehand
Success
1|a40:/ $ pm uninstall --user 0 com.sec.android.app.launcher
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.mateagent
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.app.watchmanagerstub
Success
a40:/ $ pm uninstall --user 0 com.sec.android.daemonapp
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.app.social
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.wellbeing
Success
a40:/ $ pm uninstall --user 0 com.samsung.android.da.daagent
Success
1|a40:/ $ pm uninstall --user 0 com.android.bips
Success
1|a40:/ $ pm uninstall --user 0 com.samsung.android.authfw
Success

Right before that, I had moved apps related to "Knox" and "MDM" and everything seemed fine. But even while the last commands were running, the "desktop" disappeared (the home screen with all my app shortcuts) and some kind of "busy notification" was running instead (I think it said something like "starting up apps" or "launching apps"). But the phone didn't reboot, it just seems that the homescreen had crashed. I then noticed that I might have slipped in apps for deletion that I actually needed or was using, such as

com.sec.android.app.launcher
com.samsung.android.wellbeing

Since the phone seemed to be stuck in this "busy loop", I decided to restart it by long-pressing the power button and selecting restart. But from this point, the phone wouldn't restart and got stuck in a reboot loop, where only the Samsung logo pops up, followed by a short vibration pulse, then reboot etc.

At this point I panicked and started searching online for solutions (which also brought me to this forum). I've read about using OEM unlocking, firmware-flashing using Odin, Samsung Tool Pro, TWRP etc. but quickly got lost in the woods and didn't want to risk breaking things more.

There are log files I can access from the boot menu which might contain a lot of useful information regarding the cause of the problem, but it's way too much to type it:

/cache/recovery/last_log
/cache/recovery/last_kmsg
/cache/recovery/last_history
/cache/recovery/rescueparty.log
/cache/recovery/last_avc_msg_recovery
/cache/recovery/last_log.1
/cache/recovery/last_kmsg.1
[...]
/cache/recovery/last_log.9
/cache/recovery/last_kmsg.9

Is there a way I could somehow read these log files via a USB connection? For example, in rescueparty_log, there is some "serious-sounding" stuff:

!@*** FATAL EXCEPTION IN SYSTEM PROCESS: main
java.lang.RuntimeException: There must be exactly one installer; found []
?at com.android.server.pm.PackageManagerService.getRequiredInstallerLPr(PackageManagerService.java:4422)
?at com.android.server.pm.PackageManagerService.<init>(PackageManagerService.java:3954)
?at com.android.server.pm.PackageManagerService.main(PackageManagerService.java:2856)
?at com.android.server.SystemServer.startBootstrapServices(SystemServer.java:985)
?at com.android.server.SystemServer.run(SystemServer.java:762)
?at com.android.server.SystemServer.main(SystemServer.java:762)
?at java.lang.reflect.Method.invoke(Native Method)
?at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:494)
?at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:945)
Error reporting crash
java.lang.NullPointerException: Attempt to invoke interface method 'void android.app.IActivityManager.handleApplicationCrash(android.os.IBinder, android.app.ApplicationErrorReport$ParcelableCrashInfo)' on a null object reference
?at com.android.internal.os.RuntimeInit$KillApplicationHandler.uncaughtException(RuntimeInit.java:144)
?at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1068)
?at java.lang.ThreadGroup.uncaughtException(ThreadGroup.java:1063)
?at java.lang.Thread.dispatchUncaughtException(Thread.java:1955)

Also, some more information from the boot screen output:

Android Recovery
samsung/a40eea/a40
9/PPR1.180610.011/A405FNXXU3ATA4
user/release-keys

#Reboot Recovery Cause is [system_server:7340 RecoverySystemRescueParty]#
Support SINGLE-SKU

Block-Based OTA
Supported API: 3

MANUAL MODE v1.0.0#

Is anyone perhaps familiar with this problem and knows of a way how I could get the phone to start up properly, so I can at least recover all my personal data?

My impression is that I might have deleted some important system app, since the problem occurred right in the middle of the uninstall process (see shell history above), and I'm a little bit hopeful that maybe it's possible to just reinstall it somehow. I haven't tried the "Wipe data/factory reset" option in the boot menu as I don't want to lose all my data.

Thank you so much for your help, any advice is super-appreciated!!

Update/additional information:

...from the downloading mode information text:

FRP LOCK: OFF

OEM LOCK: ON(L)

Secure Download: Enabled

Also, I never registered a Google account on this device.

3
  • I think I got the bloatware list from one of these two sites: hxxps://rootmygalaxy.net/remove-bloatware-galaxy-s20-s20-s20-fe-s20-ultra and hxxps://androidflagship.com/40011-learn-to-completely-remove-bloatware-on-your-galaxy-s10-no-root-needed
    – srhslvmn
    Jun 17, 2022 at 19:43
  • With a Linux system, I would simply mount the hard drive to another PC, decrypt it if necessary, and rescue my data by copying the files. Is there something similar that can be done on Android (since it seems to be based on the same architecture)?
    – srhslvmn
    Jun 17, 2022 at 19:44
  • Comments are not for extended discussion; this conversation has been moved to chat.
    – Firelord
    Jun 19, 2022 at 11:06

2 Answers 2

1

encryption is hardware-backed therefore userdata can decrypted on device itself only. to get adb access you need combination ROM + DID token.
Still userdata is not accessable unless device is unlocked/decrypted with lock screen credentials (might not possible from adb in current boot state).

Factory reset device from recovery and unlock FRP with samsung or google account afterwards.

Next time backup your important data before trying to disable system apps

1
  • Comments are not for extended discussion; this conversation has been moved to chat.
    – Firelord
    Jun 19, 2022 at 11:07
1

I'm proposing a possible way to solve this issue.

There is an interesting comment below the answer to Can system apps be enabled/disabled directly from the filesystem? :

"It is also safe to simply remove the package-restrictions.xml file — a new 'clean' file will be recreated on next reboot." – ccpizza Oct 3, 2021 at 16:43

As far as I understand, Android 9.0 switched from Full-Disk Encryption (FDE) to File-Based Encryption (FBE), which means that encryption is done on a file-by-file basis by default.

If it's possible to locate package-restrictions.xml on the internal storage, deleting the file (instead of modifying its content in order to restore individual app settings) will cause the stock version to be restored on the next reboot. Any problem due to a prior misconfiguration of package-restrictions.xml by pm uninstall will then be magically gone.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .