fix: use printf for keystore decode, add verification step #8
Workflow file for this run
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| name: Release | |
| on: | |
| push: | |
| tags: | |
| - 'v*' # 推送 v1.0.0, v1.2.3 等 tag 时触发 | |
| jobs: | |
| release: | |
| runs-on: ubuntu-latest | |
| permissions: | |
| contents: write | |
| steps: | |
| - name: Checkout | |
| uses: actions/checkout@v4 | |
| - name: Set up JDK 17 | |
| uses: actions/setup-java@v4 | |
| with: | |
| java-version: '17' | |
| distribution: 'temurin' | |
| - name: Setup Gradle | |
| uses: gradle/actions/setup-gradle@v4 | |
| - name: Grant execute permission for gradlew | |
| run: chmod +x gradlew | |
| - name: Extract version from tag | |
| id: version | |
| run: echo "VERSION=${GITHUB_REF#refs/tags/v}" >> $GITHUB_OUTPUT | |
| - name: Decode debug keystore | |
| run: | | |
| mkdir -p $HOME/.android | |
| printf '%s' "${{ secrets.DEBUG_KEYSTORE }}" | base64 -d > $HOME/.android/debug.keystore | |
| - name: Verify debug keystore | |
| run: | | |
| keytool -list -keystore $HOME/.android/debug.keystore -storepass android -alias androiddebugkey 2>&1 | |
| echo "Keystore size: $(wc -c < $HOME/.android/debug.keystore) bytes" | |
| - name: Build Release APK | |
| run: ./gradlew assembleRelease | |
| - name: Rename APK | |
| run: | | |
| APK=$(find app/build/outputs/apk/release -name '*.apk' | head -1) | |
| mv "$APK" app/build/outputs/apk/release/EpubSpoon-${{ steps.version.outputs.VERSION }}.apk | |
| - name: Create GitHub Release | |
| uses: softprops/action-gh-release@v2 | |
| with: | |
| name: EpubSpoon v${{ steps.version.outputs.VERSION }} | |
| body: | | |
| ## 🥄 EpubSpoon v${{ steps.version.outputs.VERSION }} | |
| > 导入 EPUB 英文书 → 悬浮窗点一下复制一段 → 去 Gemini 粘贴看分析,像刷短视频一样读英文书。 | |
| ### ✨ 功能 | |
| - 📖 导入 EPUB 英文书,智能分段 | |
| - 🫧 悬浮窗浮在任何 app 上方,显示阅读进度 | |
| - 👆 点击悬浮窗:复制当前段 + 震动反馈 + 自动前进 | |
| - 📋 内置优化母指令:逐句翻译 + 词汇注释 + 💡文化背景解析 | |
| - 🔍 序号跳转 / 关键词搜索定位段落 | |
| - 💾 阅读进度自动保存 | |
| ### 📲 安装说明 | |
| 1. 下载下方 **EpubSpoon-${{ steps.version.outputs.VERSION }}.apk** | |
| 2. 在 Android 设备上安装(需允许「安装未知来源应用」) | |
| 3. 打开 EpubSpoon → 导入 EPUB → 复制母指令给 Gemini → 启动悬浮窗 → 开始阅读 | |
| ### 📋 系统要求 | |
| - Android 8.0 (API 26) 及以上 | |
| - 需授予:悬浮窗权限、通知权限 | |
| > 支持从旧版本直接覆盖安装更新。 | |
| files: | | |
| app/build/outputs/apk/release/EpubSpoon-${{ steps.version.outputs.VERSION }}.apk | |
| draft: false | |
| prerelease: false |