6868 - name : Display java version
6969 run : java -version
7070
71+ # ------------------------------------------------------------------
72+ # Android SDK + NDK (Set NDK to at least 28 to support 16kb page size)
73+ # ------------------------------------------------------------------
74+ - name : Setup Android SDK & NDK
75+ uses : android-actions/setup-android@v3
76+ with :
77+ packages : |
78+ platforms;android-35
79+ build-tools;35.0.0
80+ ndk;28.2.13676358
81+
82+ - name : Export NDK environment
83+ shell : bash
84+ run : |
85+ echo "ANDROID_NDK_ROOT=$ANDROID_SDK_ROOT/ndk/28.2.13676358" >> $GITHUB_ENV
86+ echo "ANDROID_NDK_HOME=$ANDROID_SDK_ROOT/ndk/28.2.13676358" >> $GITHUB_ENV
87+
88+ - name : Verify NDK
89+ shell : bash
90+ run : |
91+ echo "NDK root: $ANDROID_NDK_ROOT"
92+ ls "$ANDROID_NDK_ROOT"
93+ "$ANDROID_NDK_ROOT/ndk-build.cmd" --version
94+
95+ # ------------------------------------------------------------------
96+ # Native / Java build
97+ # ------------------------------------------------------------------
7198 - name : Build native dependencies
7299 shell : cmd
73100 run : |
@@ -89,27 +116,13 @@ jobs:
89116 dotnet workload restore
90117 cd ../..
91118
92- - name : List apks
93- run : find . -type f -name "*.apk"
94- shell : bash
95-
96-
97119 - name : Select the manifest
98120 run : |
99121 make manifestlink Flavor=${{ matrix.flavor }}
100-
101- - name : List apks
102- run : find . -type f -name "*.apk"
103- shell : bash
104-
105122
106123 - name : Install NuGet dependencies
107124 run : make nuget Flavor=${{ matrix.flavor }}
108125
109- - name : List apks
110- run : find . -type f -name "*.apk"
111- shell : bash
112-
113126 - name : Build APK (net)
114127 env :
115128 KeyStore : " ${{ github.workspace }}/kp2a.keystore"
@@ -119,14 +132,9 @@ jobs:
119132 DropboxAppSecret : ${{ secrets.DROPBOX_APP_SECRET }}
120133 DropboxAppFolderAppKey : ${{ secrets.DROPBOX_APP_FOLDER_APP_KEY }}
121134 DropboxAppFolderAppSecret : ${{ secrets.DROPBOX_APP_FOLDER_APP_SECRET }}
122-
123135 run : |
124136 make ${{ matrix.target }} Configuration=Release Flavor=${{ matrix.flavor }}
125-
126- - name : List apks
127- run : find . -type f -name "*.apk"
128- shell : bash
129-
137+
130138 - name : Archive production artifacts
131139 uses : actions/upload-artifact@v4
132140 with :
@@ -135,10 +143,6 @@ jobs:
135143 path : |
136144 src/keepass2android-app/bin/Release/net9.0-android/publish/*.apk
137145 src/keepass2android-app/bin/Release/net9.0-android/*/publish/*.apk
138-
139- - name : List apks
140- run : find . -type f -name "*.apk"
141- shell : bash
142146
143147 - name : Rename apks
144148 # after updating to .net9, the naming scheme of the output apks has changed. rename them to the old scheme
@@ -151,10 +155,6 @@ jobs:
151155 mv "$apk" "$(dirname "$apk")/${base}-${arch#android-}.apk"
152156 done
153157 shell : bash
154-
155- - name : List apks
156- run : find . -type f -name "*.apk"
157- shell : bash
158158
159159 - name : Upload APK to GitHub Release
160160 uses : softprops/action-gh-release@v2
0 commit comments