android-apk打包脚本

打包脚本 pack-apk

bash 复制代码
#!/bin/bash

function clone()
{
    echo "***********代码重新拉取***************"
    rm -fr projectName
    git clone -b master remote
    cp ./local.properties ./projectName
}

function developEnv()
{
    echo "***********开始配置环境***************"
    command="java"
  if type "$command" >/dev/null 2>&1; then
      echo "java exists"
  else
      echo "java does not exist"
      echo "***********start install jdk***************"
      apt install openjdk-11-jdk
      echo "***********end install jdk***************"
  fi
  echo "***********环境配置结束***************"
}

function packge()
{
    echo "*********打包命令选项$1************"
    clone
    cd projectName
    ./gradlew clean
    ./gradlew $1
}

echo "***************start $1*******************"
while getopts bhdr opt
do
    case $opt in
        b)
            developEnv
            packge build
        ;;
        h)
            echo "*****************************************************"
            echo "* -h:帮助                                        *"
            echo "* -b:打包debug和release两个版本,并进行lint语法校验  *"
            echo "* -d: 打包debug版本,不进行优化                     *"
            echo "* -r: 打包debug和release两个版本,进行优化         *"
            echo "******************************************************"
        ;;
       d)
            developEnv
            packge assembleDebug
        ;;
       r)
            developEnv
            packge assembleRelease
        ;;
    esac
done

配置文件local.properties

使用绝对路径指向android Sdk目录

bash 复制代码
sdk.dir=/Sdk

使用:

1.两个文件放在一个目录下

2.执行命令 ./pack-apk -b 进行打包

  • -h:帮助
  • -b:打包debug和release两个版本,并进行lint语法校验
  • -d:打包debug版本,不进行优化
  • -r:打包debug和release两个版本,进行优化
相关推荐
我是好小孩3 小时前
【Android】布局优化:include、merge、ViewStub以及Inflate()源码浅析
android
GISer_Jing3 小时前
2025年Flutter与React Native对比
android·flutter·react native
MasterLi80234 小时前
我的读书清单
android·linux·学习
怪兽20144 小时前
fastjson在kotlin不使用kotlin-reflect库怎么使用?
android·开发语言·kotlin
彭同学学习日志4 小时前
Kotlin Fragment 按钮跳转报错解决:Unresolved reference ‘floatingActionButton‘
android·开发语言·kotlin
Gracker6 小时前
Android Perfetto 系列 9 - CPU 信息解读
android
Gracker6 小时前
Android Perfetto 系列 8:深入理解 Vsync 机制与性能分析
android
Gracker6 小时前
Android Perfetto 系列 07 - MainThread 和 RenderThread 解读
android
Gracker6 小时前
Android Perfetto 系列 5:Android App 基于 Choreographer 的渲染流程
android
Gracker6 小时前
Android Perfetto 系列 6:为什么是 120Hz?高刷新率的优势与挑战
android