Skip to content

pedantic push back on comment that "No C++ code" is a key android-activity differentiator #12

@rib

Description

@rib

:) hey, I know it's pedantic and I shouldn't care, but I notice that the README for this project highlights that being "No C++ code" is a USP for this project compared to android-activity which feels a tad misleading to me.

Since I did the work to port all the C glue code for NativeActivity to 100% Rust a long time ago it seems misleading to imply android-activity isn't written in Rust.

If someone uses the native-activity backend then that's 100% Rust to the fullest extent possible. With the NativeActivity backend you don't even need to write a line of Java or Kotlin code either. It's probably the only way in which someone can run a 100% Rust Android application since NativeActivity is shipped as part of the android SDK.

The C++ code that I guess this comment is referring to is a vendored copy of GameActivity; which is an upstream Google project that's only built with the "game-activity" feature.

So although android-activity supports running with the GameActivity library, it's like using any Android NDK API that's also a bunch of Android C++ code written by Google.

This project also depends on the ndk crate that will also directly call native utility code written by Google in C++ so it doesn't seem like either project can pretend that they don't depend on native abstractions that may not be written in Rust.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions