首頁 > Java > java教程 > 如何在 Firebase 投票應用程式中重定向不同的使用者類型(學生、教師、管理員)?

如何在 Firebase 投票應用程式中重定向不同的使用者類型(學生、教師、管理員)?

Mary-Kate Olsen
發布: 2024-12-18 07:22:14
原創
536 人瀏覽過

How to Redirect Different User Types (Student, Teacher, Admin) in a Firebase Voting App?

Firebase 投票應用程式中多種使用者類型的重新導向

解決將多個使用者類型重新導向至Firebase 投票中各自活動的挑戰app,需要對現有程式碼進行修改。

原本程式碼成功重定向了兩種使用者類型(學生和教師)使用學生子節點。但是,為了適應第三種使用者類型(ADMIN),需要更改資料庫結構。

新的資料庫架構應包含一個名為 users 的根節點,在該根節點下每個使用者都會有一個子節點。每個使用者節點應包含諸如名稱和標識其使用者類型的類型欄位等資訊。

透過更新的資料庫結構,可以將程式碼修改如下:

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);
登入後複製

此更新程式碼向users 節點新增一個偵聽器,並檢查目前用戶的type 欄位以確定其用戶類型。根據使用者類型,啟動適當的活動。

以上是如何在 Firebase 投票應用程式中重定向不同的使用者類型(學生、教師、管理員)?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板