Skip to content

Conversation

@mrk-han
Copy link
Collaborator

@mrk-han mrk-han commented Oct 19, 2022

The current readme felt a bit disingenuous & outdated given the current situation with Github's Hosted Runners.

This PR is a general update & rephrasing of the README to provide more clarity, and is an attempt to give a more accurate representation of the state of the action.

See: actions/runner-images#6388 , actions/runner-images#183 (comment)

@mrk-han mrk-han requested a review from ychescale9 October 19, 2022 03:41
Copy link
Member

@ychescale9 ychescale9 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks! Just 1 comment on Ubuntu support.

README.md Outdated
</p>

A GitHub Action for installing, configuring and running hardware-accelerated Android Emulators on macOS virtual machines.
A GitHub Action for installing, configuring and running Android Emulators on macOS and Ubuntu virtual machines.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think it's still important to distinguish between macOs and Ubuntu support. Being able to run in swiftshader_indirect mode is still way faster than -accel off. When people read this without any caveat they would expect running the action on linux VMs to be feasible, which is far from the reality.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Addressed in commit: e860dce

README.md Outdated
The **macOS** VM provided by **GitHub Actions** has **HAXM** installed so we are able to create a new AVD instance, launch an emulator with hardware acceleration, and run our Android
tests directly on the VM. You can also achieve this on a self-hosted Linux runner, but it will need to be on a compatible instance that allows you to enable KVM - for example AWS EC2 Bare Metal instances.
The **macOS** 10.x VM provided by **GitHub Actions** had **HAXM** [pre-installed](https://github.com/actions/runner-images/blob/main/images/macos/macos-10.15-Readme.md) so we were able to create a new AVD instance, launch an emulator with hardware acceleration and run our Android
tests directly on the VM. However, Github's [macOS-11](https://github.com/actions/runner-images/blob/main/images/macos/macos-11-Readme.md) and [macOS-12](https://github.com/actions/runner-images/blob/main/images/macos/macos-12-Readme.md) VMs **no longer** come pre-installed with HAXM. See [here](https://github.com/actions/runner-images/issues/183#issuecomment-610723516) and [here](https://github.com/actions/runner-images/issues/6388) for more info.
Copy link
Contributor

@mattjohnsonpint mattjohnsonpint Oct 20, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Reading this and checking the links - I find myself asking, "So, how do I install HAXM then, and do I need to?" We should either point at how to do that (if possible), or explain why we don't need it (if that's so).

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mattjohnsonpint Good call. Will add this

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Added in commit: e860dce

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I'm even more confused now, as the gist shows scripting the emulator directly instead of using the react-android-emulator action.

FWIW, I'm not installing HAXM, and for the most part, react-android-emulator is working.

Copy link
Collaborator Author

@mrk-han mrk-han Oct 21, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mattjohnsonpint Oh whoops, good call! I accidentally linked the wrong gist (same thing but without android-emulator-runner) Thank you!

fixed in 592f866

@mattjohnsonpint
Copy link
Contributor

mattjohnsonpint commented Oct 24, 2022

Sorry, but I'm still quite confused about what's actually being said here.

According to https://developer.android.com/studio/run/emulator-acceleration, the flag -gpu swiftshader_indirect is a software acceleration mode. This is what I've been using, and it appears to work the same regardless of whether or not I go out of my way to install haxm on the GitHub Actions macOS 12 runner.

I tried installing haxm and then setting the flag to -gpu host to use hardware acceleration, but that gives a warning:

WARNING | Your GPU drivers may have a bug. If you experience graphical issues, please consider switching to software rendering.

... and then the AVD fails to boot.

So if we can't use hardware acceleration, why are you recommending we install haxm?

@mattjohnsonpint
Copy link
Contributor

Looking closer at the existing readme, on the first line:

A GitHub Action for installing, configuring and running hardware-accelerated Android Emulators on macOS virtual machines.

If we have to use software acceleration with -gpu swiftshader_indirect, Is this just blatantly false then? What am I misunderstanding?

Don't get me wrong - I'd still much rather use this action than to script all the emulator commands myself, but does it actually support hardware-accelerated emulators?

@mattjohnsonpint
Copy link
Contributor

Oh, wait a sec. I think I was confused between the GPU acceleration mode and the VM acceleration mode.
https://developer.android.com/studio/run/emulator-acceleration#accel-vm

Am I understanding correctly then, that the GPU mode must stay software accelerated with -gpu switfshader_indirect, but by installing HAXM we can set -accel on to force hardware acceleration for the VM?

@mrk-han
Copy link
Collaborator Author

mrk-han commented Oct 25, 2022

@mattjohnsonpint Yes, my understanding is that you can choose between CPU vs GPU for Graphics Acceleration, and this is different from VM Acceleration.

You can utilize VM-Acceleration if there is Hypervisor + enabled IVT(Intel Virtualization Technology (VT, VT-x, vmx) extensions), and if the emulator is not inside another VM -- which means VM-Acceleration is usually not possible on Ubuntu agents scaled with something like VMSphere. So, if we have swiftshader_indirect enabled for the Graphics Rendering, then we can still have intel-haxm installed on the macos-12 agent to help with the VM Acceleration portion. (emulator -accel on)

From what I can tell, for some reason host is not a viable option on Github's standard macOS runners, and returns an error. (emulator -gpu swiftshader_indirect)

One question I need to test is using SKIA rendering. I'm not sure if SKIA completely replaces host/swiftshader_indirect for screen rendering, or if it can be used with both of them. My assumption is that SKIA will be an option to use instead of swiftshader_indirect and eventually will be passable as a -gpu option, but I am not sure of that.I will test this when I can.

I also wish there was a way for me to more easily communicate with the Google Emulator team to clear this up, so if anyone has suggestions on that please let me know.

I will add more clarity to the readme regarding this.

README.md Outdated
A GitHub Action for installing, configuring and running hardware-accelerated Android Emulators on macOS virtual machines.

The old ARM-based emulators were slow and are no longer supported by Google. The modern Intel Atom (x86 and x86_64) emulators require hardware acceleration (HAXM on Mac & Windows, QEMU on Linux) from the host to run fast. This presents a challenge on CI as to be able to run hardware accelerated emulators within a docker container, **KVM** must be supported by the host VM which isn't the case for cloud-based CI providers due to infrastructural limits. If you want to learn more about this, here's an article I wrote: [Running Android Instrumented Tests on CI](https://dev.to/ychescale9/running-android-emulators-on-ci-from-bitrise-io-to-github-actions-3j76).
The old ARM-based emulators were slow and are no longer supported by Google. The modern Intel Atom (x86 and x86_64) emulators can be fast, but rely on two forms of hardware acceleration to reach their peak potential: [Graphics Acceleration](https://developer.android.com/studio/run/emulator-acceleration#accel-graphics), e.g. `emulator -accel on` and [Virtual Machine(VM) Acceleration](https://developer.android.com/studio/run/emulator-acceleration#accel-vm), e.g. `emulator -gpu host`. Note: GPU and VM Acceleration are two different and non-mutually exclusive forms of Hardware Acceleration.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I think the examples given are reversed?

Copy link
Collaborator Author

@mrk-han mrk-han Oct 25, 2022

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@mattjohnsonpint Thank you so much for catching this!! I really appreciate it. Addressed in 8f64fa8

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Looks great now. Thanks!

@mrk-han
Copy link
Collaborator Author

mrk-han commented Oct 25, 2022

Note: This PR also helps address #270

@mrk-han
Copy link
Collaborator Author

mrk-han commented Oct 25, 2022

See also: intel/haxm#403 for info on installing HAXM

@mrk-han
Copy link
Collaborator Author

mrk-han commented Oct 26, 2022

One of the jobs failed due to an emulator timeout on boot. Since I couldn't rerun the tests I tried to add a method in which contributors could comment "run tests" on a PR to re-run the main.yml workflow. However, I'm not positive the context of that triggered run will be the PR. There might have to be an additional commit added which uses the checkout action with ref: specific_sha before running the workflow again, or else I believe it defaults to the main branch. We can test it out and if that is true, then I'll create another PR to address that.

Ideally the comment would run the workflow against the latest commit of the PR, and update the failed checks. Even better would be a method to rerun all failed or cancelled jobs, instead of running all of them -- but I do not believe that is currently supported. (I put in a discussion post here) to request that, or see if it is possible.

@mrk-han mrk-han requested a review from ychescale9 October 26, 2022 15:18
@ychescale9 ychescale9 merged commit a47c099 into ReactiveCircus:main Oct 26, 2022
@mrk-han mrk-han deleted the mrk-han/update-readme-1 branch October 26, 2022 17:25
ychescale9 added a commit that referenced this pull request Oct 28, 2022
* main:
  Prepare for release 2.27.0.
  Clean up action description.
  Update dependencies (#282)
  Update Readme & Provide current context on Hardware Acceleration on Github (#279)
  Pre Emulator Launch Script (#247)
  Update to Node 16 (#276)
katie-managexr added a commit to ManageXR/android-emulator-runner that referenced this pull request Oct 14, 2025
…n ReactiveCircus (#1)

I created this branch by running git checkout -b copy-of-v2 upstream/release/v2. This is to get most recent release-ready version from the other repo, ReactiveCircus/android-emulator-runner.

Since our original copy of the branch, the android-emulator-runner has added support for running emulators on Ubuntu to the extent that it is now more efficient than running on MacOs.

$ git log main...copy-of-v2

commit 5302c0e
Author: John Doe [katie@managexr.com](mailto:katie@managexr.com)
Date:   Wed Oct 8 12:02:45 2025 -0700

```
Fix emulator port issue by removing explicit port assignment

- Remove default port from action.yml to avoid forcing port 5554
- Allow emulator to auto-assign port instead of explicit -port parameter
- Keep default port for ADB commands but don't force emulator port
```

commit 1dcd009
Merge: 62dbb60 2548f9f
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 29 01:51:10 2025 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.34.0.
  Update README.md and CHANGELOG.md.
  Support API levels for SDK extensions and add missing targets for automotive and desktop. (ReactiveCircus#428)
  Add `Baklava` support (ReactiveCircus#424)
```

commit 2548f9f
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 29 01:48:44 2025 +1100

```
Prepare for release 2.34.0.
```

commit 595a456
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 29 01:33:05 2025 +1100

```
Update README.md and CHANGELOG.md.
```

commit a173d65
Author: Timothy [6560631+TimoPtr@users.noreply.github.com](mailto:6560631+TimoPtr@users.noreply.github.com)
Date:   Fri Mar 28 15:04:02 2025 +0100

```
Support API levels for SDK extensions and add missing targets for automotive and desktop. (ReactiveCircus#428)
```

commit 50d5b10
Author: LoveSy [shana@zju.edu.cn](mailto:shana@zju.edu.cn)
Date:   Fri Jan 24 19:46:33 2025 +0800

```
Add `Baklava` support (ReactiveCircus#424)

* Add `Baklava` support

* Fix typo of `ubuntu-latest` to fix CI
```

commit 62dbb60
Merge: f0d1ed2 c77bfe7
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Oct 12 17:43:32 2024 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.33.0.
  Fix avd path on ubuntu-24.04 - attempt 2 (ReactiveCircus#415)
  Revert creating avd directory. (ReactiveCircus#414)
  Fix SDK path issues with ubuntu-24.04 (ReactiveCircus#409)
  SDK build tools 35.0.0, command-line tools 16.0. (ReactiveCircus#408)
  Avoid changing the owner of unnecessary files (ReactiveCircus#406)
  Update npm packages. (ReactiveCircus#401)
```

commit c77bfe7
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Oct 12 17:42:24 2024 +1100

```
Prepare for release 2.33.0.
```

commit ead704c
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Oct 12 17:26:36 2024 +1100

```
Fix avd path on ubuntu-24.04 - attempt 2 (ReactiveCircus#415)
```

commit e800fff
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri Oct 11 13:55:44 2024 +1100

```
Revert creating avd directory. (ReactiveCircus#414)
```

commit 8c07710
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri Oct 11 11:55:47 2024 +1100

```
Fix SDK path issues with ubuntu-24.04 (ReactiveCircus#409)
```

commit 3a18f50
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Mon Oct 7 00:50:35 2024 +1100

```
SDK build tools 35.0.0, command-line tools 16.0. (ReactiveCircus#408)
```

commit 1b985f4
Author: Justin Brooks [justin@jzbrooks.com](mailto:justin@jzbrooks.com)
Date:   Fri Oct 4 22:53:35 2024 -0400

```
Avoid changing the owner of unnecessary files (ReactiveCircus#406)

* Avoid changing the owner of unnecessary files

Source files shouldn't matter for the purposes of this tool.
% ls -R $ANDROID_HOME/sources/android-34 | wc -l
   17750

* Remove non-existant directory

* Avoid another unnecessary chown

* Push js
```

commit a3dcdb3
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Jul 9 16:23:18 2024 +1000

```
Update npm packages. (ReactiveCircus#401)
```

commit f0d1ed2
Merge: 77986be 81f860b
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Jul 9 12:55:08 2024 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.32.0.
  Add missing compiled js files from ReactiveCircus#383.
  Support customizing emulator port (ReactiveCircus#383)
```

commit 81f860b
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Jul 9 12:53:57 2024 +1000

```
Prepare for release 2.32.0.
```

commit e93b947
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Jul 9 12:51:00 2024 +1000

```
Add missing compiled js files from ReactiveCircus#383.
```

commit 4b0628e
Author: Kamil Bąk [34217757+KamilKurde@users.noreply.github.com](mailto:34217757+KamilKurde@users.noreply.github.com)
Date:   Tue Jul 2 14:42:44 2024 +0200

```
Support customizing emulator port (ReactiveCircus#383)

* Add port parameter

* Fix a typo in test description

* Fix avd not being started with correct port

* Fix wrong port being used to kill an emulator if there was an exception
```

commit 77986be
Merge: 6b0df4b ca77a10
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat May 25 00:02:03 2024 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.31.0.
  Install platforms for the specified api level (ReactiveCircus#384)
  Add api level `VanillaIceCream` support (ReactiveCircus#378)
  Bump Gradle wrapper validation from v1 to v2 to use Node 20 (ReactiveCircus#374)
  Migrate to Node 20 on CI via GitHub Actions major upgrades (ReactiveCircus#372)
```

commit ca77a10
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat May 25 00:00:37 2024 +1000

```
Prepare for release 2.31.0.
```

commit 1fef06a
Author: Josh Lesch [joshrlesch@users.noreply.github.com](mailto:joshrlesch@users.noreply.github.com)
Date:   Wed Mar 27 17:40:07 2024 -0500

```
Install platforms for the specified api level (ReactiveCircus#384)

* Install platforms for the specified api level

* Fix typo
```

commit d8da5b6
Author: LoveSy [shana@zju.edu.cn](mailto:shana@zju.edu.cn)
Date:   Sun Feb 18 07:14:24 2024 +0800

```
Add api level `VanillaIceCream` support (ReactiveCircus#378)
```

commit a0c0e72
Author: Róbert Papp [papp.robert.s@gmail.com](mailto:papp.robert.s@gmail.com)
Date:   Mon Jan 29 21:34:22 2024 +0000

```
Bump Gradle wrapper validation from v1 to v2 to use Node 20 (ReactiveCircus#374)
```

commit 9d5d623
Author: Róbert Papp [papp.robert.s@gmail.com](mailto:papp.robert.s@gmail.com)
Date:   Sat Jan 27 12:11:47 2024 +0000

```
Migrate to Node 20 on CI via GitHub Actions major upgrades (ReactiveCircus#372)

* Update first party actions to Node 20 majors.

* Update Gradle cache actions to Node 20 majors.
```

commit 6b0df4b
Merge: eaf4c24 bc2cd2a
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Jan 26 23:28:10 2024 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.30.1.
  Run the action on Node 20 (ReactiveCircus#371)
```

commit bc2cd2a
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Jan 26 23:26:22 2024 +1100

```
Prepare for release 2.30.1.
```

commit 61a61f9
Author: Róbert Papp [papp.robert.s@gmail.com](mailto:papp.robert.s@gmail.com)
Date:   Fri Jan 26 12:24:19 2024 +0000

```
Run the action on Node 20 (ReactiveCircus#371)
```

commit eaf4c24
Merge: 99a4aac 426fbd2
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Thu Jan 25 23:16:47 2024 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.30.0.
  Node 20. (ReactiveCircus#369)
  Add another user: robolectric/robolectric (ReactiveCircus#352)
  Promote using ubuntu runner with KVM. (ReactiveCircus#366)
```

commit 426fbd2
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Thu Jan 25 23:14:27 2024 +1100

```
Prepare for release 2.30.0.
```

commit e1bd48c
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Thu Jan 25 23:10:17 2024 +1100

```
Node 20. (ReactiveCircus#369)
```

commit 1e33853
Author: utzcoz [43091780+utzcoz@users.noreply.github.com](mailto:43091780+utzcoz@users.noreply.github.com)
Date:   Sat Jan 20 13:43:05 2024 +0800

```
Add another user: robolectric/robolectric (ReactiveCircus#352)

Signed-off-by: utzcoz <utzcoz@outlook.com>
```

commit c479bb6
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Jan 19 17:38:35 2024 +1100

```
Promote using ubuntu runner with KVM. (ReactiveCircus#366)
```

commit 99a4aac
Merge: d94c3fb 677db68
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 18:33:29 2023 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.29.0.
  SDK command-line tools 11.0. (ReactiveCircus#356)
  Update npm packages. (ReactiveCircus#355)
  Check in updated `*.js` file.
  Update test fixture dependencies. (ReactiveCircus#354)
  Upgrade to latest npm dependencies (ReactiveCircus#347)
  Fixed emulator download URL (ReactiveCircus#343)
  Update README.md (Who is using…) (ReactiveCircus#335)
```

commit 677db68
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 18:32:27 2023 +1100

```
Prepare for release 2.29.0.
```

commit f9c2835
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 18:25:39 2023 +1100

```
SDK command-line tools 11.0. (ReactiveCircus#356)

* SDK command-line tools 11.0.

* Temporarily disable API 16 test.
```

commit 1036f55
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 12:46:32 2023 +1100

```
Update npm packages. (ReactiveCircus#355)
```

commit 5a481d2
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 11:38:49 2023 +1100

```
Check in updated `*.js` file.
```

commit f72f505
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Dec 6 11:37:21 2023 +1100

```
Update test fixture dependencies. (ReactiveCircus#354)
```

commit fabc291
Author: Michael Bailey [1195562+yogurtearl@users.noreply.github.com](mailto:1195562+yogurtearl@users.noreply.github.com)
Date:   Thu Aug 24 02:31:32 2023 -0700

```
Upgrade to latest npm dependencies (ReactiveCircus#347)
```

commit 2cfd145
Author: olegdolgikh [127970383+olegdolgikh@users.noreply.github.com](mailto:127970383+olegdolgikh@users.noreply.github.com)
Date:   Tue Jul 4 13:39:36 2023 +0200

```
Fixed emulator download URL (ReactiveCircus#343)

Previous code worked in a wrong way.
1. Getting the first char of a build number is mistake because now numbers start with 1, but whole number higher than the number which starts from 7.
2. URL was incorrect for arm mac machines. It needed to add `aarch64` suffix
```

commit 5e93562
Author: Ethan Graham [116118556+ethanxr@users.noreply.github.com](mailto:116118556+ethanxr@users.noreply.github.com)
Date:   Sat Apr 29 00:09:33 2023 -0700

```
Stop chatty test output
```

commit e1bdfef
Author: Ricki Hirner [hirner@bitfire.at](mailto:hirner@bitfire.at)
Date:   Tue Apr 25 10:33:07 2023 +0200

```
Update README.md (Who is using…) (ReactiveCircus#335)

Add davx5-ose to Who is using…
```

commit d94c3fb
Merge: 50986b1 b35b1c6
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 18 19:50:25 2023 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.28.0.
  Cleanup action description.
  Update `test-fixture` dependencies and workflows (ReactiveCircus#332)
  SDK command-line tools 9.0. (ReactiveCircus#331)
  Add emulator-boot-timeout parameter (ReactiveCircus#326)
  Update dependency androidx.appcompat:appcompat to v1.6.1 (ReactiveCircus#322)
  Add renovate.json (ReactiveCircus#320)
  Support non-integer API level (ReactiveCircus#317)
  Replace deprecated `ANDROID_SDK_ROOT` with `ANDROID_HOME`.
  Update npm packages.
  Include ACRA in list of users (ReactiveCircus#295)
  Update readme with new info on hypervisors (ReactiveCircus#292)
  SDK command-line tools 8.0. (ReactiveCircus#291)
```

commit b35b1c6
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 18 19:49:07 2023 +1100

```
Prepare for release 2.28.0.
```

commit acd15a6
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 18 19:39:55 2023 +1100

```
Cleanup action description.
```

commit a2c97ef
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 18 19:38:37 2023 +1100

```
Update `test-fixture` dependencies and workflows (ReactiveCircus#332)

* Gradle 8.0.2 for test-fixture. Update Gradle build cache in workflows.

* Update all dependencies for `test-fixture`.

* Add missing JVM target.
```

commit 8c71f5e
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 18 18:58:54 2023 +1100

```
SDK command-line tools 9.0. (ReactiveCircus#331)
```

commit 743ec40
Author: Dmitry Koplyarov [koplyarov.da@gmail.com](mailto:koplyarov.da@gmail.com)
Date:   Thu Mar 9 00:44:31 2023 +0000

```
Add emulator-boot-timeout parameter (ReactiveCircus#326)

* Add emulator-boot-timeout parameter

* Update action-types.yml
```

commit bad4154
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Feb 18 11:34:02 2023 +1100

```
Update dependency androidx.appcompat:appcompat to v1.6.1 (ReactiveCircus#322)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
```

commit bdaf049
Author: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Date:   Sat Feb 18 11:30:28 2023 +1100

```
Add renovate.json (ReactiveCircus#320)

Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
```

commit 8e947e5
Author: LoveSy [631499712@qq.com](mailto:631499712@qq.com)
Date:   Thu Feb 9 20:07:08 2023 +0800

```
Support non-integer API level (ReactiveCircus#317)

* Support non-integer API level

* update lib

* Add test

* No need to install platforms.

Mostly application will use different SDK platform.

* Update lib
```

commit 50986b1
Merge: d7b53dd 87e9722
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Oct 28 18:30:49 2022 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.27.0.
  Clean up action description.
  Update dependencies (ReactiveCircus#282)
  Update Readme & Provide current context on Hardware Acceleration on Github (ReactiveCircus#279)
  Pre Emulator Launch Script (ReactiveCircus#247)
  Update to Node 16 (ReactiveCircus#276)
```

commit d7b53dd
Merge: b390b0e 6fd58f9
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Sep 20 15:35:23 2022 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.26.0.
  Bump @actions/core from 1.6.0 to 1.9.1 (ReactiveCircus#262)
  Add action types (ReactiveCircus#257)
  Update documentation (ReactiveCircus#255)
```

commit b390b0e
Merge: e790971 402c25e
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Tue Jul 12 18:48:20 2022 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.25.0.
  Check in missing compiled js file.
  Auto detect hardware acceleration on Linux (ReactiveCircus#254)
  Build tools 33.0.0. Update test fixture dependencies.
  Update Kotlin and AGP in test-fixture.
  SDK command-line tools 7.0.
```

commit e790971
Merge: 76c2bf6 f30ff06
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Apr 30 23:35:35 2022 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.24.0.
  Add option to specify AVD heap size (ReactiveCircus#245)
  Gradle 7.4.2.
  Bump GH actions (ReactiveCircus#240)
  Bump minimist from 1.2.5 to 1.2.6 (ReactiveCircus#237)
  Update dependencies in test-fixture.
  Add more .gitignore rules (ReactiveCircus#231)
  Update README for using with gradle/gradle-build-action (ReactiveCircus#230)
```

commit 76c2bf6
Merge: 48744f2 08a23a6
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri Feb 18 01:49:20 2022 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.23.0.
  Add missing generated .js files.
  Add GHA commands to group logs (ReactiveCircus#224)
  wikimedia have likely renamed master -> main (ReactiveCircus#221)
  Allow increasing main storage size (sdcard is separate storage) (ReactiveCircus#219)
  Update to SDK command-line tools 6.0. (ReactiveCircus#213)
  Update build tools to 32.0.0. Update text-fixture compileSdkVersion and targetSdkVersion to 32. (ReactiveCircus#212)
```

commit 48744f2
Merge: 2b2ebf2 5b2310f
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Dec 25 02:27:59 2021 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.22.0.
  Update the README and fix some typos (ReactiveCircus#199)
  Add support for enabling hardware keyboard.
  Update README.md `avdmanager list device`
  Update NPM packages.
  Migrate to gradle-build-action.
  Update packages.
```

commit 2b2ebf2
Merge: f71c6d1 d203cdc
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Oct 23 19:52:26 2021 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.21.0.
  Update packages.
  Support aosp_atd and google_atd targets.
  Added SORMAS to the list of projects
  Bump tmpl from 1.0.4 to 1.0.5
  Update NPM packages.
  Add tinylog to project list
  Add paths-ignore for pull_request.
  Fix typo.
```

commit f71c6d1
Merge: 5de26e4 511d462
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Aug 28 20:04:58 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.20.0.
  Update manual workflow.
  Support choosing channel to download SDK components from.
  build-tools to 31.0.0; SDK cmd-line tools to 5.0. (ReactiveCircus#174)
  Fix macos-11 VM label.
  Realm JavaScript is using Android Emulator Runner (ReactiveCircus#182)
  Add MobileRT to the list of projects (ReactiveCircus#181)
  Support non-mobile targets (Wear OS, TV) (ReactiveCircus#180)
  Bump path-parse from 1.0.6 to 1.0.7
```

commit 5de26e4
Merge: ac874f3 5e487db
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Tue Jul 20 23:53:04 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.19.1.
  Accept all Android SDK Licenses
  Adds Norris to the list of projects
```

commit ac874f3
Merge: 6e775ef 0c3db9c
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Jun 26 23:49:47 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.19.0.
  Add option to set AVD RAM size.
```

commit 6e775ef
Merge: 97449e9 8a43334
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Jun 26 01:23:30 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.18.1.
  Unzip specific emulator build into latest emulator build from sdkmanager. Support using modern build id for emulator-build.
```

commit 97449e9
Merge: 226f262 fe99eb1
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sun Jun 20 15:28:07 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.18.0.
  Add sample workflow for AVD snapshot caching.
  Add `force-avd-creation` to Configurations table in README.md.
  Add force-avd-creation to skip avd creation if avd with same name exists. Update workflow to test snapshot caching.
  Add accompanist to adoption list
  Gradle 7.1.
  Bump glob-parent from 5.1.1 to 5.1.2
  Bump ws from 7.3.1 to 7.4.6
```

commit 226f262
Merge: 599839e 4342116
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri May 28 17:13:49 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.17.0.
  Update test fixture dependencies.
  Add option to toggle Linux hardware acceleration
  Bump hosted-git-info from 2.8.8 to 2.8.9
  Bump lodash from 4.17.19 to 4.17.21
```

commit 599839e
Merge: d279995 751bef6
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri May 7 18:32:02 2021 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.16.0.
  Add support for arm64-v8a for Apple Silicon Macs
  Add option to disable spellcheck
  Bump y18n from 4.0.0 to 4.0.1
  Update README.md
  Add google/android-fhir to the list of projects that use android-emulator-runner (ReactiveCircus#132)
  Add Wikipedia app to list of projects.
  Add kiwix-android to the list of projects
  Avoid Wrapping Script Code In Quotes
```

commit d279995
Merge: 08b092e 838986e
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri Mar 5 10:41:47 2021 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.15.0.
  Change default cores to 2, add cores in workflow
  Add option to modify the number of cores
```

commit 08b092e
Merge: 94bd1ed 91b2b2f
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Wed Jan 13 19:29:01 2021 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.14.3.
  Always add path for cmdline-tools to support macos-11.0.
  Gradle 6.8.
  Add Hash Checker app projects to consumers list
  Add LeakCanary to adopter list
```

commit 94bd1ed
Merge: 70e3f6e c3e261e
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Tue Jan 5 18:29:16 2021 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.14.2.
  Support non-default API 28 images
```

commit 70e3f6e
Merge: 02cf805 0d8602f
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Mon Dec 28 14:00:37 2020 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.14.1.
  Fix AVD creation hang when profile is not specified.
```

commit 02cf805
Merge: e08f702 045b7d8
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sun Dec 27 20:48:59 2020 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.14.0.
  Support specifying SD card path or size.
  Update npm packages.
  Replace usages of deprecated ANDROID_HOME with ANDROID_ROOT_SDK. Bump build tools to 30.0.3. Update test-fixture dependencies.
  Update Compose Samples URL
```

commit e08f702
Merge: 07b0366 11559ab
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Sat Nov 14 19:05:52 2020 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.13.0.
  Update cmdline-tools to 3.0.
  Update npm packages.
  Add Shopify/android-testify to list of projects
```

commit 07b0366
Merge: c56210b 15da0b2
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Fri Oct 16 14:48:14 2020 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.12.0.
  Add support for using google_apis_playstore system images.
  Fix README.md typo
```

commit c56210b
Merge: 4a8a9af 04a32d7
Author: Yang [reactivecircus@gmail.com](mailto:reactivecircus@gmail.com)
Date:   Thu Oct 8 12:44:58 2020 +1100

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.11.1.
  Update npm packages.
  Bump @actions/core from 1.2.4 to 1.2.6
  Update to gradle 6.7-rc-1 for test fixture. Build with Java 15 on CI.
  Improve GitHub Actions Gradle cache.
  Add square/radiography to adopter list
  Add cashapp/copper to adapter list
  SDK Build tools 30.0.2.
  Update fixture dependencies.
  Gradle 6.6.
  Update README.md
  Update packages.
  Build tools 30.0.1.
  Use fs for writing licence files.
  Update cmdline-tools to 2.1.
```

commit 4a8a9af
Merge: b62c970 a72b5eb
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Jun 20 19:53:32 2020 +1000

```
Merge branch 'main' into release/v2

* main:
  Prepare for release 2.11.0.
  Support running multiple actions sequentially in a single job.
  Add RxBinding to adopter list.
  Rename master branch to main.
```

commit b62c970
Merge: e93c997 9ef7536
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Jun 12 19:51:10 2020 +1000

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.10.0.
  Support API 30 system images and add API 30 to workflow. Update build tools to 30.0.0. Update test projec’s compileSdk and targetSdk to API 30.
```

commit e93c997
Merge: 4f4106d fc17953
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri May 29 23:10:58 2020 +1000

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.9.0.
  Update test fixture dependencies.
  SDK Command-line Tools 2.0.
  Add information on running on Linux to README.md.
  Fix doc.
  Mention ci-matters repo in adopters list
```

commit 4f4106d
Merge: 2f678a7 4df9257
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri May 1 20:18:58 2020 +1000

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.8.0.
  Add support for specifying a custom name used for creating AVD.
  Fix typo
  Add list of projects using android-emulator-runner.
  Bump kotlin and AGP for test fixture project.
```

commit 2f678a7
Merge: e4eb880 33176ea
Author: Yang [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Apr 11 21:52:57 2020 +1000

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.7.0.
  Security audit.
  Support specifying versions of NDK and CMake to install.
```

commit e4eb880
Merge: a3b0e6d 61dd774
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Apr 3 00:13:02 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.6.2.
  Add gradle caching.
  Use correct cli-tools binary for mac.
  Remove API 28 from workflow.
```

commit a3b0e6d
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Apr 1 00:56:37 2020 +1100

```
Update node_modules.
```

commit 0159db6
Merge: 769ff28 22965df
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Wed Apr 1 00:54:08 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.6.1.
  Fix sdk license issue with API 28+ system images on Linux.
```

commit 769ff28
Merge: 6bb3965 0d96655
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Mar 28 15:00:56 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.6.0.
  Update packages.
  Add information re. hardware acceleration for linux support.
  Support running on linux without hardware accleration.
  Gradle 6.3.
  Gradle 6.3-rc-4.
  Update workflow to use Java 14.
  Update npm packages.
  Bump acorn from 5.7.3 to 5.7.4
```

commit 6bb3965
Merge: 2754675 da846ad
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Thu Mar 5 14:55:36 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.5.0.
  Add support for API 15-19 system images.
  Use new cmdline-tools with support for running sdkmanager and avdmanager with Java 8+.
  Update test-fixture dependencies. Drop minSdkVersion to 15.
  Update to AGP 3.6.0 and Gradle 6.2.1 for test-fixture project.
```

commit 2754675
Merge: bdf1f83 aaa1121
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Feb 15 18:52:13 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.4.0.
  Add support for setting a custom working-directory.
  Fix typo
```

commit bdf1f83
Merge: 5dd12aa d3a226f
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Tue Feb 4 12:28:52 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.3.2.
  Fix escaped environment variables in script.
```

commit 5dd12aa
Merge: d27f7ec e53c6d9
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Fri Jan 31 11:47:56 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.3.1.
  Update Gradle to 6.1.1 for test-fixture.
  Build tools 29.0.3.
  Validate Gradle Wrapper.
```

commit d27f7ec
Merge: 3f52989 1162b6c
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Mon Jan 20 03:57:13 2020 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.3.0.
  Force use Java 8 for sdkmanager and avdmanager.
  Update checkout action to v2.
```

commit 3f52989
Merge: da41ec9 86385e0
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sun Dec 15 04:32:53 2019 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.2.0.
  Stop pinning emulator build in workflow.
  Add support for pinning specific emulator build.
  Explicitly set GPU mode to swiftshader_indirect.
  Fix script execution order. Run test fixture in workflow.
```

commit da41ec9
Merge: f079aca 269b6dc
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Dec 14 00:36:51 2019 +1100

```
Merge branch 'master' into release/v2

* master:
  Prepare for release 2.1.0.
  Support multi-line script.
  Skip workflow for markdown file changes.
  Reference Article
```

commit f079aca
Author: Yang Chen [ychescale9@gmail.com](mailto:ychescale9@gmail.com)
Date:   Sat Dec 7 18:09:02 2019 +1100

```
Release v2.
```
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants