Skip to content

Commit

Permalink
Reduce android example APK size (#8932)
Browse files Browse the repository at this point in the history
# Objective

The current mobile example produces an APK of 1.5 Gb.
- Running the example on a real device takes significant time (around
one minute just to copy the file over USB to my phone).
- Default virtual devices in Android studio run out of space after the
first install. This can of course be solved/configured, but it causes
unnecessary friction.
- One impression could be, that Bevy produces bloated APKs. 1.5Gb is
even double the size of debug builds for desktop examples.

## Solution

- Strip the debug symbols of the shared libraries before they are copied
to the APK

APK size after this change: 200Mb
Copy time on my machine: ~8s

## Considered alternative

APKs built in release mode are only 50Mb in size, but require setting up
signing for the profile and compile longer.
  • Loading branch information
NiklasEi committed Jul 5, 2023
1 parent e03dd4d commit b61397e
Showing 1 changed file with 2 additions and 0 deletions.
2 changes: 2 additions & 0 deletions examples/mobile/Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,8 @@ package = "org.bevyengine.example"
apk_name = "bevyexample"
assets = "../../assets"
resources = "../../assets/android-res"
# This strips debug symbols from the shared libraries, drastically reducing APK size. If you need them, remove the option.
strip = "strip"
build_targets = ["aarch64-linux-android", "armv7-linux-androideabi"]

[package.metadata.android.sdk]
Expand Down

0 comments on commit b61397e

Please sign in to comment.