diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index dac5033e9..5a72947b8 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -34,13 +34,16 @@ jobs: sudo apt update sudo apt install default-jre sudo apt install python3 + sudo apt install zipalign chmod +x scripts/apktool.jar chmod +x scripts/apksigner.jar - name: Build VTLite run: | gradle prepareDexForMerge - java -jar scripts/apktool.jar b smali -o smali/VTLite.apk --use-aapt2 -p scripts/framework/ + java -jar scripts/apktool.jar b smali -o smali/VTLite.apk --use-aapt2 -p scripts/framework/ + zipalign -p -f 4 smali/VTLite.apk smali/VTLite.apk_aligned + mv smali/VTLite.apk_aligned smali/VTLite.apk - name: Sign and verify the apk run: | diff --git a/scripts/build.sh b/scripts/build.sh index 89b1c089d..d63803ac4 100755 --- a/scripts/build.sh +++ b/scripts/build.sh @@ -5,25 +5,33 @@ NC='\033[0m' BOLD='\033[1m' UNDERLINE='\033[4m' +check_result() { + if [ $? -eq 0 ]; then + echo -e "${GREEN}Успех!${NC}\n" + else + echo -e "${RED}Провал.${NC}\n" + exit 1 + fi +} echo -e "${BOLD}${UNDERLINE}Сборка apk..${NC}" cd smali/ java -jar ../scripts/apktool.jar b . -o ../scripts/VTLite.apk --use-aapt2 -p ../scripts/framework/ -if [ $? -eq 0 ]; then - echo -e "${GREEN}Успех!${NC}\n" +check_result + +echo -e "${BOLD}${UNDERLINE}Zipaligning..${NC}" +if command -v zipalign &> /dev/null; then + zipalign -p -f 4 ../scripts/VTLite.apk ../scripts/VTLite.apk_aligned + check_result + mv ../scripts/VTLite.apk_aligned ../scripts/VTLite.apk else - echo -e "${RED}Провал.${NC}\n" - exit 1 + echo -e "${RED}Zipalign не найден, выравнивание пропущено${NC}" fi -echo -e "\nПодписывание апк..." +echo -e "${BOLD}${UNDERLINE}Подписывание апк...${NC}" cd ../scripts ./apksigner sign --ks debug.keystore --ks-key-alias androiddebugkey --ks-pass pass:android ../scripts/VTLite.apk -if [ $? -eq 0 ]; then - echo -e "${GREEN}Успех!${NC}" -else - echo -e "${RED}Провал.${NC}" -fi +check_result echo -e "${BOLD}VTosters Lite успешно собран! APK находится в папке scripts${NC}"