【发布时间】:2017-01-01 10:20:20
【问题描述】:
在我的 bash 脚本中,我可以像这样构建我的 Android Studio 项目:
#!/bin/bash
./gradlew assembleRelease
这会在项目的构建文件夹中创建 .apk 文件,但我不知道脚本中该文件夹的路径。
有什么方法可以得到它吗?
【问题讨论】:
标签: android bash shell android-studio gradle
在我的 bash 脚本中,我可以像这样构建我的 Android Studio 项目:
#!/bin/bash
./gradlew assembleRelease
这会在项目的构建文件夹中创建 .apk 文件,但我不知道脚本中该文件夹的路径。
有什么方法可以得到它吗?
【问题讨论】:
标签: android bash shell android-studio gradle
你可以添加一行“寻找”它-
path=`find ./ -name "*.apk"`
echo "$path"
如果你想要绝对路径-
path=`find ./ \`pwd\` . -name "*.apk"`
echo "$path"
【讨论】:
由于该问题的观看次数较多,因此我发布了@Chem-man17建议的解决方案的最终版本
# ---------------- Copy .apk file to output folder -----------------------
mkdir -p "$OUTPUT_DIR"
APK_FILE=`find ${PWD}/app/build/apk -type f -name "*.apk" -printf '%T@ %p\n' \
| sort -k 1nr \
| head -n1 \
| sed 's/^[^ ]* //'`
APK_NAME=`echo $APK_FILE | xargs -I{} basename {}`
mv $APK_FILE $OUTPUT_DIR
echo "--- Created file: $OUTPUT_DIR/$APK_NAME"
基本上它按日期对 build 文件夹中的 .apks 进行排序并获取最新的
【讨论】: