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两个版本,进行优化
相关推荐
花卷HJ9 分钟前
Android 沉浸式全屏实践:主题 + 状态栏文字颜色完整方案
android
花卷HJ1 小时前
Android 项目中 BaseActivity 封装实践(支持 ViewBinding、PermissionUtils动态权限、加载弹窗和跳转动画)
android
消失的旧时光-19433 小时前
Android 接入 Flutter(Add-to-App)最小闭环:10 分钟跑起第一个混合页面
android·flutter
城东米粉儿3 小时前
android StrictMode 笔记
android
Zender Han3 小时前
Flutter Android 启动页 & App 图标替换(不使用任何插件的完整实践)
android·flutter·ios
童无极3 小时前
Android 弹幕君APP开发实战01
android
赛恩斯4 小时前
kotlin 为什么可以在没有kotlin 环境的安卓系统上运行的
android·开发语言·kotlin
于山巅相见4 小时前
【3588】Android动态隐藏导航栏
android·导航栏·状态栏·android11
乡野码圣4 小时前
【RK3588 Android12】开发效率提升技巧
android·嵌入式硬件