rive-app / rive-app/rive-unity

[Feature Request] HarmonyOS NEXT platform support for Unity native plugin (librive.so)

Open
#165 1 comment 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
C#
Stars
205
Forks
22
PR merge metrics
No merged PRs in 30d

Description

Submission checklist
  • I have confirmed the issue is present in the latest version of the Rive Unity package
  • I have searched the documentation and forums and could not find an answer
  • I have searched existing issues and this is not a duplicate
Description

Feature Request: HarmonyOS NEXT Platform Support

Background

We are building an educational interactive game app using Unity 2022 + ILRuntime, packaged as an SDK and embedded into native Android, iOS, and HarmonyOS NEXT apps.

We are integrating app.rive.rive-unity (v0.4.2) and it works great on Android and iOS. However, we need to support HarmonyOS NEXT (Huawei's new OS — fully independent OS stack, no AOSP compatibility layer).

Problem

The rive-unity package ships pre-compiled native libraries for Android, iOS, Windows, macOS, WebGL, etc., but does not include a native library for HarmonyOS NEXT.

We investigated self-compiling but hit a blocker:

  • rive-runtime (public): core C++ runtime, but missing Unity bridge symbols like setUnityLog, RiveRegisterRenderingPlugin, UnityPluginLoad, etc.
  • rive-unity (public): pure C# package with pre-built binaries, no native build scripts
  • The Unity native plugin bridge source appears to be in a private repository (runtime_unity/native_plugin), referenced in rive-runtime/dependencies/gen_yoga_renames/gen_renames.sh:
Previous working version

No response

Reproduction steps / code

No response

Upload your reproduction files / stack trace

No response

Source .riv / .rev file

No response

Screenshots / video

No response

Unity Editor log file

No response

Rive Unity package version

0.4.2

Unity version

2022.3.2t16

Target platform

Other

Editor OS & version

tuanjie 2022.3.2t16

Additional context

Without the plugin bridge source, we cannot compile a HarmonyOS-compatible librive.so.

HarmonyOS NEXT Technical Context
Item Details
OS HarmonyOS NEXT — fully independent, no AOSP compatibility
NDK OHOS NDK (Clang/LLVM)
Target ABI aarch64-linux-ohos
C library musl libc (Android .so uses Bionic — cannot be reused)
Graphics API OpenGL ES 3.0 ✅ Vulkan 1.0+ ✅
Unity version Unity 2022 LTS
Request
  1. Official HarmonyOS NEXT support — add librive.so compiled for aarch64-linux-ohos (musl libc) to the Unity package's Libraries/ directory.
  2. Or — grant access to the runtime_unity/native_plugin private repo so we can compile and maintain the HarmonyOS build ourselves.
  3. Or — provide public build instructions/script to compile the Unity native plugin for custom platforms.
Why This Matters

HarmonyOS NEXT is rapidly growing in China's education market. Enabling Rive on HarmonyOS NEXT would unlock a significant user base for Rive-powered interactive content. We are happy to contribute the HarmonyOS build config back to the community once we have the necessary source access.

References

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reviewing rive-runtime/dependencies/gen_yoga_renames/gen_renames.sh and the rive-unity package's Libraries/ contents, then determine whether the referenced runtime_unity/native_plugin source or build instructions are available. Done would require an officially supported HarmonyOS NEXT librive.so for aarch64-linux-ohos, or public source and instructions that enable maintainers to build it.

Written by the indexing model from the issue text.

Assessment

Tech stack
cpp, csharp, unity
Domain
build-system, mobile-dev, operating-systems
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Quiet
Clarity
Needs clarification
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.