NullPointerException in invokeSuspend

808 Views Asked by At

Fatal Exception: java.lang.NullPointerException: at com.app.example.sampleClass.BaseViewModel$getList$1.invokeSuspend(BaseViewModel.java:125) at kotlin.coroutines.jvm.internal.BaseContinuationImpl.resumeWith(BaseContinuationImpl.java:8) at kotlinx.coroutines.DispatchedTask.run(DispatchedTask.java:100) at android.os.Handler.handleCallback(Handler.java:938) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:226) at android.os.Looper.loop(Looper.java:313) at android.app.ActivityThread.main(ActivityThread.java:8751) at java.lang.reflect.Method.invoke(Method.java) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:571) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:1135)

`val viewModelJob = Job()
val uiScope = CoroutineScope(Dispatchers.Main + viewModelJob)

uiScope.launch {
   // using looping in this code
}`
1

There are 1 best solutions below

1
Sarah On

You should get error information as much as possible.

In the error section, the value of something is defined as a type rather than null, which means that it actually appeared to be null.

If you can make that variable type null, do so; otherwise, make sure that it does not enter null somehow. And you have to use try catch to catch errors. If the first option is possible, the first option seems to be better.

I hope you understand. If it doesn't work out, try posting more related codes together.