63 lines
1.6 KiB
Bash
63 lines
1.6 KiB
Bash
#!/usr/bin/bash
|
|
|
|
export WD=$(pwd)
|
|
export SCRIPT_DIR="$(dirname "$(readlink -f "$0")")"
|
|
|
|
export ANDROZOO_KEY="${SCRIPT_DIR}/.ZOO_KEY"
|
|
export LIST="${SCRIPT_DIR}/data/apks.txt"
|
|
export PLATFORM_ZIP="${SCRIPT_DIR}/data/platforms.zip"
|
|
export ANDROZOO_LASTEST="${SCRIPT_DIR}/latest_with-added-date.csv.gz"
|
|
export APKTOOL="${SCRIPT_DIR}/apktool.jar"
|
|
|
|
export VENV="${WD}/venv"
|
|
export OUT_DIR="${WD}/app-2023.out"
|
|
export OUT_SCAN="${OUT_DIR}/scan"
|
|
export OUT_SMALI_CHECK="${OUT_DIR}/smali_check"
|
|
export OUT_DATAMINE="${OUT_DIR}/out_data"
|
|
export DB="${OUT_DIR}/app-2023.db"
|
|
|
|
export app_lst=(
|
|
'00'
|
|
'01'
|
|
'02'
|
|
'03'
|
|
'04'
|
|
'05'
|
|
'06'
|
|
'07'
|
|
'08'
|
|
'09'
|
|
'10'
|
|
'11'
|
|
'12'
|
|
'13'
|
|
'14'
|
|
'15'
|
|
'16'
|
|
'17'
|
|
'18'
|
|
'19'
|
|
)
|
|
export N_CHUNK=$(python3 -c "print($(cat ${LIST} | wc -l)//20 + 1)")
|
|
|
|
if [ ! -f "${APKTOOL}" ]; then
|
|
echo "${APKTOOL} not found, download it from https://github.com/iBotPeaches/Apktool/releases/download/v2.10.0/apktool_2.10.0.jar"
|
|
exit
|
|
fi
|
|
if [ ! -f "${ANDROZOO_KEY}" ]; then
|
|
echo "${ANDROZOO_KEY} not found, put your androzoo key their (see https://androzoo.uni.lu/)"
|
|
exit
|
|
fi
|
|
if [ ! -f "${ANDROZOO_LASTEST}" ]; then
|
|
echo "${ANDROZOO_LASTEST} not found, download if from https://androzoo.uni.lu/static/lists/latest_with-added-date.csv.gz"
|
|
exit
|
|
fi
|
|
if [ ! -d "${VENV}" ]; then
|
|
echo "venv not found at ${VENV}, initialize it and install python package"
|
|
python3 -m venv "${VENV}"
|
|
"${VENV}/bin/pip" install "${SCRIPT_DIR}"
|
|
fi
|
|
if [ ! -d "${OUT_DIR}/apks/" ]; then
|
|
mkdir -p "${OUT_DIR}/apks/"
|
|
split -a 2 -d -l "${N_CHUNK}" "${LIST}" "${OUT_DIR}/apks/"
|
|
fi
|