I'm stuck. It's likely because I'm not an Android developer by trade, but I have been unable to figure out why things appear to build, but the Android app is unable to find certain GStreamer plugins.
For me, I'm deploying the app to a Google Pixel 3a, Android 10.0, API 29. I do a fresh pull from the current master of this: https://github.com/centricular/gstwebrtc-demos. I've created for myself a build environment in a docker container that seems to (at least, I thought) work well for generating APKs from this project. When I interactively hop onto the container and do a "gradle build", the project builds and I get APKs. But when I deploy the resultant APK to my device and run it, I get an error saying "Failed to parse launch: no element "ahcsrc"". Most instances of this I've seen online have to do with a poorly written Android.mk file in the src/main/jni directory. But I don't know if that's the case here since it seems to check out.
I suppose the only potential issue is that I'm building this on Windows, but I'm doing so under a WSL2-based docker container.
To reproduce what I'm doing,
1) do a git pull on the above repository. \
2) build an image using the Dockerfile at the end of this email.
3) Start a container with it. I do the following:
docker run -v d:/repos/gstwebrtc-demos/android:/code -it --name gstreamer_builder brush/gstreamer_android /bin/bash
4) I then "cd" to /code once I'm in the container and type "gradle build".
The APKs that are built exhibit this issue.
Here is the Dockerfile:
# Install Build Essentials
# Install OpenJDK-8
# Fix certificate issues
RUN apt-get update && \
apt-get install unzip && \
apt-get install build-essential -y && \
apt-get install wget -y && \
apt-get install file -y && \
apt-get install apt-utils -y && \
apt-get install vim -y && \
apt-get install pkg-config -y && \
apt-get install curl -y && \
apt-get install -y openjdk-8-jdk && \
apt-get install -y ant && \
apt-get install ca-certificates-java && \
apt-get install git -y && \
apt-get clean && \
# Setup JAVA_HOME -- useful for docker commandline