Skip to content

Commit f460d84

Browse files
committed
fix: Standardize quotes and improve formatting in android-release.yml
1 parent 7416eb2 commit f460d84

File tree

1 file changed

+143
-152
lines changed

1 file changed

+143
-152
lines changed

.github/workflows/android-release.yml

Lines changed: 143 additions & 152 deletions
Original file line numberDiff line numberDiff line change
@@ -3,163 +3,154 @@ name: Android Release Build
33
on:
44
push:
55
tags:
6-
- '*'
6+
- "*"
77

88
env:
9-
NODE_VERSION: '18'
10-
JAVA_VERSION: '17'
11-
KEYSTORE_FILE: 'release.jks'
9+
NODE_VERSION: "18"
10+
JAVA_VERSION: "17"
11+
KEYSTORE_FILE: "release.jks"
1212

1313
jobs:
1414
build:
1515
name: Build and Release Android APKs
1616
runs-on: ubuntu-latest
17-
17+
1818
steps:
19-
- name: Checkout repository
20-
uses: actions/checkout@v4
21-
22-
- name: Setup Node.js
23-
uses: actions/setup-node@v4
24-
with:
25-
node-version: ${{ env.NODE_VERSION }}
26-
cache: 'npm'
27-
28-
- name: Setup Java JDK
29-
uses: actions/setup-java@v4
30-
with:
31-
distribution: 'temurin'
32-
java-version: ${{ env.JAVA_VERSION }}
33-
34-
- name: Install dependencies
35-
run: npm ci
36-
37-
- name: Setup Gradle
38-
uses: gradle/gradle-build-action@v2
39-
40-
- name: Make gradlew executable
41-
run: chmod +x android/gradlew
42-
43-
- name: Decode Keystore
44-
env:
45-
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}
46-
run: |
47-
echo $KEYSTORE_BASE64 | base64 -d > android/app/${{ env.KEYSTORE_FILE }}
48-
49-
- name: Generate keystore.properties
50-
run: |
51-
cat <<EOF > android/keystore.properties
52-
storePassword=${{ secrets.KEYSTORE_PASSWORD }}
53-
keyPassword=${{ secrets.KEY_PASSWORD }}
54-
keyAlias=${{ secrets.KEY_ALIAS }}
55-
storeFile=${{ env.KEYSTORE_FILE }}
56-
EOF
57-
58-
- name: Build Release APKs
59-
run: |
60-
cd android
61-
./gradlew assembleRelease
62-
63-
- name: Get tag name
64-
id: tag
65-
run: echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
66-
67-
- name: Create Release
68-
id: create_release
69-
uses: actions/create-release@v1
70-
env:
71-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
72-
with:
73-
tag_name: ${{ steps.tag.outputs.tag }}
74-
release_name: Release ${{ steps.tag.outputs.tag }}
75-
draft: false
76-
prerelease: false
77-
body: |
78-
# 🚀 Alternate ${{ steps.tag.outputs.tag }} – Feature & Improvement Release
79-
80-
## ✨ What's New in ${{ steps.tag.outputs.tag }}
81-
82-
- **Search Functionality:**
83-
Added search for contacts and country selector for faster access.
84-
85-
- **Multi-Delete & Contact Sharing:**
86-
Added multi-delete and selection-based contact sharing features for easier contact management.
87-
88-
- **Performance Improvements:**
89-
Enhanced app speed and responsiveness.
90-
91-
- **Bug Fixes:**
92-
Fixed various issues for improved stability.
93-
94-
- **UI Enhancements:**
95-
Refined and modernized the user interface for a better experience.
96-
97-
## 📦 Download Options
98-
99-
Choose the APK that matches your device architecture:
100-
101-
- **ARM64 (64-bit)** – Recommended for most modern devices
102-
- **ARM (32-bit)** – For older Android devices
103-
- **x86 (64-bit)** – For Intel-based Android devices/emulators
104-
- **x86 (32-bit)** – For older Intel-based devices
105-
106-
## 🔧 Installation
107-
108-
1. Download the appropriate APK for your device
109-
2. Enable "Install from unknown sources" in your Android settings
110-
3. Install the APK file
111-
112-
## 📋 System Requirements
113-
114-
- Android 7.0 (API level 24) or higher
115-
- Permissions: Contacts, Phone
116-
117-
- name: Upload arm64-v8a APK
118-
uses: actions/upload-release-asset@v1
119-
env:
120-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
121-
with:
122-
upload_url: ${{ steps.create_release.outputs.upload_url }}
123-
asset_path: android/app/build/outputs/apk/release/app-arm64-v8a-release.apk
124-
asset_name: alternate-arm64-v8a-${{ steps.tag.outputs.tag }}.apk
125-
asset_content_type: application/vnd.android.package-archive
126-
127-
- name: Upload armeabi-v7a APK
128-
uses: actions/upload-release-asset@v1
129-
env:
130-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
131-
with:
132-
upload_url: ${{ steps.create_release.outputs.upload_url }}
133-
asset_path: android/app/build/outputs/apk/release/app-armeabi-v7a-release.apk
134-
asset_name: alternate-armeabi-v7a-${{ steps.tag.outputs.tag }}.apk
135-
asset_content_type: application/vnd.android.package-archive
136-
137-
- name: Upload x86_64 APK
138-
uses: actions/upload-release-asset@v1
139-
env:
140-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
141-
with:
142-
upload_url: ${{ steps.create_release.outputs.upload_url }}
143-
asset_path: android/app/build/outputs/apk/release/app-x86_64-release.apk
144-
asset_name: alternate-x86_64-${{ steps.tag.outputs.tag }}.apk
145-
asset_content_type: application/vnd.android.package-archive
146-
147-
- name: Upload x86 APK
148-
uses: actions/upload-release-asset@v1
149-
env:
150-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
151-
with:
152-
upload_url: ${{ steps.create_release.outputs.upload_url }}
153-
asset_path: android/app/build/outputs/apk/release/app-x86-release.apk
154-
asset_name: alternate-x86-${{ steps.tag.outputs.tag }}.apk
155-
asset_content_type: application/vnd.android.package-archive
156-
157-
- name: Upload metadata
158-
uses: actions/upload-release-asset@v1
159-
env:
160-
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
161-
with:
162-
upload_url: ${{ steps.create_release.outputs.upload_url }}
163-
asset_path: android/app/build/outputs/apk/release/output-metadata.json
164-
asset_name: output-metadata.json
165-
asset_content_type: application/json
19+
- name: Checkout repository
20+
uses: actions/checkout@v4
21+
22+
- name: Setup Node.js
23+
uses: actions/setup-node@v4
24+
with:
25+
node-version: ${{ env.NODE_VERSION }}
26+
cache: "npm"
27+
28+
- name: Setup Java JDK
29+
uses: actions/setup-java@v4
30+
with:
31+
distribution: "temurin"
32+
java-version: ${{ env.JAVA_VERSION }}
33+
34+
- name: Install dependencies
35+
run: npm ci
36+
37+
- name: Setup Gradle
38+
uses: gradle/gradle-build-action@v2
39+
40+
- name: Make gradlew executable
41+
run: chmod +x android/gradlew
42+
43+
- name: Decode Keystore
44+
env:
45+
KEYSTORE_BASE64: ${{ secrets.KEYSTORE_BASE64 }}
46+
run: |
47+
echo $KEYSTORE_BASE64 | base64 -d > android/app/${{ env.KEYSTORE_FILE }}
48+
49+
- name: Generate keystore.properties
50+
run: |
51+
cat <<EOF > android/keystore.properties
52+
storePassword=${{ secrets.KEYSTORE_PASSWORD }}
53+
keyPassword=${{ secrets.KEY_PASSWORD }}
54+
keyAlias=${{ secrets.KEY_ALIAS }}
55+
storeFile=${{ env.KEYSTORE_FILE }}
56+
EOF
57+
58+
- name: Build Release APKs
59+
run: |
60+
cd android
61+
./gradlew assembleRelease
62+
63+
- name: Get tag name
64+
id: tag
65+
run: echo "tag=${GITHUB_REF#refs/tags/}" >> $GITHUB_OUTPUT
66+
67+
- name: Create Release
68+
id: create_release
69+
uses: actions/create-release@v1
70+
env:
71+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
72+
with:
73+
tag_name: ${{ steps.tag.outputs.tag }}
74+
release_name: Release ${{ steps.tag.outputs.tag }}
75+
draft: false
76+
prerelease: false
77+
body: |
78+
# 🚀 Alternate ${{ steps.tag.outputs.tag }} – Feature & Improvement Release
79+
80+
## ✨ What's New in ${{ steps.tag.outputs.tag }}
81+
82+
- **Long Press to Copy Contact Info:**
83+
You can now long press on a contact to quickly copy their information.
84+
85+
- **Bug Fixes:**
86+
Minor bug fixes and stability improvements.
87+
88+
## 📦 Download Options
89+
90+
Choose the APK that matches your device architecture:
91+
92+
- **ARM64 (64-bit)** – Recommended for most modern devices
93+
- **ARM (32-bit)** – For older Android devices
94+
- **x86 (64-bit)** – For Intel-based Android devices/emulators
95+
- **x86 (32-bit)** – For older Intel-based devices
96+
97+
## 🔧 Installation
98+
99+
1. Download the appropriate APK for your device
100+
2. Enable "Install from unknown sources" in your Android settings
101+
3. Install the APK file
102+
103+
## 📋 System Requirements
104+
105+
- Android 7.0 (API level 24) or higher
106+
- Permissions: Contacts, Phone
107+
108+
- name: Upload arm64-v8a APK
109+
uses: actions/upload-release-asset@v1
110+
env:
111+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
112+
with:
113+
upload_url: ${{ steps.create_release.outputs.upload_url }}
114+
asset_path: android/app/build/outputs/apk/release/app-arm64-v8a-release.apk
115+
asset_name: alternate-arm64-v8a-${{ steps.tag.outputs.tag }}.apk
116+
asset_content_type: application/vnd.android.package-archive
117+
118+
- name: Upload armeabi-v7a APK
119+
uses: actions/upload-release-asset@v1
120+
env:
121+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
122+
with:
123+
upload_url: ${{ steps.create_release.outputs.upload_url }}
124+
asset_path: android/app/build/outputs/apk/release/app-armeabi-v7a-release.apk
125+
asset_name: alternate-armeabi-v7a-${{ steps.tag.outputs.tag }}.apk
126+
asset_content_type: application/vnd.android.package-archive
127+
128+
- name: Upload x86_64 APK
129+
uses: actions/upload-release-asset@v1
130+
env:
131+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
132+
with:
133+
upload_url: ${{ steps.create_release.outputs.upload_url }}
134+
asset_path: android/app/build/outputs/apk/release/app-x86_64-release.apk
135+
asset_name: alternate-x86_64-${{ steps.tag.outputs.tag }}.apk
136+
asset_content_type: application/vnd.android.package-archive
137+
138+
- name: Upload x86 APK
139+
uses: actions/upload-release-asset@v1
140+
env:
141+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
142+
with:
143+
upload_url: ${{ steps.create_release.outputs.upload_url }}
144+
asset_path: android/app/build/outputs/apk/release/app-x86-release.apk
145+
asset_name: alternate-x86-${{ steps.tag.outputs.tag }}.apk
146+
asset_content_type: application/vnd.android.package-archive
147+
148+
- name: Upload metadata
149+
uses: actions/upload-release-asset@v1
150+
env:
151+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
152+
with:
153+
upload_url: ${{ steps.create_release.outputs.upload_url }}
154+
asset_path: android/app/build/outputs/apk/release/output-metadata.json
155+
asset_name: output-metadata.json
156+
asset_content_type: application/json

0 commit comments

Comments
 (0)