├── project-to-build ├── README.md └── .github └── workflows └── build.yaml /project-to-build: -------------------------------------------------------------------------------- 1 | https://github.com/FolioReader/FolioReader-Android 2 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Android Builder 2 | 3 | 该仓库是使用 Github Action 自动编译 Android 项目的一种展示。具体解释可见下面的文章: 4 | 5 | [《更新慢、弃坑了?实现 Android 应用自给自足:GitHub Actions 编译实例》](https://sspai.com/post/70427) 6 | 7 | 如果这篇文章帮到了你,不妨回来点个赞。 8 | -------------------------------------------------------------------------------- /.github/workflows/build.yaml: -------------------------------------------------------------------------------- 1 | name: android_build 2 | 3 | on: 4 | workflow_dispatch: 5 | 6 | jobs: 7 | build: 8 | runs-on: ubuntu-latest 9 | steps: 10 | - name: Checkout the code 11 | uses: actions/checkout@v2 12 | - name: Set up JDK 13 | uses: actions/setup-java@v1 14 | with: 15 | java-version: 1.8 16 | - id: get-project 17 | name: Get project name 18 | run: echo "::set-output name=PROJECT::$(cat project-to-build)" 19 | - name: Clone project 20 | run: git clone --depth=1 ${{ steps.get-project.outputs.PROJECT }} project 21 | - name: Build the app 22 | working-directory: ./project 23 | run: | 24 | if [ ! -f "gradlew" ]; then gradle wrapper; fi 25 | chmod +x gradlew 26 | ./gradlew assembleDebug --stacktrace 27 | - name: Upload APK 28 | uses: actions/upload-artifact@v2 29 | with: 30 | name: my-build-apk 31 | path: ./**/*.apk 32 | 33 | --------------------------------------------------------------------------------