3
respostas

Não consegui utilizar o viewModel

O app fecha sozinho após a splash sreen e apresenta o seguinte erro: java.lang.RuntimeException: Cannot create an instance of class viewModel.LoginViewModel

3 respostas

Oi Mateus, tudo bem ?

Cara consegue mostrar pra gente seu código do ViewModel e como está tentando criar ele ?

viewModel:

package viewModel

import androidx.lifecycle.ViewModel
import repository.LoginRepository

class LoginViewModel(private val repository: LoginRepository): ViewModel() {
    fun login() {
        repository.login()
    }

    fun loggedState(): Boolean {
        return repository.loggedState()
    }
}

repository:

package repository

import android.content.SharedPreferences
import androidx.core.content.edit

const val IS_LOGGED = "LOGGED"

class LoginRepository(private val preferences: SharedPreferences) {
    fun login() {
        preferences.edit {
            putBoolean(IS_LOGGED, true)
            commit()
        }
    }

    fun loggedState(): Boolean {
        return preferences.getBoolean(IS_LOGGED, false)
    }
}

Consegue mandar o código de onde voce esta fazendo uso desse view model ?

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software