47 lines
1.7 KiB
Bash
Executable File
47 lines
1.7 KiB
Bash
Executable File
#!/usr/bin/env bash
|
||
# @author juntao
|
||
# @2021.11.30
|
||
|
||
# 不同的 hosted_url 似乎会造成 pubspec.lock 文件变更,https://github.com/dart-lang/pub/issues/2226
|
||
export PUB_HOSTED_URL=https://pub.flutter-io.cn
|
||
export FLUTTER_STORAGE_BASE_URL=https://storage.flutter-io.cn
|
||
|
||
version=$(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')
|
||
build_time_without_divider=$(TZ=Asia/Shanghai date +'%Y%m%d%H%M')L
|
||
|
||
git checkout app/build.gradle
|
||
git checkout gradle.properties
|
||
|
||
if [[ "$OSTYPE" == "darwin"* ]]; then
|
||
sed -i '' '10 a setBinding(new Binding([gradle: this]))' settings.gradle
|
||
sed -i '' '11 a evaluate(new File(settingsDir, "assistant_flutter/.android/include_flutter.groovy"))' settings.gradle
|
||
else
|
||
sed -i '10 a setBinding(new Binding([gradle: this]))' settings.gradle
|
||
sed -i '11 a evaluate(new File(settingsDir, "assistant_flutter/.android/include_flutter.groovy"))' settings.gradle
|
||
fi
|
||
|
||
cd assistant_flutter
|
||
|
||
flutter pub get
|
||
|
||
cd ..
|
||
|
||
./gradlew --stop
|
||
./gradlew clean
|
||
|
||
sed -i 's/buildConfigField "long", "BUILD_TIME", "0"/buildConfigField "long", "BUILD_TIME", '"\"${build_time_without_divider}\""'/g' app/build.gradle
|
||
|
||
./gradlew rIR -I init.flutter.gradle
|
||
if [ ! -f app/build/outputs/apk/internal/release/app-internal-release.apk ]; then
|
||
./gradlew rIR -I init.gradle
|
||
fi
|
||
mv app/build/outputs/apk/internal/release/app-internal-release.apk app/build/tmp/${version}-${versionCode}-internal-${build_time}.apk
|
||
|
||
git checkout app/build.gradle
|
||
git checkout gradle.properties
|
||
git checkout settings.gradle
|
||
|
||
cd assistant_flutter
|
||
git checkout pubspec.lock |