Files
assistant-android/scripts/build_with_simple_backup.sh

91 lines
3.2 KiB
Bash
Executable File
Raw Permalink Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

#!/usr/bin/env bash
# @author juntao
# @2020.10.29
git_sha=`git rev-parse --short HEAD`
versionName=$(awk -v FS="versionName = " 'NF>1{print $2}' dependencies.gradle | sed "s/\"//g")
versionCode=$(awk -v FS="versionCode = " 'NF>1{print $2}' dependencies.gradle | sed "s/\"//g")
build_time=$(TZ=Asia/Shanghai date +'%Y-%m%d-%H%M')
# 重置 app build.gradle
git checkout app/build.gradle
# 重置 module_common build.gradle
git checkout module_common/build.gradle
# 重置 module_sensors_data build.gradle
git checkout module_sensors_data/build.gradle
# 开启 mapping 上传
if [[ "$OSTYPE" == "darwin"* ]]; then
sed -i '' "1s|^|plugins { id \"io.sentry.android.gradle\" version \"3.7.0\" }\n|" app/build.gradle
else
sed -i '1 a plugins { id "io.sentry.android.gradle" version "3.7.0" }' app/build.gradle
fi
./gradlew --stop
./gradlew clean
BUILD_VARIANT_ENV=publish
BUILD_VARIANT_REGION=cn
BUILD_APK_CHANNEL_NAME=标准正式包
BUILD_PUSH_TYPE=jg
BUILD_WITH_INIT_GRADLE=true
# 添加 -t 指定编译环境可选值t: 头条 k: 快手 g: 广点通
# 添加 -r 指定区域,可选值: cn: 中国大陆 gat: 港澳台
# 添加 -p 指定推送类型 可选值: jg: 极光推送 ac: 阿里云推送
while getopts "t:r:p:" arg
do
case ${arg} in
t)
case $OPTARG in
t)
BUILD_VARIANT_ENV=tea
BUILD_APK_CHANNEL_NAME=头条推广正式包
;;
k)
BUILD_VARIANT_ENV=kuaishou
BUILD_APK_CHANNEL_NAME=快手推广正式包
;;
g)
sed -i '/android:name="android.permission.READ_PHONE_STATE"/{n;s/tools:node="remove" \/>/\/>/;}' app/src/main/AndroidManifest.xml
BUILD_WITH_INIT_GRADLE=false
BUILD_VARIANT_ENV=gdt
BUILD_APK_CHANNEL_NAME=广点通推广正式包
;;
esac
;;
r)
case $OPTARG in
gat) BUILD_VARIANT_REGION=gat
;;
*) BUILD_VARIANT_REGION=cn
;;
esac
;;
p)
case $OPTARG in
jg) BUILD_PUSH_TYPE=jg
;;
*) BUILD_PUSH_TYPE=ac
;;
esac
;;
esac
done
# 不存在指令时打普通包
if [ $BUILD_WITH_INIT_GRADLE == false ]; then
./gradlew assemble${BUILD_VARIANT_ENV}${BUILD_VARIANT_REGION^}Release -PBUILD_PUSH_TYPE=${BUILD_PUSH_TYPE}
else
./gradlew assemble${BUILD_VARIANT_ENV}${BUILD_VARIANT_REGION^}Release -I init.gradle -PBUILD_PUSH_TYPE=${BUILD_PUSH_TYPE} --no-daemon
fi
mkdir -p release-app/${versionName}_${versionCode}
cp -R app/build/outputs/apk/${BUILD_VARIANT_ENV}${BUILD_VARIANT_REGION^}/release/app-${BUILD_VARIANT_ENV}-${BUILD_VARIANT_REGION}-release.apk release-app/${versionName}_${versionCode}/光环助手_${versionName}_${versionCode}_${BUILD_APK_CHANNEL_NAME}_${git_sha}_${build_time}.apk
# 重置 app build.gradle
git checkout app/build.gradle
# 重置 module_common build.gradle
git checkout module_common/build.gradle
# 重置 module_sensors_data build.gradle
git checkout module_sensors_data/build.gradle