bobowg / BaiseComposeLearn

android compose 基本参考用法与示例
4 stars 0 forks source link

Cannot create an instance of class com.example.baisecomposelearn.weather.viewmodel.WeatherViewModel #14

Open bobowg opened 1 year ago

bobowg commented 1 year ago

FATAL EXCEPTION: main Process: com.example.baisecomposelearn, PID: 5064 java.lang.RuntimeException: Cannot create an instance of class com.example.baisecomposelearn.weather.viewmodel.WeatherViewModel at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.kt:204) at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:322) at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:304) at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:278) at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.kt:128) at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:187) at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:153) at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:53) at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:35) at com.example.baisecomposelearn.WeatherActivity.getViewModel(WeatherActivity.kt:14) at com.example.baisecomposelearn.WeatherActivity.onCreate$lambda-0(WeatherActivity.kt:21) at com.example.baisecomposelearn.WeatherActivity.$r8$lambda$utVZX5_1lrYmQq8BISjHL2GfCAk(Unknown Source:0) at com.example.baisecomposelearn.WeatherActivity$$ExternalSyntheticLambda0.onActivityResult(Unknown Source:4) at androidx.activity.result.ActivityResultRegistry.dispatchResult(ActivityResultRegistry.java:406) at androidx.activity.ComponentActivity$2$1.run(ComponentActivity.java:188) at android.os.Handler.handleCallback(Handler.java:942) at android.os.Handler.dispatchMessage(Handler.java:99) at android.os.Looper.loopOnce(Looper.java:201) at android.os.Looper.loop(Looper.java:288) at android.app.ActivityThread.main(ActivityThread.java:7898) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936) Caused by: java.lang.InstantiationException: java.lang.Class has no zero argument constructor at java.lang.Class.newInstance(Native Method) at androidx.lifecycle.ViewModelProvider$NewInstanceFactory.create(ViewModelProvider.kt:202) at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:322)  at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:304)  at androidx.lifecycle.ViewModelProvider$AndroidViewModelFactory.create(ViewModelProvider.kt:278)  at androidx.lifecycle.SavedStateViewModelFactory.create(SavedStateViewModelFactory.kt:128)  at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:187)  at androidx.lifecycle.ViewModelProvider.get(ViewModelProvider.kt:153)  at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:53)  at androidx.lifecycle.ViewModelLazy.getValue(ViewModelLazy.kt:35)  at com.example.baisecomposelearn.WeatherActivity.getViewModel(WeatherActivity.kt:14)  at com.example.baisecomposelearn.WeatherActivity.onCreate$lambda-0(WeatherActivity.kt:21)  at com.example.baisecomposelearn.WeatherActivity.$r8$lambda$utVZX5_1lrYmQq8BISjHL2GfCAk(Unknown Source:0)  at com.example.baisecomposelearn.WeatherActivity$$ExternalSyntheticLambda0.onActivityResult(Unknown Source:4)  at androidx.activity.result.ActivityResultRegistry.dispatchResult(ActivityResultRegistry.java:406)  at androidx.activity.ComponentActivity$2$1.run(ComponentActivity.java:188)  at android.os.Handler.handleCallback(Handler.java:942)  at android.os.Handler.dispatchMessage(Handler.java:99)  at android.os.Looper.loopOnce(Looper.java:201)  at android.os.Looper.loop(Looper.java:288)  at android.app.ActivityThread.main(ActivityThread.java:7898)  at java.lang.reflect.Method.invoke(Native Method)  at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:548)  at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:936) 

bobowg commented 1 year ago

https://debuganswer.com/tutorials/viewmodel-has-no-zero-argument-constructor-hilt-java 参考此链接。