Firebase 투표 앱에서 여러 사용자 유형 리디렉션
Firebase 투표에서 여러 사용자 유형을 해당 활동으로 리디렉션하는 문제를 해결하려면 앱의 경우 기존 코드 수정이 필요합니다.
원래 코드는 두 가지 사용자 유형을 성공적으로 리디렉션했습니다. (STUDENTS 및 TEACHERS) STUDENTS 하위 노드를 사용합니다. 그러나 세 번째 사용자 유형(ADMIN)을 수용하려면 데이터베이스 구조의 변경이 필요합니다.
새 데이터베이스 스키마에는 사용자라는 루트 노드가 포함되어야 하며, 그 아래에는 각 사용자에 대한 하위 노드가 있습니다. . 각 사용자 노드에는 사용자 유형을 식별하는 이름 및 유형 필드와 같은 정보가 포함되어야 합니다.
업데이트된 데이터베이스 구조를 사용하면 코드를 다음과 같이 수정할 수 있습니다.
String uid = FirebaseAuth.getInstance().getCurrentUser().getUid(); DatabaseReference rootRef = FirebaseDatabase.getInstance().getReference(); DatabaseReference uidRef = rootRef.child("users").child(uid); ValueEventListener valueEventListener = new ValueEventListener() { @Override public void onDataChange(DataSnapshot dataSnapshot) { if(dataSnapshot.child("type").getValue(Long.class) == 1) { startActivity(new Intent(MainActivity.this, student.class)); } else if (dataSnapshot.child("TYPE").getValue(Long.class) == 2) { startActivity(new Intent(MainActivity.this, teacher.class)); } else if (dataSnapshot.child("TYPE").getValue(Long.class) == 3) { startActivity(new Intent(MainActivity.this, admin.class)); } } @Override public void onCancelled(@NonNull DatabaseError databaseError) { Log.d(TAG, databaseError.getMessage()); } }; uidRef.addListenerForSingleValueEvent(valueEventListener);
이 업데이트됨 코드는 사용자 노드에 리스너를 추가하고 현재 사용자의 유형 필드를 확인하여 사용자 유형을 결정합니다. 사용자 유형에 따라 적절한 활동이 시작됩니다.
위 내용은 Firebase 투표 앱에서 다양한 사용자 유형(학생, 교사, 관리자)을 리디렉션하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!