아래 그림과 같이 Firebase Cloud Firestore 데이터 구조가 있고 "A1"에 액세스하려고합니다.
실제 답변과 후속 투표 수를 포함하는 각 "답변"문서에 액세스하려고합니다. 그런 다음이 답변 정보를 사용하여 라디오 버튼을 채 웁니다.
현재 x9ojsg4tzLgx2SRTnchp에 DocumentSnapshot 참조가 있습니다. 그 참고 문헌에서 아래에 표시된 것처럼 답변 모음을 가져옵니다.
public void addRadioButtonsWithFirebaseAnswers(int numberOfAnswers, DocumentSnapshot documentSnapshot) {
mPollAnswerArrayList = new ArrayList<RadioButton>();
for (int i = (numberOfAnswers - 1); i >= 0; i--) {
Log.e("Number of Answers", "The number of answers is " + numberOfAnswers);
final int indexCreated = ((numberOfAnswers - 1) - i);
mPollAnswerArrayList.add((indexCreated), new RadioButton((getActivity().getApplicationContext())));
mPollAnswerArrayList.get(indexCreated).setId(indexCreated);
String firebaseChild = String.valueOf(indexCreated + 1);
documentSnapshot.getReference().collection(ANSWERS_LABEL).document(firebaseChild).get().addOnSuccessListener(new OnSuccessListener<DocumentSnapshot>() {
@Override
public void onSuccess(DocumentSnapshot documentSnapshot) {
Answer answer = documentSnapshot.toObject(Answer.class);
mPollAnswerArrayList.get(indexCreated).setText(answer.getAnswer());
Log.v("TAG FOR DOCREF", answer.getAnswer());
}
});
그리고 여기 내 답변 모델이 있습니다 :
@IgnoreExtraProperties
public class Answer {
private String answer;
private int vote_count;
public Answer(String answer, int vote_count){
this.answer = answer;
this.vote_count = vote_count;
}
public String getAnswer() {
return answer;
}
public int getVote_count() {
return vote_count;
}
}
널 포인터를 받고 있습니다 :
와이즈 비즈java.lang.NullPointerException: Attempt to invoke virtual method 'java.lang.Object java.lang.reflect.Constructor.newInstance(java.lang.Object[])' on a null object reference at com.google.android.gms.internal.zzevb$zza.zza(Unknown Source) at com.google.android.gms.internal.zzevb.zza(Unknown Source) at com.google.android.gms.internal.zzevb.zza(Unknown Source) at com.google.firebase.firestore.DocumentSnapshot.toObject(Unknown Source) at com.troychuinard.fanpolls.Fragment.PollFragment$6.onSuccess(PollFragment.java:534) at com.troychuinard.fanpolls.Fragment.PollFragment$6.onSuccess(PollFragment.java:531) at com.google.android.gms.tasks.zzj.run(Unknown Source) at android.os.Handler.handleCallback(Handler.java:739) at android.os.Handler.dispatchMessage(Handler.java:95) at android.os.Looper.loop(Looper.java:148) at android.app.ActivityThread.main(ActivityThread.java:5527) at java.lang.reflect.Method.invoke(Native Method) at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:730) at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:620)
- 답변 # 1
관련 자료
- javascript - 변수의 사용자 지정 속성 값에 액세스하려면 어떻게해야합니까?
- python - 중첩 된 사전 액세스 및 값 반환
- javascript - 클라우드 기능을 사용하여 Firestore에서 문서 삭제
- android - viewbinding - ''에 액세스 할 수 없음 : 'activitymainbinding'에서 비공개입니다
- javascript - Firestore 타임 스탬프 및 Google Cloud 함수 문제 (datetoDate ()는 함수가 아님)
- firebase - flutter firestore TextFormField 고정 데이터 값
- bash - Gitlab API를 통해 프로젝트 변수 값에 액세스
- reactjs - Azure B2C를 사용하여 보호 된 NET Core API에 액세스하는 React 앱에서 액세스 토큰을 가져올 수 없습니다
- 파이썬에서 행렬 테이블 값에 액세스하는 방법
- firebase - 파이썬 클라우드 함수 및 app_initialization에서 firestore 호출
- python - openpyxlload_workbook을 사용하여 파일에 액세스하려고 할 때 "typeerror - value must be a sequence"
- c# - Unity에서 "컴포지트에서 Vector2 유형의 값을 읽을 수 없음"오류를 어떻게 해결할 수 있습니까?
- c# - Unity에서 "컴포지트에서 Vector2 유형의 값을 읽을 수 없음"오류를 어떻게 해결할 수 있습니까?
- amazon web services - terraform - 문자열 템플릿에 지정된 값을 포함 할 수 없습니다 문자열이 필요합니다
- javascript - Cloud Functions를 사용하여 Firestore에서 문서 삭제
- python - 장고 템플릿의 관련 테이블 필드 값에 액세스
- javascript - Promise for HTML 요소의 액세스 값
- java - Android의 Cloud Firestore에서 커스텀 객체 목록을 검색하는 방법
- javascript - 클라우드 기능을 사용하여 Firestore에서 문서를 삭제하는 방법
- javascript - 첫 번째 렌더링에서 null 오류의 속성 '값'을 읽을 수 없습니다
- java : Firebase에서 텍스트 양식을 얻는 방법
- java : 사용자가 로그아웃할 때 애플리케이션 충돌
- java : 색상을 무시하는 Firebase 푸시 알림 아이콘
- java : Firebase 실시간 데이터베이스(android studio)를 읽거나 쓸 수 없습니다.
- java : 고유 키를 가져오지 않고 Firebase에서 값을 검색하는 방법
- java : 화면이 잠겨 있거나 꺼져 있을 때 카메라 셔터 onkeyevent가 있는 Android 앱
- java : android studio에서 SQLite 데이터가 지속되지 않음
- java : Webview에서 사용자 이름 및 비밀번호와 같은 로그인 자격 증명을 저장하는 방법
- java : viewModelFactory 클래스를 생성하는 동안 오류가 발생했습니다. 코틀린-안드로이드
- java : 아래 안드로이드 네트워크 속성을 얻는 방법
응답에 공개 인수없는 생성자를 추가하십시오. 모든 자바 빈즈 객체는 하나의 객체를 가져야 만 리플렉션을 사용하여 파라미터를 올바르게 전달하는 방법을 추측 할 필요없이 인스턴스를 생성 할 수 있습니다.