This repository has been archived by the owner on Mar 22, 2022. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 283
Merge the two Android archives into a single one #248
Labels
Milestone
Comments
djee-ms
added a commit
that referenced
this issue
Mar 31, 2020
Add experimental Android ARM64 support via Unity. This changes adds support for compiling MixedReality-WebRTC for Android ARM64 for use inside a Unity project and deploy as a Unity build to an Android device. Support for non-Unity Android apps is out of scope. The Android build produces 2 archives: - libwebrtc.aar: the core Google WebRTC implementation for Android ARM64. - mrwebrtc.aar: the MixedReality-WebRTC API wrapping the Google implementation. Both archives are copied to the `Assets/Plugins/arm64-v8a` folder of the Unity sample project, and deployed to the device. The current change builds over the main WebRTC Google repository instead of WebRTC UWP, therefore represents a temporary diverging in the MixedReality-WebRTC. For this reason, it is strongly recommended to use the `branch-heads/71` Google branch to keep the code as close as possible to the one used for other platforms (Windows Desktop and UWP). Building from Google's `master` branch may work but is not supported. This change is experimental. The `tools/build/libwebrtc` and `tools/build/android` folders provides some utility scripts to help building the Google repository for Android ARM64 and the MixedReality-WebRTC project, respectively (see `tools/README.md`). However this process is involved, and there is currently no precompiled binaries provided to avoid it, nor any CI in place to validte changes. This will come in time. Known limitations and issues: - Video capture on Android device currently does not work. This requires specific interop code to open the device camera from Java, which is not yet available. (Bug: #246) - The two Android archives are huge, much too big for production. Current testing shows a deploy at 326 MB on device, including Unity's project and without any optimization nor stripping (dev build). (Bug: #247) - The build should produce a single archive, not two. (Bug: #248) - Because Android and Windows use different Google repository commits, there is a small chance to get discrepancies in behavior and/or incompatibility bugs between those. No such bug has been observed so far, but please keep this in mind. Android users are encouraged to try this change and provide feedback via GitHub issues, be it on the build process itself, on the missing features not listed above, or anything else related to Android support. The change has been tested manually on Google Pixel 3A and Occulus Quest. Other Android devices should work too, but have not been tested explicitly. A huge thanks to Eric Anderson from AltspaceVR for contributing this change. Bug: #28
djee-ms
added a commit
to djee-ms/MixedReality-WebRTC
that referenced
this issue
May 31, 2020
Add a new Gradle task which merges the librwebrtc.aar and mrwebrtc.aar archives after building. Bug: microsoft#248
djee-ms
added a commit
to djee-ms/MixedReality-WebRTC
that referenced
this issue
May 31, 2020
Add a new Gradle task which merges the librwebrtc.aar and mrwebrtc.aar archives after building. Users should not add libwebrtc.aar to their Unity project anymore, as the new merged mrwebrtc.aar produced by the Android native build from Android Studio is self-contained. Bug: microsoft#248
Merged
djee-ms
added a commit
to djee-ms/MixedReality-WebRTC
that referenced
this issue
Jun 2, 2020
Add a new Gradle task which merges the librwebrtc.aar and mrwebrtc.aar archives after building. Users should not add libwebrtc.aar to their Unity project anymore, as the new merged mrwebrtc.aar produced by the Android native build from Android Studio is self-contained. Bug: microsoft#248
djee-ms
added a commit
that referenced
this issue
Jun 2, 2020
Add a new Gradle task which merges the librwebrtc.aar and mrwebrtc.aar archives after building. Users should not add libwebrtc.aar to their Unity project anymore, as the new merged mrwebrtc.aar produced by the Android native build from Android Studio is self-contained. Bug: #248
Fixed by #390. |
Sign up for free
to subscribe to this conversation on GitHub.
Already have an account?
Sign in.
This is a TODO task once #193 is merged to
master
to merge the 2 archives produced by the Android build (libwebrtc.aar
andmrwebrtc.aar
) into a single archivemrwebrtc.aar
, for convenience purpose and to benefit from static linking and code stripping (see also #247).The text was updated successfully, but these errors were encountered: