Fix retaining disabled ROM apps through module updates in some scenarios

- KernelSU or APatch have completely hidden directories/files so would not get recreated
- for .apk files with a config.xml the config.xml would not get recreated due to the 0-size/hidden .apk
This commit is contained in:
osm0sis
2024-03-04 13:44:14 -04:00
parent b30b43f2ae
commit ffd510aee5
2 changed files with 9 additions and 3 deletions

View File

@@ -37,13 +37,13 @@ for APP in $(grep -v '^#' $LIST); do
elif [[ "$APP" = *".apk" ]]; then
APK=$(readlink -f $APP);
fi
if [ "$APK" ]; then
if [ -s "$APK" ]; then
PKGNAME=$(unzip -p $APK AndroidManifest.xml | tr -d '\0' | grep -oE '[[:alnum:].-_]+\*http' | cut -d\* -f1)
if [ "$PKGNAME" ] && grep -q "overlay package=\"$PKGNAME" $CFG; then
HIDECFG=$MODPATH$PREFIX$CFG
if [ ! -f $HIDECFG ]; then
if [ ! -f "$HIDECFG" ]; then
mkdir -p $(dirname $HIDECFG)
cp -fp $CFG $HIDECFG
cp -af $CFG $HIDECFG
fi
sed -i 's;<overlay \(package="'"$PKGNAME"'".*\) />;<!-- overlay \1 -->;' $HIDECFG
fi

View File

@@ -3,6 +3,12 @@ if [ "$API" -lt 26 ]; then
abort "! You can't use this module on Android < 8.0"
fi
# Copy any disabled app files to updated module
if [ -d "/data/adb/modules/playintegrityfix/system" ]; then
ui_print "- Restoring disabled ROM apps configuration"
cp -arf /data/adb/modules/playintegrityfix/system $MODPATH
fi
# Copy any supported custom files to updated module
for FILE in custom.app_replace.list custom.pif.json; do
if [ -f "/data/adb/modules/playintegrityfix/$FILE" ]; then