Я использую firestore.DocumentSnapshot.getString для извлечения пользовательских данных, и они действительно работают, и я получаю пользовательские данные на интерфейсе, проблема заключается в том, что всякий раз, когда я пытаюсь подписать, происходит, когда sh происходит, когда "задействует виртуальный метод на нуле ссылка на объект "
, пожалуйста, помогите, ребята ...?
@Nullable
public View onCreateView(@NonNull LayoutInflater inflater,
@Nullable ViewGroup container,
@Nullable Bundle savedInstanceState) {
View view = inflater.inflate(R.layout.fragment_sttings, container, false);
firestore = FirebaseFirestore.getInstance();
emailedit = view.findViewById(R.id.emailedit);
phoneedit = view.findViewById(R.id.phoneedit);
useredit = view.findViewById(R.id.useredit);
chngpass = view.findViewById(R.id.chngpass);
signin = view.findViewById(R.id.signin);
signin.setVisibility(View.INVISIBLE);
signout = view.findViewById(R.id.signout);
firebaseAuth = FirebaseAuth.getInstance();
fStore = FirebaseFirestore.getInstance();
FirebaseFirestoreSettings settings = new FirebaseFirestoreSettings.Builder()
.setTimestampsInSnapshotsEnabled(true)
.build();
fStore.setFirestoreSettings(settings);
if (firebaseAuth.getCurrentUser() != null) {
userId = firebaseAuth.getCurrentUser().getUid();
DocumentReference documentReference = fStore.collection("users").document(userId);
documentReference.addSnapshotListener(getActivity(), new EventListener<DocumentSnapshot>() {
@Override
public void onEvent(@Nullable DocumentSnapshot documentSnapshot,
@Nullable FirebaseFirestoreException e) {
phoneedit.setText(documentSnapshot.getString("Phone Number"));
useredit.setText(documentSnapshot.getString("Username"));
emailedit.setText(documentSnapshot.getString("Email Address"));
}
});
}
signout.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
FirebaseAuth.getInstance().signOut();
Intent signoutint = new Intent(getActivity(), MainActivity.class);
startActivity(signoutint);
getActivity().finish();
}
});
return view;
}
}
начало Cra * sh:
2020-04-15 08:11:47.051 11045-11045/com.example.sendthro E/AndroidRuntime: FATAL EXCEPTION: main
Process: com.example.sendthro, PID: 11045
java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.String com.google.firebase.firestore.DocumentSnapshot.getString(java.lang.String)' on a null object reference
at com.example.sendthro.settings$1.onEvent(settings.java:70)
at com.example.sendthro.settings$1.onEvent(settings.java:65)