google / google/ExoPlayer

Building a exoplayer library for Unity and having issues applying documentation

Open
#11,217 7 comments 0 reactions 1 assignee Claimed by @marcbaechinger View on GitHub
question
Dominant language
Java
Stars
21.9k
Forks
6k
PR merge metrics
No merged PRs in 30d

Description

Hello exoplayer community. I am coming from a Unity and c# background and am completely new to Android Studio. I am building a custom exoplayer library and am using available exoplayer resources to do so. Unfortunately they don't apply to building plugins for external use and a lot of the related community discussions are outdated. Here is my code for initializing the player in Java.

public static void initializePlayer(Activity unityPlayer) {
ExoPlayer player = new ExoPlayer.Builder(unityPlayer).build();
}

Here is the Unity side.

AndroidJNIHelper.debug = true;
var playerClass = new AndroidJavaClass("com.unity3d.player.UnityPlayer");
AndroidJavaObject activity = playerClass.GetStatic("currentActivity");
Debug.Log("Got activity");
var plugin = new AndroidJavaClass("com.bmad.exolib.Exo");
Debug.Log("Found Plugin");
plugin.CallStatic("test");
Debug.Log("Found Test");
plugin.CallStatic("initializePlayer");
Debug.Log("Found Function");

Unfortunately I hit an error when trying to use the unityPlayer as the context for building the player. Error Unity AndroidJavaException: java.lang.NoClassDefFoundError: Failed resolution of: Landroidx/media3/exoplayer/ExoPlayer$Builder;

Any guidance would be appreciated.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.