我正在努力集成arcore和mediapipe应用程序,但是当我尝试将arcore集成到mediapipe源代码中时,会话对象出现问题,如下所示。

尝试创建ARCore的Session对象时遇到以下问题

    E/ARCore-AuthenticationManager: Exception during AuthenticationManager construction:
    com.google.android.gms.common.GoogleApiAvailability
    java.lang.ClassNotFoundException: com.google.android.gms.common.GoogleApiAvailability
    at java.lang.Class.classForName(Native Method)
    at java.lang.Class.forName(Class.java:453)
    at com.google.ar.persistence.AuthenticationManager.a(PG:72)
    at com.google.ar.persistence.AuthenticationManager.(PG:4)
    at com.google.ar.persistence.AuthenticationManagerFactory.create(PG:3)
    at com.google.ar.core.Session.nativeCreateSessionAndWrapper(Native Method)
    at com.google.ar.core.Session.(Session.java:5)
    at com.example.handtrackinggradle.MainActivity.startCamera(MainActivity.java:324)
    at com.example.handtrackinggradle.MainActivity.onResume(MainActivity.java:171)
    at android.app.Instrumentation.callActivityOnResume(Instrumentation.java:1416)
    at android.app.Activity.performResume(Activity.java:7609)
    at android.app.ActivityThread.performResumeActivity(ActivityThread.java:4013)
    at android.app.ActivityThread.handleResumeActivity(ActivityThread.java:4053)
    at android.app.servertransaction.ResumeActivityItem.execute(ResumeActivityItem.java:51)
    at android.app.servertransaction.TransactionExecutor.executeLifecycleState
    (TransactionExecutor.java: 145)
    at android.app.servertransaction.TransactionExecutor.execute(TransactionExecutor.java:70)
    at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1955)
    at android.os.Handler.dispatchMessage(Handler.java:106)
    at android.os.Looper.loop(Looper.java:214)
    at android.app.ActivityThread.main(ActivityThread.java:7076)
    at java.lang.reflect.Method.invoke(Native Method)
    at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:493)
    at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:965)
    Caused by: java.lang.ClassNotFoundException: Didn't find class
    "com.google.android.gms.common.GoogleApiAvailability" on path: DexPathList[[zip file
    "/data/app/com.example.handtrackinggradle-
    p0OQ0rOqD7I0DpvWKOl4_A==/base.apk"],nativeLibraryDirectories=
    [/data/app/com.example.handtrackinggradle-p0OQ0rOqD7I0DpvWKOl4_A==/lib/arm64,
    /data/app/com.example.handtrackinggradle-p0OQ0rOqD7I0DpvWKOl4_A==/base.apk!/lib/arm64-
    v8a, /system/lib64]]
    at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:1

最佳答案

我通过添加以下依赖关系解决了此问题。此问题是由于AR Session依赖于以下依赖关系引起的

com.google.android.gms:play-services-auth:17。

关于android - java.lang.ClassNotFoundException:com.google.android.gms.common.GoogleApiAvailability在尝试将arcore与mediapipe集成时发生,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/59435421/

10-10 08:53