] लॉग इन करें। वर्तमान कोड सफलतापूर्वक दो उपयोगकर्ता प्रकारों के लिए पुनर्निर्देशन का प्रबंधन करता है, लेकिन तीसरे प्रकार (व्यवस्थापक) को शामिल करने का प्रयास करते समय चुनौतियों का सामना करता है। मूल स्कीमा केवल दो प्रकार के उपयोगकर्ताओं को पूरा करती है। तीसरे प्रकार को पेश करके, संरचना को प्रत्येक उपयोगकर्ता के लिए "प्रकार" फ़ील्ड को शामिल करने के लिए अपडेट किया जाना चाहिए। संशोधित डेटाबेस स्कीमा निम्नानुसार दिखाई दे सकती है:
फायरबेस-रूट
|
--- उपयोगकर्ता
|
--- uidone
| |
| --- नाम: "एड"
| |
| --- प्रकार: 1
|
--- uidtwo
| |
| --- नाम: "Tyff"
| |
| --- प्रकार: 2
|
--- uidthree
|
--- नाम: "व्यवस्थापक"
|
--- प्रकार: 3
कोड को अद्यतन करना
अद्यतन डेटाबेस संरचना के साथ, कोड को तीसरे उपयोगकर्ता प्रकार को संभालने के लिए समायोजित किया जा सकता है। निम्न कोड स्निपेट यह दर्शाता है कि उपयोगकर्ता के "प्रकार" मान को कैसे प्राप्त किया जाए और उन्हें तदनुसार पुनर्निर्देशित किया जाए:
स्ट्रिंग uid = firebaseauth.getInstance ()। getCurrentuser ()। getUid (); Databasereference rootref = firebasedatabase.getInstance ()। getReference (); Databasereference uidref = rootref.child ("उपयोगकर्ता")। बच्चे (UID); ValueEventListener ValueEventListener = new ValueEventListener () {{ @Override सार्वजनिक शून्य ondatachange (datasnapshot datasnapshot) { if (datasnapshot.child ("प्रकार")। getValue (long.class) == 1) { StartActivity (नया इरादा (mainactivity.this, student.class)); } और अगर (datasnapshot.child ("प्रकार")। getValue (long.class) == 2) { StartActivity (नया इरादा (mainactivity.this, teach.class)); } और अगर (datasnapshot.child ("प्रकार")। getValue (long.class) == 3) { StartActivity (नया इरादा (mainactivity.this, admin.class)); } } @Override सार्वजनिक शून्य oncancelled (@nonnull databaseerror databaseerror) { Log.d (टैग, databaseerror.getMessage ()); } }; uidref.addlistenerforsinglevalueevent (ValueEventListener);इन परिवर्तनों को लागू करके, वोटिंग ऐप अब सभी तीन प्रकार के उपयोगकर्ताओं (छात्रों, शिक्षकों और प्रशंसा) को सफलतापूर्वक पुनर्निर्देशित कर सकता है।
अस्वीकरण: उपलब्ध कराए गए सभी संसाधन आंशिक रूप से इंटरनेट से हैं। यदि आपके कॉपीराइट या अन्य अधिकारों और हितों का कोई उल्लंघन होता है, तो कृपया विस्तृत कारण बताएं और कॉपीराइट या अधिकारों और हितों का प्रमाण प्रदान करें और फिर इसे ईमेल पर भेजें: [email protected] हम इसे आपके लिए यथाशीघ्र संभालेंगे।
Copyright© 2022 湘ICP备2022001581号-3