3ccae989f7
Bumps the rust-minor group with 16 updates: | Package | From | To | | --- | --- | --- | | [webbrowser](https://github.com/amodm/webbrowser-rs) | `1.0.1` | `1.0.2` | | [bytes](https://github.com/tokio-rs/bytes) | `1.7.1` | `1.7.2` | | [cc](https://github.com/rust-lang/cc-rs) | `1.1.19` | `1.1.21` | | [clap](https://github.com/clap-rs/clap) | `4.5.17` | `4.5.18` | | [clap_builder](https://github.com/clap-rs/clap) | `4.5.17` | `4.5.18` | | [clap_derive](https://github.com/clap-rs/clap) | `4.5.13` | `4.5.18` | | [iana-time-zone](https://github.com/strawlab/iana-time-zone) | `0.1.60` | `0.1.61` | | [pkg-config](https://github.com/rust-lang/pkg-config-rs) | `0.3.30` | `0.3.31` | | [quick-xml](https://github.com/tafia/quick-xml) | `0.36.1` | `0.36.2` | | [thiserror](https://github.com/dtolnay/thiserror) | `1.0.63` | `1.0.64` | | [thiserror-impl](https://github.com/dtolnay/thiserror) | `1.0.63` | `1.0.64` | | [toml_edit](https://github.com/toml-rs/toml) | `0.22.20` | `0.22.21` | | [unicode-normalization](https://github.com/unicode-rs/unicode-normalization) | `0.1.23` | `0.1.24` | | [unicode-width](https://github.com/unicode-rs/unicode-width) | `0.1.13` | `0.1.14` | | [unicode-xid](https://github.com/unicode-rs/unicode-xid) | `0.2.5` | `0.2.6` | | [webpki-roots](https://github.com/rustls/webpki-roots) | `0.26.5` | `0.26.6` | Updates `webbrowser` from 1.0.1 to 1.0.2 - [Release notes](https://github.com/amodm/webbrowser-rs/releases) - [Changelog](https://github.com/amodm/webbrowser-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/amodm/webbrowser-rs/compare/v1.0.1...v1.0.2) Updates `bytes` from 1.7.1 to 1.7.2 - [Release notes](https://github.com/tokio-rs/bytes/releases) - [Changelog](https://github.com/tokio-rs/bytes/blob/master/CHANGELOG.md) - [Commits](https://github.com/tokio-rs/bytes/compare/v1.7.1...v1.7.2) Updates `cc` from 1.1.19 to 1.1.21 - [Release notes](https://github.com/rust-lang/cc-rs/releases) - [Changelog](https://github.com/rust-lang/cc-rs/blob/main/CHANGELOG.md) - [Commits](https://github.com/rust-lang/cc-rs/compare/cc-v1.1.19...cc-v1.1.21) Updates `clap` from 4.5.17 to 4.5.18 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.17...clap_complete-v4.5.18) Updates `clap_builder` from 4.5.17 to 4.5.18 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.17...v4.5.18) Updates `clap_derive` from 4.5.13 to 4.5.18 - [Release notes](https://github.com/clap-rs/clap/releases) - [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md) - [Commits](https://github.com/clap-rs/clap/compare/v4.5.13...v4.5.18) Updates `iana-time-zone` from 0.1.60 to 0.1.61 - [Changelog](https://github.com/strawlab/iana-time-zone/blob/main/CHANGELOG.md) - [Commits](https://github.com/strawlab/iana-time-zone/compare/v0.1.60...v0.1.61) Updates `pkg-config` from 0.3.30 to 0.3.31 - [Changelog](https://github.com/rust-lang/pkg-config-rs/blob/master/CHANGELOG.md) - [Commits](https://github.com/rust-lang/pkg-config-rs/commits) Updates `quick-xml` from 0.36.1 to 0.36.2 - [Release notes](https://github.com/tafia/quick-xml/releases) - [Changelog](https://github.com/tafia/quick-xml/blob/master/Changelog.md) - [Commits](https://github.com/tafia/quick-xml/compare/v0.36.1...v0.36.2) Updates `thiserror` from 1.0.63 to 1.0.64 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.63...1.0.64) Updates `thiserror-impl` from 1.0.63 to 1.0.64 - [Release notes](https://github.com/dtolnay/thiserror/releases) - [Commits](https://github.com/dtolnay/thiserror/compare/1.0.63...1.0.64) Updates `toml_edit` from 0.22.20 to 0.22.21 - [Commits](https://github.com/toml-rs/toml/compare/v0.22.20...v0.22.21) Updates `unicode-normalization` from 0.1.23 to 0.1.24 - [Commits](https://github.com/unicode-rs/unicode-normalization/compare/v0.1.23...v0.1.24) Updates `unicode-width` from 0.1.13 to 0.1.14 - [Commits](https://github.com/unicode-rs/unicode-width/compare/v0.1.13...v0.1.14) Updates `unicode-xid` from 0.2.5 to 0.2.6 - [Changelog](https://github.com/unicode-rs/unicode-xid/blob/master/CHANGELOG.md) - [Commits](https://github.com/unicode-rs/unicode-xid/compare/v0.2.5...v0.2.6) Updates `webpki-roots` from 0.26.5 to 0.26.6 - [Release notes](https://github.com/rustls/webpki-roots/releases) - [Commits](https://github.com/rustls/webpki-roots/compare/v/0.26.5...v/0.26.6) --- updated-dependencies: - dependency-name: webbrowser dependency-type: direct:production update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: bytes dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: cc dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: clap dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: clap_builder dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: clap_derive dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: iana-time-zone dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: pkg-config dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: quick-xml dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: thiserror dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: thiserror-impl dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: toml_edit dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: unicode-normalization dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: unicode-width dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: unicode-xid dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor - dependency-name: webpki-roots dependency-type: indirect update-type: version-update:semver-patch dependency-group: rust-minor ... Signed-off-by: dependabot[bot] <support@github.com> |
||
---|---|---|
.github | ||
app | ||
gradle | ||
src | ||
.editorconfig | ||
.gitignore | ||
build.gradle.kts | ||
Cargo.lock | ||
Cargo.toml | ||
CONTRIBUTING.md | ||
gradle.properties | ||
gradlew | ||
gradlew.bat | ||
LICENSE.md | ||
README.md | ||
settings.gradle.kts |
This is a native Android application for Ruffle.
It is in a very early stage.
Prebuilt APKs
The latest release (here) should have a few .apk
files uploaded as assets.
You can try this app by downloading and installing one of those.
-
For the vast majority of modern phones, tablets, single board computers, and small game consoles, you'll need the
arm64-v8a
version. -
The
armeabi-v7a
version is for older, 32-bit ARM stuff. -
The
x86_64
version is for some rare Intel/Microsoft tablets and/or for Chromebooks, and/or for running on a PC on Android-x86 or in Waydroid or similar. -
The
x86
version is there mostly just for completeness. -
The
universal
version should work on all 4 of the above architectures, but it's huge.
Building from source
Please see CONTRIBUTING.md for details about how to build this repository yourself.
TODO
In no particular order:
- Ability to show the built-in virtual keyboard (softinput), for text input
- Controller/Gamepad input?
- Mapped to key presses and/or virtual mouse pointer
- Own custom keyboard overlay, maybe even per-content configs
- Not an overlay, and not per-content, but custom keyboard is there
- Error/panic handling
- Loading "animation" (spinner)
- Alternative audio backend (OpenSL ES) for Android < 8
- Proper storage backend?
- Resolve design glitches/styling/theming (immersive mode, window insets for holes/notches/corners)
- Publish to various app stores, maybe automatically?
- Bundle demo animations/games
- Add ability to load content from well known online collections? (well maybe not z0r... unless?)
- History, favorites, other flair...?
DONE:
- Clean up ~everything
- Cross-platform build instructions?
- I think gradle should take care of it now
- UI backend (context menu)
- Context menu works
- Logging?
- Navigator backend (fetch, open browser)
- Opening links works at least
- Touch/mouse input
- Keyboard input: only with physical keyboard connected or through
scrcpy
- This was needed: https://github.com/rust-windowing/winit/pull/2226
- Split into a separate repo
- Add ability to Open SWF by entered/pasted URL (or even directly from clipboard)
- No direct clipboard open, but easy to paste into the text field...
- Unglitchify rendering: scale, center and letterbox the content properly
- Ask CPAL/Oboe to open a "media" type output stream instead of a "call" one
- so the right volume slider controls it, and it uses the loud(er)speaker
- -> solved by switching to a direct AAudio (ndk-audio) backend
- Add building this to CI, at least to the release workflow
- This repo has its own CI setup, which builds APKs
- Simplify build process (hook cargo-apk into gradle, drop cargo-apk?)
- ~cargo-apk is fine, but is only used to detect the SDK/NDK environment and run Cargo in it, and not to build an APK.~
- actually solved by switching to
cargo-ndk
and the corresponding Gradle plugin
- Somehow filter files to be picked to .swf
- How well this works depends on the file picker, but it "should work most of the time"
- Unglitchify audio volume (buttons unresponsive?)
- (pending: https://github.com/rust-windowing/winit/pull/1919)
- actually solved by switching to GameActivity instead
- Register Ruffle to open .swf files
- How well this works depends on the application opening the file, but it "should work most of the time"
- Figure out why videos are not playing (could be a seeking issue)
- The video decoder features weren't enabled on
ruffle_core
...
- The video decoder features weren't enabled on
- Sign the APK
- Using a very simple key for now, with just my name in it
- Support for 32-bit ARM phones
- Untested, but should work in theory
- Support for x86(_64) tablets?
- Sorted out
- Consider not building the intermediate .apk just for the shared libraries
- Figured out, no intermediate .apk any more, only native libs built
- Unbreak the regular build on CI
- No longer relevant after the repo split
- Clean up commit history of the branch
- No longer relevant after the repo split