@@ -214,15 +214,7 @@ runs:
214214 run : xcrun simctl list devices
215215 shell : bash
216216
217- # # Android Setup ##
218-
219- # # JDK Setup
220- - name : Setup Java
221- if : ${{ inputs.platform == 'android' }}
222- uses : actions/setup-java@c5195efecf7bdfc987ee8bae7a71cb8b11521c00
223- with :
224- java-version : ${{ inputs.jdk-version }}
225- distribution : ${{ inputs.jdk-distribution }}
217+ # # Android Setup - Minimal (Runner handles SDK/NDK) ##
226218
227219 - name : Configure Android Signing Certificates
228220 if : ${{ inputs.platform == 'android' && inputs.configure-keystores == 'true' }}
@@ -233,78 +225,44 @@ runs:
233225 platform : ' android'
234226 environment : ${{ inputs.environment }}
235227
236- # - name: Enable KVM group perms (Ubuntu only)
237- # if: ${{ inputs.platform == 'android' && runner.os == 'Linux' }}
238- # run: |
239- # echo 'KERNEL=="kvm", GROUP="kvm", MODE="0666", OPTIONS+="static_node=kvm"' | sudo tee /etc/udev/rules.d/99-kvm4all.rules
240- # sudo udevadm control --reload-rules
241- # sudo udevadm trigger --name-match=kvm
242- # shell: bash
243-
244- # # Android SDK Setup
245-
246- - name : Install required emulator dependencies
247- if : ${{ inputs.platform == 'android' && runner.os == 'Linux' }}
248- run : |
249- sudo apt-get update
250- sudo apt-get install -y \
251- libpulse0 \
252- libglu1-mesa \
253- libnss3 \
254- libxss1
255-
256- echo "✅ Linux dependencies installed successfully"
257- shell : bash
258-
259- - name : Install Android SDK packages
228+ - name : Setup Android environment variables
260229 if : ${{ inputs.platform == 'android' }}
261230 run : |
262- echo "Accepting SDK licenses..."
263- printf 'y\n%.0s' {1..10} | "${ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager" --licenses
264-
265- echo "Installing Android SDK components..."
266- "${ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager" --install \
267- "platform-tools" \
268- "platforms;android-${{ inputs.android-api-level }}" \
269- "build-tools;34.0.0" \
270- "emulator" \
271- "system-images;android-${{ inputs.android-api-level }};google_apis;${{ inputs.android-abi }}" \
272-
273- echo "Updating SDK packages..."
274- "${ANDROID_HOME}/cmdline-tools/latest/bin/sdkmanager" --update
275-
276- echo "✅ Android SDK packages installed successfully"
277- shell : bash
278-
279- # # NDK Setup
280-
281- - name : Debug Android SDK Paths
282- if : ${{ inputs.platform == 'android' }}
283- run : |
284- echo "ANDROID_HOME: $ANDROID_HOME"
231+ echo "Setting up Android environment variables..."
232+ echo "ANDROID_HOME=${ANDROID_SDK_ROOT}" >> "$GITHUB_ENV"
233+ echo "PATH=${PATH}:${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin:${ANDROID_SDK_ROOT}/platform-tools:${ANDROID_SDK_ROOT}/emulator" >> "$GITHUB_ENV"
234+
235+ echo "ANDROID_HOME: ${ANDROID_SDK_ROOT}"
285236 echo "ANDROID_SDK_ROOT: $ANDROID_SDK_ROOT"
237+ echo "ANDROID_NDK_HOME: $ANDROID_NDK_HOME"
286238 shell : bash
287239
288- - name : Install Android NDK
289- if : ${{ inputs.platform == 'android' }}
290- run : |
291- "$ANDROID_HOME/cmdline-tools/latest/bin/sdkmanager" "ndk;${{ inputs.ndk-version }}"
292- shell : bash
293-
294- - name : Add Android tools to PATH
295- if : ${{ inputs.platform == 'android' }}
296- run : |
297- echo "$ANDROID_HOME/platform-tools" >> "$GITHUB_PATH"
298- echo "$ANDROID_HOME/emulator" >> "$GITHUB_PATH"
299- echo "$ANDROID_HOME/cmdline-tools/latest/bin" >> "$GITHUB_PATH"
300- shell : bash
301-
302- - name : Add NDK related toolchains to PATH
240+ - name : Verify Android SDK from Docker
303241 if : ${{ inputs.platform == 'android' }}
304242 run : |
305- NDK_TOOLCHAIN="$ANDROID_SDK_ROOT/ndk/${{ inputs.ndk-version }}/toolchains/llvm/prebuilt/linux-x86_64/bin"
306- echo "$NDK_TOOLCHAIN" >> "$GITHUB_PATH"
307- echo "$ANDROID_SDK_ROOT/ndk/${{ inputs.ndk-version }}" >> "$GITHUB_PATH"
243+ echo "Verifying Android SDK installation from Docker..."
244+ if [ -d "$ANDROID_SDK_ROOT" ]; then
245+ echo "✅ Android SDK found at: $ANDROID_SDK_ROOT"
246+ ls -la "$ANDROID_SDK_ROOT/"
247+
248+ # Verify key tools are available
249+ if [ -f "${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/avdmanager" ]; then
250+ echo "✅ avdmanager found"
251+ else
252+ echo "❌ avdmanager not found"
253+ exit 1
254+ fi
255+
256+ if [ -f "${ANDROID_SDK_ROOT}/cmdline-tools/latest/bin/sdkmanager" ]; then
257+ echo "✅ sdkmanager found"
258+ else
259+ echo "❌ sdkmanager not found"
260+ exit 1
261+ fi
262+ else
263+ echo "❌ Android SDK not found at: $ANDROID_SDK_ROOT"
264+ exit 1
265+ fi
308266 shell : bash
309267
310268 # # Launch AVD
0 commit comments