Firebase JS SDK टूल की मदद से, Firebase उपयोगकर्ताओं को का इस्तेमाल किया जा सकता है. आप एक साथ इंटिग्रेट कर सकते हैं यह कार्रवाई करने के लिए, Firebase SDK टूल का इस्तेमाल किया जा सकता है. में साइन-इन कर सकते हैं या OAuth फ़्लो को मैन्युअल तरीके से चला सकते हैं और नतीजे के तौर पर Firebase को OAuth क्रेडेंशियल भेजा जाएगा.
Cordava के लिए Firebase से पुष्टि करने की सुविधा सेट अप करना
Firebase को अपने JavaScript प्रोजेक्ट में जोड़ें. इसे जोड़ते समय Firebase स्निपेट,
authDomain
कॉन्फ़िगरेशन वैरिएबल पर ध्यान दें, जोmy-app.firebaseapp.com
जैसा दिखना चाहिए. अगर किसी कस्टम डोमेन का इस्तेमाल किया जाता है Firebase के प्रावधान किए गएfirebaseapp.com
डोमेन के बजाय, कस्टम इसके बजाय डोमेन का इस्तेमाल किया जाना चाहिए.Android ऐप्लिकेशन सेट अप करने के लिए, अपने Android ऐप्लिकेशन को Firebase कंसोल में जोड़ें अपने ऐप्लिकेशन के बारे में जानकारी डालें. आपको जनरेट की गई google-services.json के बारे में बताया गया है.
iOS ऐप्लिकेशन सेट अप करने के लिए, iOS ऐप्लिकेशन बनाएं और उसे Firebase कंसोल. बाद में जोड़ते समय, आपको iOS बंडल आईडी की ज़रूरत पड़ेगी कस्टम यूआरएल स्कीम का प्लगिन इंस्टॉल करके.
Firebase डाइनैमिक लिंक चालू करें:
- Firebase कंसोल में, Dynamic Links सेक्शन खोलें.
-
अगर आपने अभी तक Dynamic Links की शर्तें स्वीकार नहीं की हैं और Dynamic Links बनाया है, तो डोमेन है, तो अभी ऐसा करें.
अगर आपने पहले ही Dynamic Links डोमेन बना लिया है, तो उसे नोट करें. Dynamic Links डोमेन आम तौर पर नीचे दिए गए उदाहरण जैसा दिखता है:
example.page.link
आपको इस वैल्यू की ज़रूरत तब होगी, जब Apple या Android ऐप्लिकेशन को आने वाले लिंक को इंटरसेप्ट करें.
Firebase कंसोल में 'Google साइन इन' चालू करें:
- Firebase कंसोल में, पुष्टि सेक्शन खोलें.
- साइन इन करने का तरीका टैब पर, Google साइन इन का तरीका चालू करें और सेव करें पर क्लिक करें.
अपने Cordava प्रोजेक्ट में ज़रूरी प्लगिन इंस्टॉल करें.
# Plugin to pass application build info (app name, ID, etc) to the OAuth widget. cordova plugin add cordova-plugin-buildinfo --save # Plugin to handle Universal Links (Android app link redirects) cordova plugin add cordova-universal-links-plugin-fix --save # Plugin to handle opening secure browser views on iOS/Android mobile devices cordova plugin add cordova-plugin-browsertab --save # Plugin to handle opening a browser view in older versions of iOS and Android cordova plugin add cordova-plugin-inappbrowser --save # Plugin to handle deep linking through Custom Scheme for iOS # Substitute *com.firebase.cordova* with the iOS bundle ID of your app. cordova plugin add cordova-plugin-customurlscheme --variable \ URL_SCHEME=com.firebase.cordova --save
अपनी Cordava
config.xml
फ़ाइल में यह कॉन्फ़िगरेशन जोड़ें, जहां पहले चरण में शामिल डोमेनAUTH_DOMAIN
है औरDYNAMIC_LINK_DOMAIN
डोमेन के चरण (3c) में दिए गए निर्देशों का पालन करें.<universal-links> <host name="DYNAMIC_LINK_DOMAIN" scheme="https" /> <host name="AUTH_DOMAIN" scheme="https"> <path url="/__/auth/callback"/> </host> </universal-links>
कॉन्फ़िगरेशन का एक उदाहरण ऐसा हो सकता है:
<universal-links> <host name="example.page.link" scheme="https" /> <host name="example-app.firebaseapp.com" scheme="https"> <path url="/__/auth/callback"/> </host> </universal-links>
अगर कस्टम डोमेन
auth.custom.domain.com
का इस्तेमाल किया गया है, तोmy-app.firebaseapp.com
.Android ऐप्लिकेशन के लिए
singleTask
का इस्तेमालlaunchMode
के लिए किया जाना चाहिए.<preference name="AndroidLaunchMode" value="singleTask" />
Firebase SDK टूल की मदद से साइन-इन की प्रोसेस को मैनेज करना
यह पता लगाने के लिए कि Firebase में पुष्टि,
deviceReady
इवेंट पर निर्भर करती है मौजूदा कोर्डोवा एनवायरमेंट को बिलकुल सही तरह से बनाया गया है. Firebase ऐप्लिकेशन इंस्टेंस पक्का करना इवेंट के ट्रिगर होने के बाद शुरू होता है.Google प्रोवाइडर ऑब्जेक्ट का इंस्टेंस बनाएं:
Web
import { GoogleAuthProvider } from "firebase/auth/cordova"; const provider = new GoogleAuthProvider();
Web
var provider = new firebase.auth.GoogleAuthProvider();
इसका इस्तेमाल करके Google प्रोवाइडर ऑब्जेक्ट का इस्तेमाल करके Firebase से पुष्टि करें
signInWithRedirect
. ध्यान दें किsignInWithPopup
कोर्डोवा में इस्तेमाल नहीं किया जा सकता.Web
import { getAuth, signInWithRedirect, getRedirectResult, GoogleAuthProvider } from "firebase/auth/cordova"; const auth = getAuth(); signInWithRedirect(auth, new GoogleAuthProvider()) .then(() => { return getRedirectResult(auth); }) .then((result) => { const credential = GoogleAuthProvider.credentialFromResult(result); // This gives you a Google Access Token. // You can use it to access the Google API. const token = credential.accessToken; // The signed-in user info. const user = result.user; // ... }).catch((error) => { // Handle Errors here. const errorCode = error.code; const errorMessage = error.message; });
Web
firebase.auth().signInWithRedirect(provider).then(() => { return firebase.auth().getRedirectResult(); }).then((result) => { /** @type {firebase.auth.OAuthCredential} */ var credential = result.credential; // This gives you a Google Access Token. // You can use it to access the Google API. var token = credential.accessToken; // The signed-in user info. var user = result.user; // ... }).catch((error) => { // Handle Errors here. var errorCode = error.code; var errorMessage = error.message; });
ऐसी स्थिति को मैनेज करने के लिए जहां साइन-इन करने से पहले, ऐप्लिकेशन की गतिविधि खत्म हो जाती है कार्रवाई पूरी हो जाती है, जब आपका ऐप्लिकेशन काम करे, तो
getRedirectResult
को कॉल करें लोड करता है.Web
import { getAuth, getRedirectResult, GoogleAuthProvider } from "firebase/auth/cordova"; const auth = getAuth(); getRedirectResult(auth) .then((result) => { const credential = GoogleAuthProvider.credentialFromResult(result); if (credential) { // This gives you a Google Access Token. // You can use it to access the Google API. const token = credential.accessToken; // The signed-in user info. const user = result.user; // ... } }) .catch((error) => { // Handle Errors here. const errorCode = error.code; const errorMessage = error.message; });
Web
firebase.auth().getRedirectResult().then((result) => { if (result.credential) { /** @type {firebase.auth.OAuthCredential} */ var credential = result.credential; // This gives you a Google Access Token. // You can use it to access the Google API. var token = credential.accessToken; // The signed-in user info. var user = result.user; // ... } }).catch((error) => { // Handle Errors here. var errorCode = error.code; var errorMessage = error.message; });
नई कंपनी को लिंक करने के लिए भी इसी तरीके का इस्तेमाल किया जा सकता है
linkWithRedirect
या सेवा देने वाली किसी मौजूदा कंपनी से फिर से पुष्टि करने के लिएreauthenticateWithRedirect
का इस्तेमाल करके.