繁体   English   中英

AndroidJavaException:java.lang.ClassNotFoundException:找不到类“ com.unity3d.player.ReflectionHelper”

[英]AndroidJavaException: java.lang.ClassNotFoundException: Didn't find class “com.unity3d.player.ReflectionHelper”

我试图在OnAudioFilterRead函数体中调用一些Java方法。

这是代码段。

void OnAudioFilterRead(float[] data, int channels)
{
    AndroidJNI.AttachCurrentThread();
    if (ok)
    {
        if (obj == null)
        {
            obj = new AndroidJavaObject("com.xx.aop.media.av.GPUFrameCapturer");
            Debug.Log(obj.Call<bool>("isRecording"));
        }
    }
}

当我在Android平台上构建apk时。

总是遇到此错误。

06-13 15:20:51.981 20255-20388 / com.MeiTu.XRay E / Unity:

AndroidJavaException:java.lang.ClassNotFoundException:在路径:DexPathList [[directory“。”],nativeLibraryDirectories = [/ system / lib,/ vendor / lib,/ system /下,找不到类“ com.unity3d.player.ReflectionHelper” lib,/ vendor / lib]]

java.lang.ClassNotFoundException:在路径:DexPathList [[directory“。”],nativeLibraryDirectories = [/ system / lib,/ vendor / lib,/ system / lib,上找不到类“ com.unity3d.player.ReflectionHelper” /供应商/ LIB]]

OnAudioFilterRead函数在另一个Thread被调用,因此您似乎使用了AndroidJNI.AttachCurrentThread()使得可以从另一个线程使用AndroidJavaObject 您还需要分离它。 OnAudioFilterRead函数的末尾调用AndroidJNI.DetachCurrentThread()

void OnAudioFilterRead(float[] data, int channels)
{
    AndroidJNI.AttachCurrentThread();
    if (ok)
    {
        if (obj == null)
        {
            obj = new AndroidJavaObject("com.xx.aop.media.av.GPUFrameCapturer");
            Debug.Log(obj.Call<bool>("isRecording"));
        }
    }
    AndroidJNI.DetachCurrentThread()
}

如果这不起作用,请在OnAudioFilterRead函数(例如StartAwake函数)之外初始化AndroidJavaObject ,然后在上述OnAudioFilterRead函数中使用它。

AndroidJavaObject obj;

void Start()
{
    obj = new AndroidJavaObject("com.xx.aop.media.av.GPUFrameCapturer");
}

void OnAudioFilterRead(float[] data, int channels)
{
    AndroidJNI.AttachCurrentThread();
    if (ok)
    {
        if (obj == null)
        {
            Debug.Log(obj.Call<bool>("isRecording"));
        }
    }
    AndroidJNI.DetachCurrentThread()
}

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM