Ulysses
Ulysses

Reputation: 27

java.lang.NoClassDefFoundError while using android.location.GnssAntennaInfo

I am trying to run GnssAntennaInfo. Everything runs fine with on the emulator. When testing on real devices (sdk 27), the app crashes with the following error:

2020-11-23 10:57:59.470 1203-1203/com.example.axpapp E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.example.axpapp, PID: 1203
    java.lang.NoClassDefFoundError: Failed resolution of: Landroid/location/GnssAntennaInfo;
        at com.example.axpapp.GNSSTests.getAntennaInfo(GNSSTests.kt:8)
        at com.example.axpapp.GNSSTests$Companion.printAntennaInfo(GNSSTests.kt:15)
        at com.example.axpapp.MainActivity.onCreate(MainActivity.kt:11)
        at android.app.Activity.performCreate(Activity.java:7258)
        at android.app.Activity.performCreate(Activity.java:7249)
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1222)
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927)
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3059)
        at android.app.ActivityThread.-wrap11(Unknown Source:0)
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1724)
        at android.os.Handler.dispatchMessage(Handler.java:106)
        at android.os.Looper.loop(Looper.java:164)
        at android.app.ActivityThread.main(ActivityThread.java:7000)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408)
     Caused by: java.lang.ClassNotFoundException: Didn't find class "android.location.GnssAntennaInfo" on path: DexPathList[[zip file "/data/app/com.example.axpapp-q_DcCIhOmXK9bQRnVIC0NA==/base.apk"],nativeLibraryDirectories=[/data/app/com.example.axpapp-q_DcCIhOmXK9bQRnVIC0NA==/lib/arm, /system/lib, /system/vendor/lib]]
        at dalvik.system.BaseDexClassLoader.findClass(BaseDexClassLoader.java:125)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:379)
        at java.lang.ClassLoader.loadClass(ClassLoader.java:312)
        at com.example.axpapp.GNSSTests.getAntennaInfo(GNSSTests.kt:8) 
        at com.example.axpapp.GNSSTests$Companion.printAntennaInfo(GNSSTests.kt:15) 
        at com.example.axpapp.MainActivity.onCreate(MainActivity.kt:11) 
        at android.app.Activity.performCreate(Activity.java:7258) 
        at android.app.Activity.performCreate(Activity.java:7249) 
        at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1222) 
        at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2927) 
        at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:3059) 
        at android.app.ActivityThread.-wrap11(Unknown Source:0) 
        at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1724) 
        at android.os.Handler.dispatchMessage(Handler.java:106) 
        at android.os.Looper.loop(Looper.java:164) 
        at android.app.ActivityThread.main(ActivityThread.java:7000) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:441) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1408) 

GNSSTest.kt as follow:

package com.example.axpapp

import android.location.GnssAntennaInfo

class GNSSTests {

    fun getAntennaInfo(): String {
        val antenna = GnssAntennaInfo.CREATOR

        return antenna.toString()
    }

    companion object {
        fun printAntennaInfo(){
            println(GNSSTests().getAntennaInfo())
        }
    }
}

What is the reason for this crash? How can it be fixed?

Upvotes: 0

Views: 188

Answers (2)

Bogdan Lonchuk
Bogdan Lonchuk

Reputation: 209

Also, you can try to do next steps:

  1. Clean project
  2. Invalidate and restart

It worked too for me.

Upvotes: 0

Bogdan Lonchuk
Bogdan Lonchuk

Reputation: 209

Edit the build path in this order:

Make sure the /gen is before /src

enter image description here

Upvotes: 0

Related Questions