Platform: Android #573
Labels
No labels
Context: Async
Context: Bug
Context: CI
Context: Dependencies
Context: Documentation
Context: Enhancement
Context: Example
Context: Macro
Context: Runtime
Difficulty: Easy
Difficulty: Hard
Difficulty: Medium
Platform: Android
Platform: Linux
Platform: Web
Platform: Windows
Platform: iOS
Platform: macOS
Type: Discussion
Type: Evaluation
Type: Tracker
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference
SakulFlee/Orbital#573
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Android is only technically supported. Most tests and examples don't work right now.
There are multiple problems in need of fixing:
1. Proper Android build tools
Unfortunately, tools like cargo-apk or cargo-xbuild are outdated / not supported anymore, and there are no proper replacements. Thus, we needed to find a way of compiling to Android without such tools. While this works, this isn't conclusive at all and it is a rather complicated process (... at least first time setup is a mess).
We don't necessarily need our own tool, but some easy to run command chain like Makefile or Just.
This also should take care of installing dependencies as-needed and possibly making the Android Studio project.
2. CI / CD
Similar to 1., we don't have any proper CI / CD setup for Android.
We'd need a way of easily replicating given configurations of Android versions X source code revisions.
Ideally, we'd build full APK files and upload them as Artifacts.
(Optional, not sure if needed ... probably useless for now until we have bigger examples: Push to something like F-Droid!)
3. Asset management
Assets are done much differently on mobile platforms like Android.
Most, if not all, of the assets are included into the APK file and have to be read somehow.
The Android SDK commonly provides functions for easily extracting assets from the currently executed APK file, but how do we do that in Rust?
We'll have to check if Cargo-NDK, Android-Activity or similar crates expose functionality like this.
If not, we'll have to use JNI bindings to the actual Android SDK functions.
This also applies for writing files like save games!
There needs to be a solution for saving files locally.