Closed naxitoo closed 12 months ago
From what I can see there's nothing to hook or fix in frameworks:
int state;
try {
state = getIPackageManager().getComponentEnabledSetting(new ComponentName("com.samsung.android.appseparation", "com.samsung.android.appseparation.view.launcher.LauncherActivity"), 0);
} catch (RemoteException e) {
e.printStackTrace();
state = PackageManager.COMPONENT_ENABLED_STATE_DEFAULT;
}
if (userInfo.isUserTypeAppSeparation() && state != PackageManager.COMPONENT_ENABLED_STATE_ENABLED) {
enforceAppSeparationDeletion();
}
This code already handles the case where that app is uninstalled from system, it'll only print the stack trace in case an exception is thrown. If this app does cause major issues when uninstalled then do not uninstall it, you can't remove all the system apps since they might be necessary for the OS to function normally.
The same way removing KnoxGuard locks your device, removing SecAppSeparation throws a
FATAL EXCEPTION IN SYSTEM PROCESS
on every boot, making the device unusable as well.I believe these hooks would make sense as SecAppSeparation is also a Knox app which causes issues when deleted, and there may be users who don't use this app at all and want to get rid of it.
The class is located in services.jar.
Here the logs: