bugfix
This commit is contained in:
@@ -2387,6 +2387,8 @@
|
||||
"PJF110" "OnePlus Ace 3V 國行版"
|
||||
"PJX110" "OnePlus Ace 3 Pro 國行版"
|
||||
"PJZ110" "OnePlus 13 國行版"
|
||||
"PKG110" "OnePlus Ace 5 國行版"
|
||||
"PKR110" "OnePlus Ace 5 Pro 國行版"
|
||||
"AC2001" "OnePlus Nord 印度版"
|
||||
"AC2003" "OnePlus Nord 歐洲版 / 國際版"
|
||||
"DN2101" "OnePlus Nord 2 印度版"
|
||||
@@ -2424,9 +2426,10 @@
|
||||
"DE2118" "OnePlus Nord N200 T-Mobile 版"
|
||||
"CPH2389" "OnePlus Nord N300"
|
||||
"CPH2551" "OnePlus Open"
|
||||
"OPD2203" "OnePlus Pad"
|
||||
"OPD2203" "OnePlus Pad (國際)"
|
||||
"OPD2304" "OnePlus Pad Go LTE"
|
||||
"OPD2305" "OnePlus Pad Go Wi-Fi"
|
||||
"OPD2407" "OnePlus Pad (國行)"
|
||||
"OPD2404" "OnePlus Pad Pro"
|
||||
"OPD2403" "OnePlus Pad 2"
|
||||
"W101IN" "OnePlus Band 印度版"
|
||||
@@ -2603,6 +2606,7 @@
|
||||
"RMX5000" "realme 13+ 5G"
|
||||
"RMX3990" "realme 13 Pro 5G"
|
||||
"RMX3921" "realme 13 Pro+ 5G"
|
||||
"RMX3940" "realme 14x 5G"
|
||||
"RMX1921" "realme XT Global"
|
||||
"RMX1922" "realme XT India"
|
||||
"RMX1992" "realme X2 India"
|
||||
@@ -2853,7 +2857,7 @@
|
||||
"V2343A" "vivo Y200 5G"
|
||||
"V2361GA" "vivo Y200 GT 5G"
|
||||
"V2353DA" "vivo Y200t 5G"
|
||||
"V2435A" "vivo Y300"
|
||||
"V2435A" "vivo Y300 5G"
|
||||
"V2410A" "vivo Y300 Pro 5G"
|
||||
"V2115A" "vivo T1"
|
||||
"V2188A" "vivo T2x"
|
||||
@@ -2934,6 +2938,7 @@
|
||||
"V2312A" "iQOO Z8x"
|
||||
"V2361A" "iQOO Z9"
|
||||
"V2352A" "iQOO Z9 Turbo"
|
||||
"V2352GA" "iQOO Z9 Turbo 長續航版"
|
||||
"V2417A" "iQOO Z9 Turbo+"
|
||||
"V2353A" "iQOO Z9x"
|
||||
"V2023A" "iQOO U1"
|
||||
@@ -3284,6 +3289,7 @@
|
||||
"PKD130" "OPPO A3x"
|
||||
"PKL110" "OPPO A3i"
|
||||
"PJY110" "OPPO A3 Pro"
|
||||
"PKP110" "OPPO A5 Pro"
|
||||
"PBCM30" "OPPO K1"
|
||||
"PCGM00" "OPPO K3 全網通版"
|
||||
"PCGT00" "OPPO K3 移動版"
|
||||
|
||||
@@ -9,7 +9,7 @@ MODDIR="$MODDIR"
|
||||
MODDIR_NAME="${MODDIR##*/}"
|
||||
tools_path="$MODDIR/tools"
|
||||
script="${0##*/}"
|
||||
backup_version="202412011445"
|
||||
backup_version="202412282251"
|
||||
[[ $SHELL = *mt* ]] && echo "請勿使用MT管理器拓展包環境執行,請更換系統環境" && exit 2
|
||||
update_backup_settings_conf() {
|
||||
echo "#0關閉音量鍵選擇 (如選項未設置,則強制使用音量鍵選擇)
|
||||
@@ -756,10 +756,7 @@ update_script() {
|
||||
esac
|
||||
echoRgb "從$zipFile更新"
|
||||
if [[ -d $path_hierarchy/tools ]]; then
|
||||
cp -r "$path_hierarchy/tools" "$TMPDIR"
|
||||
mv "$zipFile" "$path_hierarchy"
|
||||
zipFile="$path_hierarchy/${zipFile##*/}"
|
||||
rm -rf "$path_hierarchy/tools"
|
||||
mv "$path_hierarchy/tools" "$TMPDIR"
|
||||
unzip -o "$zipFile" tools/* -d "$path_hierarchy" | sed 's/inflating/釋放/g ; s/creating/創建/g ; s/Archive/解壓縮/g'
|
||||
echo_log "解壓縮${zipFile##*/}"
|
||||
if [[ $result = 0 ]]; then
|
||||
@@ -794,7 +791,7 @@ update_script() {
|
||||
echoRgb "$update_path/tools已經更新完成"
|
||||
fi
|
||||
else
|
||||
cp -r "$TMPDIR/tools" "$MODDIR"
|
||||
mv "$TMPDIR/tools" "$MODDIR"
|
||||
fi
|
||||
rm -rf "$TMPDIR"/* "$zipFile" "$MODDIR/tools.sh"
|
||||
echoRgb "更新完成 請重新執行腳本" "2"
|
||||
@@ -1033,10 +1030,11 @@ size() {
|
||||
}
|
||||
#分區佔用信息
|
||||
partition_info() {
|
||||
unset Skip
|
||||
Occupation_status="$(df -B1 "${1%/*}" | sed -n 's|% /.*|%|p' | awk '{print $(NF-1)}')"
|
||||
Filesize2="$(size "$Filesize")"
|
||||
echo " -$2大小:$Filesize2 剩餘大小:$(size "$Occupation_status")"
|
||||
[[ $Filesize != "" ]] && [[ $(echo "$Filesize > $Occupation_status" | bc) -eq 1 ]] && echoRgb "$2備份大小將超出rom可用大小" "0" && exit 2
|
||||
[[ $Filesize != "" ]] && [[ $(echo "$Filesize > $Occupation_status" | bc) -eq 1 ]] && echoRgb "$2備份大小將超出rom可用大小" "0" && Skip=1
|
||||
Occupation_status="$(df -h "${Backup%/*}" | sed -n 's|% /.*|%|p' | awk '{print $(NF-1),$(NF)}')"
|
||||
}
|
||||
kill_app() {
|
||||
@@ -1080,6 +1078,7 @@ Backup_apk() {
|
||||
Filesize="$(find "$apk_path2" -type f -printf "%s\n" | awk '{s+=$1} END {print s}')"
|
||||
rm -rf "$Backup_folder/apk.tar"*
|
||||
partition_info "$Backup" "$name1 apk"
|
||||
if [[ $Skip != 1 ]]; then
|
||||
#備份apk
|
||||
echoRgb "$1"
|
||||
echo "$apk_path" | sed -e '/^$/d' | while read; do
|
||||
@@ -1127,6 +1126,7 @@ Backup_apk() {
|
||||
else
|
||||
rm -rf "$Backup_folder"
|
||||
fi
|
||||
fi
|
||||
else
|
||||
let osj++
|
||||
rm -rf "$Backup_folder"
|
||||
@@ -1195,6 +1195,7 @@ Backup_data() {
|
||||
esac
|
||||
rm -rf "$Backup_folder/$1.tar"*
|
||||
partition_info "$Backup" "$1"
|
||||
if [[ $Skip != 1 ]]; then
|
||||
echoRgb "備份$1數據"
|
||||
# 判斷是否超過指定大小
|
||||
if [[ $Filesize2 != *"bytes"* ]]; then
|
||||
@@ -1260,6 +1261,7 @@ Backup_data() {
|
||||
fi
|
||||
[[ $Compression_method1 != "" ]] && Compression_method="$Compression_method1"
|
||||
unset Compression_method1
|
||||
fi
|
||||
else
|
||||
[[ $Size != "" ]] && echoRgb "$1數據無發生變化 跳過備份" "2"
|
||||
fi
|
||||
@@ -1820,11 +1822,12 @@ backup)
|
||||
[[ $setDisplayPowerMode = "" ]] && {
|
||||
echoRgb "應用備份開始後關閉螢幕\n -音量上關閉,音量下不關閉" "2"
|
||||
get_version "關閉" "不關閉" && setDisplayPowerMode="$branch"
|
||||
}
|
||||
} || isBoolean "$setDisplayPowerMode" "setDisplayPowerMode" && setDisplayPowerMode="$nsx"
|
||||
[[ $Background_apps_ignore = "" ]] && {
|
||||
echoRgb "存在進程忽略備份\n -音量上忽略,音量下備份" "2"
|
||||
get_version "忽略" "備份" && Background_apps_ignore="$branch"
|
||||
} ;;
|
||||
} || isBoolean "$Background_apps_ignore" "Background_apps_ignore" && Background_apps_ignore="$nsx"
|
||||
;;
|
||||
2)
|
||||
[[ $Backup_Mode = "" ]] && {
|
||||
Enter_options "輸入1備份應用+數據,輸入0僅應用不包含數據" "應用+數據" "僅應用" && isBoolean "$parameter" "Backup_Mode" && Backup_Mode="$nsx"
|
||||
@@ -1858,7 +1861,7 @@ backup)
|
||||
[[ $setDisplayPowerMode = "" ]] && {
|
||||
Enter_options "應用備份開始後關閉螢幕\n -輸入1關閉,0不關閉" "關閉" "不關閉" && isBoolean "$parameter" "setDisplayPowerMode" && setDisplayPowerMode="$nsx"
|
||||
} || {
|
||||
isBoolean "$backup_media" "backup_media" && backup_media="$nsx"
|
||||
isBoolean "$setDisplayPowerMode" "setDisplayPowerMode" && setDisplayPowerMode="$nsx"
|
||||
}
|
||||
[[ $Background_apps_ignore = "" ]] && {
|
||||
Enter_options "存在進程忽略備份\n -輸入1不備份,0備份" "忽略" "備份" && isBoolean "$parameter" "Background_apps_ignore" && Background_apps_ignore="$nsx"
|
||||
@@ -1891,7 +1894,7 @@ backup)
|
||||
hx="本地"
|
||||
echoRgb "腳本受到內核機制影響 息屏後IO性能嚴重影響\n -請勿關閉終端或是息屏備份 如需終止腳本\n -請執行終止腳本.sh即可停止" "3"
|
||||
backup_path
|
||||
echoRgb "配置詳細:\n -壓縮方式:$Compression_method\n -音量鍵確認:$Lo\n -更新:$update\n -備份模式:$Backup_Mode\n -備份外部數據:$Backup_obb_data\n -備份user數據:$Backup_user_data\n -自定義目錄備份:$backup_media\n -存在進程忽略備份:$Background_apps_ignore"
|
||||
echoRgb "配置詳細:\n -壓縮方式:$Compression_method\n -音量鍵確認:$Lo\n -更新:$update\n -備份模式:$Backup_Mode\n -備份外部數據:$Backup_obb_data\n -備份user數據:$Backup_user_data\n -自定義目錄備份:$backup_media\n -存在進程忽略備份:$Background_apps_ignore\n -關閉螢幕:$setDisplayPowerMode"
|
||||
D="1"
|
||||
Apk_info="$(pm list packages -u --user "$user" | cut -f2 -d ':' | egrep -v 'ice.message|com.topjohnwu.magisk' | sort -u)"
|
||||
if [[ $Apk_info != "" ]]; then
|
||||
@@ -2381,18 +2384,8 @@ Restore|Restore2)
|
||||
restore_permissions
|
||||
Ssaid="$(jq -r '.[] | select(.Ssaid != null).Ssaid' "$app_details")"
|
||||
if [[ $Ssaid != "" ]]; then
|
||||
if [[ $(get_ssaid "$name2") != $Ssaid ]]; then
|
||||
set_ssaid "$name2" "$Ssaid"
|
||||
if [[ $(get_ssaid "$name2") = $Ssaid ]]; then
|
||||
echoRgb "SSAID恢復成功" "1"
|
||||
SSAID_Package="$(echo "$name1 \"$name2\"")"
|
||||
SSAID_Package="$(echo "$name1 $name2 $Ssaid")"
|
||||
SSAID_Package2="$(echo "$SSAID_Package\n$SSAID_Package2")"
|
||||
else
|
||||
echoRgb "SSAID恢復失敗" "0"
|
||||
SSAID_Package1="$(echo "$name1 \"$name2\"")"
|
||||
SSAID_Package3="$(echo "$SSAID_Package1\n$SSAID_Package3")"
|
||||
fi
|
||||
fi
|
||||
unset Ssaid
|
||||
fi
|
||||
}
|
||||
@@ -2411,7 +2404,26 @@ Restore|Restore2)
|
||||
fi
|
||||
if [[ $i = $r && $operate != Restore2 ]]; then
|
||||
endtime 1 "應用恢復" "2"
|
||||
echoRgb "\n -下列為已設置SSAID應用,請勿打開需要重啟後才能使用,否則ssaid設置失敗\n$SSAID_Package2\n -下列為設置SSAID失敗應用....\n$SSAID_Package3" "3"
|
||||
[[ $SSAID_Package2 != "" ]] && {
|
||||
echoRgb "開始恢復saaid" "0"
|
||||
echo "$SSAID_Package2" | while read; do
|
||||
Ssaid="$(echo "$REPLY" | awk '{print $3}')"
|
||||
name1="$(echo "$REPLY" | awk '{print $1}')"
|
||||
name2="$(echo "$REPLY" | awk '{print $2}')"
|
||||
set_ssaid "$name2" "$Ssaid"
|
||||
if [[ $(get_ssaid "$name2") = $Ssaid ]]; then
|
||||
echoRgb "$name1 SSAID恢復成功" "1"
|
||||
SSAID_Package0="$(echo "$name1 \"$name2\"")"
|
||||
SSAID_Package1="$(echo "$SSAID_Package0\n$SSAID_Package1")"
|
||||
else
|
||||
echoRgb "$name1 SSAID恢復失敗" "0"
|
||||
SSAID_Package3="$(echo "$name1 \"$name2\"")"
|
||||
SSAID_Package4="$(echo "$SSAID_Package3\n$SSAID_Package4")"
|
||||
fi
|
||||
unset Ssaid
|
||||
done
|
||||
echoRgb "SSAID恢復後必須重新開機套用,否則應用閃退,如果沒有應用恢復ssaid則無須重啟" "0"
|
||||
}
|
||||
if [[ $media_recovery = true ]]; then
|
||||
starttime1="$(date -u "+%s")"
|
||||
app_details="$Backup_folder2/app_details.json"
|
||||
@@ -2447,7 +2459,7 @@ Restore|Restore2)
|
||||
done
|
||||
Set_screen_pause_seconds off
|
||||
starttime1="$TIME"
|
||||
echoRgb "$DX完成" && endtime 1 "$DX開始到結束" && [[ $SSAID_Package2 != "" ]] && echoRgb "SSAID恢復後必須重啟套用,如發現應用閃退請重新開機" "0"
|
||||
echoRgb "$DX完成" && endtime 1 "$DX開始到結束"
|
||||
rm -rf "$TMPDIR"/*
|
||||
} &
|
||||
wait && exit
|
||||
|
||||
Reference in New Issue
Block a user