在 Firebase firestore 中更新数据不是 working/crashing

updating data in Firebase firestore is not working/crashing

I could not be able to update the data in firestore. on clicking the button the data should be updated in firestore. everything is working fine except when I add updatng coading

我的更新数据功能--

私人无效更新数据(){

    phoneNo = getIntent().getStringExtra("_completephoneNo");
    String newpassword = 
     Objects.requireNonNull(confirmPassword.getEditText()).getText().toString().trim();

    final DocumentReference reference = firestore.collection("users").document(phoneNo);
    Map<String, Object> map = new HashMap<>();
    map.put("password", newpassword);
    reference.update(map)
            .addOnSuccessListener(aVoid -> {
                Intent intent = new Intent(getApplicationContext(), loginPage.class);
                Toast.makeText(getApplicationContext(), "sucessfully updated password", 
                Toast.LENGTH_SHORT).show();
                startActivity(intent);
                finish();
            }).addOnFailureListener(e -> {
        Intent intent = new Intent(getApplicationContext(), loginPage.class);
        Toast.makeText(getApplicationContext(), "failed to updat password", 
         Toast.LENGTH_SHORT).show();
        startActivity(intent);
        finish();
    });
}

logcat 显示这个

E/AndroidRuntime:致命异常:main 进程:com.example.venatusgaming,PID:20687 java.lang.IllegalStateException: 无法执行 android:onClick 的方法 在 androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:414) 在 android.view.View.performClick(View.java:7189) 在 com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:992) 在 android.view.View.performClick 内部(View.java:7166) 在 android.view.View.access3500 美元(View.java:819) 在 android.view.View$PerformClick.run(View.java:27688) 在 android.os.Handler.handleCallback(Handler.java:883) 在 android.os.Handler.dispatchMessage(Handler.java:100) 在 android.os.Looper.loop(Looper.java:224) 在 android.app.ActivityThread.main(ActivityThread.java:7592) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950) 原因:java.lang.reflect.InvocationTargetException 在 java.lang.reflect.Method.invoke(本机方法) 在 androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:409) 在 android.view.View.performClick(View.java:7189) 在 com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:992) 在 android.view.View.performClick 内部(View.java:7166) 在 android.view.View.access3500 美元(View.java:819) 在 android.view.View$PerformClick.run(View.java:27688) 在 android.os.Handler.handleCallback(Handler.java:883) 在 android.os.Handler.dispatchMessage(Handler.java:100) 在 android.os.Looper.loop(Looper.java:224) 在 android.app.ActivityThread.main(ActivityThread.java:7592) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950) Caused by: java.lang.NullPointerException: 提供的文档路径不能为空。 在 com.google.firebase.firestore.util.Preconditions.checkNotNull(Preconditions.java:147) 在 com.google.firebase.firestore.CollectionReference.document(CollectionReference.java:103) 在 com.example.venatusgaming.forgotPass.setnewPassword.updatedata(setnewPassword.java:108) 在 com.example.venatusgaming.forgotPass.setnewPassword.setNewPasswordBtn(setnewPassword.java:94) 在 java.lang.reflect.Method.invoke(本机方法) 在 androidx.appcompat.app.AppCompatViewInflater$DeclaredOnClickListener.onClick(AppCompatViewInflater.java:409) 在 android.view.View.performClick(View.java:7189) 在 com.google.android.material.button.MaterialButton.performClick(MaterialButton.java:992) 在 android.view.View.performClick 内部(View.java:7166) 在 android.view.View.access3500 美元(View.java:819) 在 android.view.View$PerformClick.run(View.java:27688) 在 android.os.Handler.handleCallback(Handler.java:883) 在 android.os.Handler.dispatchMessage(Handler.java:100) 在 android.os.Looper.loop(Looper.java:224) 在 android.app.ActivityThread.main(ActivityThread.java:7592) 在 java.lang.reflect.Method.invoke(本机方法) 在 com.android.internal.os.RuntimeInit$MethodAndArgsCaller.run(RuntimeInit.java:539) 在 com.android.internal.os.ZygoteInit.main(ZygoteInit.java:950) I/Process:发送信号。 PID:20687 SIG:9

well I found the answer and did this to solve it

map.put("密码", confirmPassword.getEditText().getText().toString().trim());