allora, non capisco bene perchè mi da errore.

allora:
codice:
public void doLogin(View view) {
    rfidTxt = rfid.getText().toString().trim();
    usernameTxt = username.getText().toString().trim();
    passwordTxt = password.getText().toString().trim();

    if (TextUtils.isEmpty(rfidTxt) || TextUtils.isEmpty(usernameTxt) || TextUtils.isEmpty(passwordTxt)) {
        GenericToast.viewToast(getApplicationContext(), "Tutti i campi sono obbligatori", Toast.LENGTH_LONG, Gravity.CENTER);
    } else {
        try (BindMyDataSource dataSource = BindMyDataSource.open()) {
            Users u = dataSource.usersDao.login(usernameTxt, rfidTxt);
            if (u == null) {
                GenericToast.viewToast(getApplicationContext(), "Username, password o rfid errati!", Toast.LENGTH_LONG, Gravity.CENTER);
            } else {
                Log.e("USER", u.hashedPassword);
                if (BCrypt.checkpw(passwordTxt, u.hashedPassword)) {
                    Log.e("USER", "OK");
                } else {
                    GenericToast.viewToast(getApplicationContext(), "Username, password o rfid errati!", Toast.LENGTH_LONG, Gravity.CENTER);
                }
            }
        }
    }
}
in pratica arrivo al Log.e e mi da il valore di u.hashedPassword, però poi va in errore:
codice:
2020-02-03 11:03:18.902 26227-26227/com.easytrack.app E/USER: $2y$12$OPE8ACrZuoe5okYxlnCI2eD11F5n8F1xPmf26n3g9OBqFqvCIlHMm
2020-02-03 11:03:18.907 26227-26227/com.easytrack.app E/AndroidRuntime: FATAL EXCEPTION: main
    Process: com.easytrack.app, PID: 26227
    java.lang.IllegalStateException: Could not execute method for android:onClick
        at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:402)
        at android.view.View.performClick(View.java:6669)
        at android.view.View.performClickInternal(View.java:6638)
        at android.view.View.access$3100(View.java:789)
        at android.view.View$PerformClick.run(View.java:26145)
        at android.os.Handler.handleCallback(Handler.java:873)
        at android.os.Handler.dispatchMessage(Handler.java:99)
        at android.os.Looper.loop(Looper.java:193)
        at android.app.ActivityThread.main(ActivityThread.java:6898)
        at java.lang.reflect.Method.invoke(Native Method)
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537)
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858)
     Caused by: java.lang.reflect.InvocationTargetException
        at java.lang.reflect.Method.invoke(Native Method)
        at androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:397)
        at android.view.View.performClick(View.java:6669) 
        at android.view.View.performClickInternal(View.java:6638) 
        at android.view.View.access$3100(View.java:789) 
        at android.view.View$PerformClick.run(View.java:26145) 
        at android.os.Handler.handleCallback(Handler.java:873) 
        at android.os.Handler.dispatchMessage(Handler.java:99) 
        at android.os.Looper.loop(Looper.java:193) 
        at android.app.ActivityThread.main(ActivityThread.java:6898) 
        at java.lang.reflect.Method.invoke(Native Method) 
        at com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:537) 
        at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:858) 
     Caused by: java.lang.IllegalArgumentException: Invalid salt revision
        at org.mindrot.jbcrypt.BCrypt.hashpw(BCrypt.java:665)
        at org.mindrot.jbcrypt.BCrypt.checkpw(BCrypt.java:764)
        at com.easytrack.app.LoginActivity.doLogin(LoginActivity.java:93)