bug fix
This commit is contained in:
@@ -17,8 +17,7 @@ launcher_app="$(pm resolve-activity --brief -c android.intent.category.HOME -a a
|
||||
for launcher_app in $launcher_app; do
|
||||
[[ $launcher_app != "android" ]] && [[ $(pgrep -f "$launcher_app" | grep -v 'grep' | wc -l) -ge 1 ]] && launcher_app="$launcher_app"
|
||||
done
|
||||
isBoolean "$path" && txtpath="$nsx"
|
||||
[[ $txtpath = true ]] && txtpath="$PWD" || txtpath="$MODDIR"
|
||||
txtpath="$MODDIR"
|
||||
txtpath="${txtpath/'/storage/emulated/'/'/data/media/'}"
|
||||
nametxt="$txtpath/應用列表.txt"
|
||||
[[ ! -e $nametxt ]] && echo '#不需要備份的應用請在開頭注釋# 比如#酷安 xxxxxxxx\n#不需要備份數據比如酷安! xxxxxxxx應用名後方加一個驚嘆號即可 注意是應用名不是包名' >"$nametxt"
|
||||
@@ -24,23 +24,18 @@ if [[ $Lo = false ]]; then
|
||||
isBoolean "$Splist" && Splist="$nsx"
|
||||
isBoolean "$USBdefault" && USBdefault="$nsx"
|
||||
isBoolean "$Backup_obb_data" && Backup_obb_data="$nsx"
|
||||
isBoolean "$path" && path3="$nsx"
|
||||
isBoolean "$Backup_user_data" && Backup_user_data="$nsx"
|
||||
isBoolean "$backup_media" && backup_media="$nsx"
|
||||
else
|
||||
echoRgb "備份路徑位置為絕對位置或是當前環境位置\n 音量上當前環境位置,音量下腳本絕對位置"
|
||||
get_version "當前環境位置" "腳本絕對位置" && path3="$branch"
|
||||
fi
|
||||
i=1
|
||||
#數據目錄
|
||||
path="/data/media/0/Android"
|
||||
path2="/data/user/0"
|
||||
if [[ $path3 = true ]]; then
|
||||
Backup="$PWD/Backup_$Compression_method"
|
||||
txt="$PWD/應用列表.txt"
|
||||
txt="$MODDIR/應用列表.txt"
|
||||
if [[ $Output_path != "" ]]; then
|
||||
echoRgb "使用自定義目錄\n-輸出位置:$Output_path" && Backup="$Output_path/Backup_$Compression_method"
|
||||
else
|
||||
Backup="$MODDIR/Backup_$Compression_method"
|
||||
txt="$MODDIR/應用列表.txt"
|
||||
fi
|
||||
txt="${txt/'/storage/emulated/'/'/data/media/'}"
|
||||
PU="$(ls /dev/block/vold | grep public)"
|
||||
@@ -84,9 +79,9 @@ fi
|
||||
txt2="$Backup/應用列表.txt"
|
||||
[[ ! -f $txt2 ]] && echo "#不需要恢復還原的應用請在開頭注釋# 比如#xxxxxxxx 酷安" >"$txt2"
|
||||
[[ ! -d $Backup/tools ]] && cp -r "$tools_path" "$Backup" && rm -rf "$Backup/tools/bin/zip" "$Backup/tools/script"
|
||||
[[ ! -f $Backup/還原備份.sh ]] && cp -r "$script_path/restore" "$Backup/還原備份.sh"
|
||||
[[ ! -f $Backup/掃描資料夾名.sh ]] && cp -r "$script_path/Get_DirName" "$Backup/掃描資料夾名.sh"
|
||||
[[ ! -f $Backup/刪除已卸載備份.sh ]] && cp -r "$script_path/delete_backup" "$Backup/刪除已卸載備份.sh"
|
||||
[[ ! -f $Backup/Restorebackup.sh ]] && cp -r "$script_path/restore" "$Backup/Restorebackup.sh"
|
||||
[[ ! -f $Backup/DumpName.sh ]] && cp -r "$script_path/Get_DirName" "$Backup/DumpName.sh"
|
||||
[[ ! -f $Backup/delete_backup ]] && cp -r "$script_path/delete_backup" "$Backup/delete_backup.sh"
|
||||
filesize="$(du -ks "$Backup" | awk '{print $1}')"
|
||||
Quantity=0
|
||||
#檢測apk狀態進行備份
|
||||
@@ -128,7 +123,7 @@ Backup_apk() {
|
||||
echo "apk_version=\"$(dumpsys package "$name2" | awk '/versionName=/{print $1}' | cut -f2 -d '=' | head -1)\"" >>"$app_details"
|
||||
[[ $PackageName = "" ]] && echo "PackageName=\"$name2\"" >>"$app_details"
|
||||
[[ $ChineseName = "" ]] && echo "ChineseName=\"$name1\"" >>"$app_details"
|
||||
[[ ! -f $Backup_folder/還原備份.sh ]] && cp -r "$script_path/restore2" "$Backup_folder/還原備份.sh"
|
||||
[[ ! -f $Backup_folder/Restorebackup.sh ]] && cp -r "$script_path/restore2" "$Backup_folder/Restorebackup.sh"
|
||||
[[ ! -f $Backup_folder/recover.conf ]] && cp -r "$script_path/recover.conf" "$Backup_folder"
|
||||
[[ ! -f $Backup/recover.conf ]] && cp -r "$script_path/recover.conf" "$Backup"
|
||||
fi
|
||||
@@ -247,6 +242,7 @@ while [[ $i -le $r ]]; do
|
||||
echoRgb "備份$name1 ($name2)"
|
||||
[[ $name2 = com.tencent.mobileqq ]] && echo "QQ可能恢復備份失敗或是丟失聊天記錄,請自行用你信賴的應用備份"
|
||||
[[ $name2 = com.tencent.mm ]] && echo "WX可能恢復備份失敗或是丟失聊天記錄,請自行用你信賴的應用備份"
|
||||
unset nobackup
|
||||
apk_number="$(echo "$apk_path" | wc -l)"
|
||||
if [[ $apk_number = 1 ]]; then
|
||||
if [[ $Splist = false ]]; then
|
||||
@@ -257,7 +253,7 @@ while [[ $i -le $r ]]; do
|
||||
else
|
||||
Backup_apk "Split Apk支持備份"
|
||||
fi
|
||||
if [[ $D != "" && $result = 0 && $No_backupdata = "" ]]; then
|
||||
if [[ $D != "" && $result = 0 && $No_backupdata = "" && $nobackup != true ]]; then
|
||||
if [[ $Backup_obb_data = true ]]; then
|
||||
#備份data數據
|
||||
Backup_data "data"
|
||||
@@ -3,8 +3,8 @@
|
||||
#如果是那下面三項設置就被忽略,改為音量鍵選擇
|
||||
Lo=0
|
||||
|
||||
#備份路徑位置為絕對位置或是當前環境位置(1環境位置 0腳本所在位置)
|
||||
path=0
|
||||
#自定義備份目錄輸出位置 (忽略為空將默認腳本路徑中)
|
||||
Output_path=
|
||||
|
||||
#假設如果存在usb隨身碟是否默認使用隨身碟?(1不詢問默認使用 0每次都進行詢問)
|
||||
USBdefault=0
|
||||
|
||||
@@ -19,13 +19,21 @@ if [[ -d $(magisk --path 2>/dev/null) ]]; then
|
||||
else
|
||||
echo "Magisk busybox Path does not exist"
|
||||
fi ; export PATH="$PATH"
|
||||
backup_version="V12.8"
|
||||
backup_version="V12.9"
|
||||
#設置二進制命令目錄位置
|
||||
[[ $bin_path = "" ]] && echo "未正確指定bin.sh位置" && exit 2
|
||||
#bin_path="${bin_path/'/storage/emulated/'/'/data/media/'}"
|
||||
Status_log="$MODDIR/執行狀態日誌.txt"
|
||||
Status_log="$MODDIR/Log.txt"
|
||||
rm -rf "$Status_log"
|
||||
filepath="/data/backup_tools"
|
||||
case $MODDIR in
|
||||
/data/user/0/com.xayah.databackup*)
|
||||
if [[ -d /data/user/0/com.xayah.databackup ]]; then
|
||||
filepath="/data/user/0/com.xayah.databackup/backup_tools"
|
||||
echo "於com.xayah.databackup內執行" && app="true"
|
||||
[[ ! -e $bin_path/freq ]] && echo "1">"$bin_path/freq"
|
||||
fi ;;
|
||||
esac
|
||||
busybox="$filepath/busybox"
|
||||
busybox2="$bin_path/busybox"
|
||||
#排除自身
|
||||
@@ -203,6 +211,7 @@ if [[ $LANG != "" ]]; then
|
||||
else
|
||||
echoRgb "獲取系統語系失敗 默認簡體中文" "0"
|
||||
fi
|
||||
[[ $app = true && $(cat "$bin_path/freq" 2>/dev/null) = 1 ]] && Mandatory_update="true" && freq="$(cat "$bin_path/freq" 2>/dev/null)"
|
||||
#dns="1.1.1.1,1.0.0.1"
|
||||
dns="8.8.8.8"
|
||||
#dns="114.114.114.114"
|
||||
@@ -218,20 +227,28 @@ else
|
||||
fi
|
||||
if [[ $json != "" ]]; then
|
||||
tag="$(echo "$json" | sed -r -n 's/.*"tag_name": *"(.*)".*/\1/p')"
|
||||
if [[ $backup_version != $tag ]]; then
|
||||
echoRgb "發現新版本 從GitHub更新 版本:$tag\n -更新日誌:\n$(curl "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p' || down -s -L "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p')"
|
||||
if [[ $Mandatory_update != true ]]; then
|
||||
if [[ $backup_version != $tag ]]; then
|
||||
echoRgb "發現新版本 從GitHub更新 版本:$tag\n -更新日誌:\n$(curl "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p' || down -s -L "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p')"
|
||||
download="$(echo "$json" | sed -r -n 's/.*"browser_download_url": *"(.*.zip)".*/\1/p')"
|
||||
curl -O "https://gh.api.99988866.xyz/$download" || down -s -L -o "$MODDIR/$tag.zip" "https://gh.api.99988866.xyz/$download"
|
||||
echo_log "下載${download##*/}"
|
||||
if [[ $result = 0 ]]; then
|
||||
echoRgb "update $backup_version > $tag"
|
||||
zippath="$(find "$MODDIR" -maxdepth 1 -name "*.zip" -type f)"
|
||||
GitHub="true"
|
||||
else
|
||||
echoRgb "請手動將備份腳本壓縮包放置在\n -$MODDIR後再次執行腳本進行更新" "0"
|
||||
fi
|
||||
else
|
||||
echoRgb "本地版本:$backup_version 線上版本:$tag 版本一致無須更新"
|
||||
fi
|
||||
else
|
||||
echoRgb "首次使用 強制更新腳本\n -版本:$tag\n -更新日誌:\n$(curl "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p' || down -s -L "https://api.github.com/repos/YAWAsau/backup_script/releases/latest" 2>/dev/null | sed -r -n 's/.*"body": *"(.*)".*/\1/p')"
|
||||
download="$(echo "$json" | sed -r -n 's/.*"browser_download_url": *"(.*.zip)".*/\1/p')"
|
||||
curl -O "https://gh.api.99988866.xyz/$download" || down -s -L -o "$MODDIR/$tag.zip" "https://gh.api.99988866.xyz/$download"
|
||||
echo_log "下載${download##*/}"
|
||||
if [[ $result = 0 ]]; then
|
||||
echoRgb "update $backup_version > $tag"
|
||||
zippath="$(find "$MODDIR" -maxdepth 1 -name "*.zip" -type f)"
|
||||
GitHub="true"
|
||||
else
|
||||
echoRgb "請手動將備份腳本壓縮包放置在\n -$MODDIR後再次執行腳本進行更新" "0"
|
||||
fi
|
||||
else
|
||||
echoRgb "本地版本:$backup_version 線上版本:$tag 版本一致無須更新"
|
||||
zippath="$(find "$MODDIR" -maxdepth 1 -name "*.zip" -type f)"
|
||||
fi
|
||||
else
|
||||
echoRgb "更新獲取失敗" "0"
|
||||
@@ -318,6 +335,7 @@ if [[ $zippath != "" ]]; then
|
||||
fi
|
||||
rm -rf "$TMPDIR"/*
|
||||
find "$MODDIR" -maxdepth 1 -name "*.zip" -type f -exec rm -rf {} \;
|
||||
echo "$(("$freq"+1))" >"$bin_path/freq"
|
||||
echoRgb "更新完成 請重新執行腳本" "2" && exit
|
||||
fi ;;
|
||||
*)
|
||||
|
||||
@@ -98,6 +98,7 @@ Release_data() {
|
||||
#記錄開始時間
|
||||
starttime1="$(date -u "+%s")"
|
||||
TIME="$starttime1"
|
||||
[[ $(pm path "com.android.vending") != "" ]] && echoRgb "注意 為了避免還原失敗請關閉PLAY的安全檢查"
|
||||
en=118
|
||||
{
|
||||
while [[ $i -le $r ]]; do
|
||||
|
||||
@@ -16,6 +16,7 @@ path2="/data/data"
|
||||
[[ $(which restorecon) = "" ]] && echoRgb "restorecon命令不存在" "0" && exit 1
|
||||
#記錄開始時間
|
||||
starttime1="$(date -u "+%s")"
|
||||
[[ $(pm path "com.android.vending") != "" ]] && echoRgb "注意 為了避免還原失敗請關閉PLAY的安全檢查"
|
||||
{
|
||||
Backup_folder="$MODDIR"
|
||||
if [[ ! -f $Backup_folder/app_details ]]; then
|
||||
|
||||
Reference in New Issue
Block a user