- name: Set Android Studio version set_fact: studio_path: "{{ large_prog_dir }}\\android-studio" studio_version: "2025.1.2.13" tools_version: "13114758_latest" - name: Set Android command-line tools path set_fact: tools_path: "{{ studio_path }}\\cmdline-tools\\latest" - name: Check Android Studio win_stat: path: "{{ studio_path }}\\bin\\studio64.exe" register: studio - when: not studio.stat.exists block: - name: Download Android Studio win_get_url: url: "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/{{ studio_version }}/android-studio-{{ studio_version }}-windows.zip" dest: "{{ large_prog_dir }}\\" - name: Extract Android Studio win_unzip: src: "{{ large_prog_dir }}\\android-studio-{{ studio_version }}-windows.zip" dest: "{{ large_prog_dir }}\\" delete_archive: yes - name: Check Android Studio tools win_stat: path: "{{ tools_path }}\\bin\\sdkmanager.bat" register: tools - when: not tools.stat.exists block: - name: Download Android Studio tools win_get_url: url: "https://dl.google.com/android/repository/commandlinetools-win-{{ tools_version }}.zip" # url: "https://dl.google.com/android/repository/platform-tools-{{ tools_version }}-windows.zip" dest: "{{ studio_path }}" - name: Extract Android Studio tools win_unzip: # src: "{{ large_prog_dir }}\\platform-tools-{{ tools_version }}-windows.zip" src: "{{ studio_path}}\\commandlinetools-win-{{ tools_version }}.zip" dest: "{{ studio_path }}\\cmdline-tools\\" delete_archive: yes - name: Move cmdline-tools to expected location ansible.windows.win_powershell: script: move "{{ studio_path }}\\cmdline-tools\\cmdline-tools" "{{ tools_path }}" - name: Create Android Studio data directory win_file: path: "{{ large_prog_dir }}\\.android" state: directory - name: Set Android Studio environment variables win_environment: level: machine variables: ANDROID_HOME: "{{ studio_path }}" ANDROID_SDK_ROOT: "{{ studio_path }}" ANDROID_PREFS_ROOT: "{{ large_prog_dir }}\\" GRADLE_USER_HOME: "{{ large_prog_dir }}\\.gradle" # - name: Accept Android SDK licenses # win_shell: sh -c "yes | /c/android-sdk/cmdline-tools/cmdline-tools/bin/sdkmanager.bat --licenses" - name: Include Android SDK packages include_vars: androidsdk_packages.yml - name: Install Android SDK packages win_shell: | {{ tools_path }}\bin\sdkmanager.bat --install "{{ item }}" loop: "{{ AndroidSDK_packages }}" # {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "{{ AndroidSDK_packages | join(' ') }}" # {{ sdk_path }}\\cmdline-tools\\cmdline-tools\\bin\\sdkmanager --install "build-tools;33.0.0" "cmdline-tools;latest" "emulator" "ndk-bundle" "ndk;25.1.8937393" "platform-tools" "platforms;android-33" "sources;android-33" "system-images;android-33;google_apis;arm64-v8a" "system-images;android-33;google_apis;x86_64" #- name: Install Android Studio # win_package: # path: "https://redirector.gvt1.com/edgedl/android/studio/install/{{ studio_version }}/android-studio-{{ studio_version }}-windows.exe" # arguments: /S /AllUsers # expected_return_code: [0, 1223, 3010] # creates_path: "%ProgramFiles%\\Android\\Android Studio\\bin\\studio64.exe" #- name: Check HAXM install status # win_stat: # path: "%ProgramFiles%\\Intel\\HAXM" # register: file #- when: not file.stat.exists # block: # - name: Download HAXM # win_get_url: # url: https://github.com/intel/haxm/releases/download/v7.7.1/haxm-windows_v7_7_1.zip # dest: C:\ # register: download # - name: Unzip HAXM # win_unzip: # src: "{{ download.dest }}" # dest: C:\haxm # - name: Install HAXM # win_command: C:\haxm\silent_install.bat # - name: Remove temporaries # win_file: # path: C:\haxm # state: absent