Skip to content

Commit e69a6e1

Browse files
committed
chore(android-release): prepare v2.2.4 with stable tags and APK naming
1 parent dc6932a commit e69a6e1

4 files changed

Lines changed: 48 additions & 10 deletions

File tree

.github/workflows/build.yml

Lines changed: 20 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -4,7 +4,7 @@ on:
44
workflow_dispatch:
55
push:
66
tags:
7-
- 'v*'
7+
- 'android-*'
88

99
permissions:
1010
contents: write
@@ -38,36 +38,47 @@ jobs:
3838
- name: Build split APKs
3939
run: flutter build apk --release --split-per-abi
4040

41+
- name: Validate Android tag format
42+
run: |
43+
TAG="${GITHUB_REF_NAME}"
44+
if [[ ! "${TAG}" =~ ^android-[0-9]+\.[0-9]+\.[0-9]+$ ]]; then
45+
echo "Invalid Android tag format: ${TAG}"
46+
echo "Use: android-x.y.z (example: android-2.2.4)"
47+
exit 1
48+
fi
49+
echo "ANDROID_VERSION=${TAG#android-}" >> "$GITHUB_ENV"
50+
4151
- name: Rename APKs
4252
run: |
43-
TAG=${GITHUB_REF_NAME}
53+
VERSION=${ANDROID_VERSION}
54+
PREFIX=Focus-android-${VERSION}
4455
UNIVERSAL=build/app/outputs/flutter-apk/app-release-unsigned.apk
4556
if [ -f "build/app/outputs/flutter-apk/app-release.apk" ]; then
4657
UNIVERSAL=build/app/outputs/flutter-apk/app-release.apk
4758
fi
4859
mv "${UNIVERSAL}" \
49-
build/app/outputs/flutter-apk/Focus-${TAG}-universal.apk
60+
build/app/outputs/flutter-apk/${PREFIX}-universal.apk
5061
ARM64=build/app/outputs/flutter-apk/app-arm64-v8a-release-unsigned.apk
5162
if [ -f "build/app/outputs/flutter-apk/app-arm64-v8a-release.apk" ]; then
5263
ARM64=build/app/outputs/flutter-apk/app-arm64-v8a-release.apk
5364
fi
5465
mv "${ARM64}" \
55-
build/app/outputs/flutter-apk/Focus-${TAG}-arm64-v8a.apk
66+
build/app/outputs/flutter-apk/${PREFIX}-arm64-v8a.apk
5667
ARMEABI=build/app/outputs/flutter-apk/app-armeabi-v7a-release-unsigned.apk
5768
if [ -f "build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk" ]; then
5869
ARMEABI=build/app/outputs/flutter-apk/app-armeabi-v7a-release.apk
5970
fi
6071
mv "${ARMEABI}" \
61-
build/app/outputs/flutter-apk/Focus-${TAG}-armeabi-v7a.apk
72+
build/app/outputs/flutter-apk/${PREFIX}-armeabi-v7a.apk
6273
6374
- name: Create GitHub Release
6475
uses: softprops/action-gh-release@v2
6576
with:
66-
name: "Focus ${{ github.ref_name }}"
77+
name: "Focus Android v${{ env.ANDROID_VERSION }}"
6778
body_path: RELEASE_NOTES.md
6879
draft: false
6980
prerelease: false
7081
files: |
71-
build/app/outputs/flutter-apk/Focus-${{ github.ref_name }}-universal.apk
72-
build/app/outputs/flutter-apk/Focus-${{ github.ref_name }}-arm64-v8a.apk
73-
build/app/outputs/flutter-apk/Focus-${{ github.ref_name }}-armeabi-v7a.apk
82+
build/app/outputs/flutter-apk/Focus-android-${{ env.ANDROID_VERSION }}-universal.apk
83+
build/app/outputs/flutter-apk/Focus-android-${{ env.ANDROID_VERSION }}-arm64-v8a.apk
84+
build/app/outputs/flutter-apk/Focus-android-${{ env.ANDROID_VERSION }}-armeabi-v7a.apk

README.md

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -77,6 +77,17 @@ This approach helps reduce cognitive overload and improve daily decision making.
7777

7878
---
7979

80+
## Release Track Convention
81+
82+
- Android tags: `android-x.y.z` (example: `android-2.2.4`)
83+
- Windows tags: `windows-x.y.z` (example: `windows-3.0.0`)
84+
- Android APK naming is kept consistent:
85+
- `Focus-android-x.y.z-universal.apk`
86+
- `Focus-android-x.y.z-arm64-v8a.apk`
87+
- `Focus-android-x.y.z-armeabi-v7a.apk`
88+
89+
---
90+
8091
## Windows Features
8192

8293
- Native desktop layout optimized for keyboard and large screens

RELEASE_NOTES.md

Lines changed: 16 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,19 @@
1+
## Focus Android v2.2.4
2+
3+
### Fixes
4+
5+
- Fixed Android build failure in settings flow (`Platform` usage/import issue).
6+
- Introduced Android-specific tag convention for releases: `android-x.y.z`.
7+
- Standardized APK artifact naming for all Android releases:
8+
- `Focus-android-x.y.z-universal.apk`
9+
- `Focus-android-x.y.z-arm64-v8a.apk`
10+
- `Focus-android-x.y.z-armeabi-v7a.apk`
11+
12+
### Notes
13+
14+
- Windows and Android are now treated as separate release tracks.
15+
- Android updater/discovery can safely match Android releases by tag pattern.
16+
117
## Focus for Windows v3.0.0
218

319
### Release Title

pubspec.yaml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -16,7 +16,7 @@ publish_to: 'none' # Remove this line if you wish to publish to pub.dev
1616
# https://developer.apple.com/library/archive/documentation/General/Reference/InfoPlistKeyReference/Articles/CoreFoundationKeys.html
1717
# In Windows, build-name is used as the major, minor, and patch parts
1818
# of the product and file versions while build-number is used as the build suffix.
19-
version: 2.2.3+11
19+
version: 2.2.4+12
2020

2121
environment:
2222
sdk: ^3.8.1

0 commit comments

Comments
 (0)