Apple प्लेटफ़ॉर्म पर डिबग प्रदाता के साथ ऐप चेक का उपयोग करें

यदि, अपने ऐप को ऐप चेक के लिए पंजीकृत करने के बाद, आप अपने ऐप को ऐसे वातावरण में चलाना चाहते हैं जिसे ऐप चेक आमतौर पर वैध के रूप में वर्गीकृत नहीं करेगा, जैसे कि विकास के दौरान सिम्युलेटर, या निरंतर एकीकरण (सीआई) वातावरण से, तो आप ऐसा कर सकते हैं अपने ऐप का एक डिबग बिल्ड बनाएं जो वास्तविक सत्यापन प्रदाता के बजाय ऐप चेक डिबग प्रदाता का उपयोग करता है।

सिम्युलेटर में डिबग प्रदाता का उपयोग करें

अपने ऐप को सिम्युलेटर में इंटरैक्टिव रूप से चलाने के दौरान (उदाहरण के लिए, विकास के दौरान) डिबग प्रदाता का उपयोग करने के लिए, निम्न कार्य करें:

  1. अपने डिबग बिल्ड में, किसी भी फायरबेस बैकएंड सेवाओं का उपयोग करने से पहले, ऐप चेक डिबग प्रदाता फैक्ट्री बनाएं और सेट करें:

    तीव्र

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    उद्देश्य सी

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];
  2. अपने Xcode प्रोजेक्ट में डिबग लॉगिंग सक्षम करें (v11.0 या नया):

    1. उत्पाद > योजना > योजना संपादित करें खोलें।
    2. बाएं मेनू से रन चुनें, फिर तर्क टैब चुनें।
    3. लॉन्च अनुभाग पर पारित तर्क में, -FIRDebugEnabled जोड़ें।
  3. ऐप लॉन्च करें. जब एसडीके बैकएंड पर अनुरोध भेजने का प्रयास करेगा तो एक स्थानीय डिबग टोकन लॉग किया जाएगा। उदाहरण के लिए:

    [Firebase/AppCheck][I-FAA001001] Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. फायरबेस कंसोल के ऐप चेक अनुभाग में, अपने ऐप के ओवरफ़्लो मेनू से डिबग टोकन प्रबंधित करें चुनें। फिर, पिछले चरण में आपके द्वारा लॉग किए गए डिबग टोकन को पंजीकृत करें।

    डिबग टोकन प्रबंधित करें मेनू आइटम का स्क्रीनशॉट

आपके द्वारा टोकन पंजीकृत करने के बाद, फायरबेस बैकएंड सेवाएं इसे वैध मान लेंगी।

क्योंकि यह टोकन किसी वैध डिवाइस के बिना आपके फायरबेस संसाधनों तक पहुंच की अनुमति देता है, इसलिए यह महत्वपूर्ण है कि आप इसे निजी रखें। इसे किसी सार्वजनिक रिपॉजिटरी के लिए प्रतिबद्ध न करें, और यदि किसी पंजीकृत टोकन के साथ कभी छेड़छाड़ की जाती है, तो इसे तुरंत फायरबेस कंसोल में रद्द कर दें।

CI परिवेश में डिबग प्रदाता का उपयोग करें

सतत एकीकरण (सीआई) वातावरण में डिबग प्रदाता का उपयोग करने के लिए, निम्नलिखित कार्य करें:

  1. फायरबेस कंसोल के ऐप चेक अनुभाग में, अपने ऐप के ओवरफ़्लो मेनू से डिबग टोकन प्रबंधित करें चुनें। फिर, एक नया डिबग टोकन बनाएं। अगले चरण में आपको टोकन की आवश्यकता होगी.

    क्योंकि यह टोकन किसी वैध डिवाइस के बिना आपके फायरबेस संसाधनों तक पहुंच की अनुमति देता है, इसलिए यह महत्वपूर्ण है कि आप इसे निजी रखें। इसे किसी सार्वजनिक रिपॉजिटरी के लिए प्रतिबद्ध न करें, और यदि किसी पंजीकृत टोकन के साथ कभी छेड़छाड़ की जाती है, तो इसे तुरंत फायरबेस कंसोल में रद्द कर दें।

    डिबग टोकन प्रबंधित करें मेनू आइटम का स्क्रीनशॉट

  2. आपके द्वारा अभी बनाए गए डिबग टोकन को अपने CI सिस्टम के सुरक्षित कुंजी स्टोर में जोड़ें (उदाहरण के लिए, GitHub Actions के एन्क्रिप्टेड रहस्य या ट्रैविस CI के एन्क्रिप्टेड वेरिएबल )।

  3. यदि आवश्यक हो, तो अपने डिबग टोकन को सीआई वातावरण में पर्यावरण चर के रूप में उपलब्ध कराने के लिए अपने सीआई सिस्टम को कॉन्फ़िगर करें। वेरिएबल को APP_CHECK_DEBUG_TOKEN_FROM_CI जैसा कुछ नाम दें।

  4. Xcode में, अपनी परीक्षण योजना में FIRAAppCheckDebugToken नाम और मान के रूप में $(APP_CHECK_DEBUG_TOKEN) जैसा कुछ पर्यावरण चर जोड़ें।

  5. डिबग टोकन को पर्यावरण चर के रूप में पारित करने के लिए अपनी CI परीक्षण स्क्रिप्ट कॉन्फ़िगर करें। उदाहरण के लिए:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  6. अपने डिबग बिल्ड में, किसी भी फायरबेस बैकएंड सेवाओं का उपयोग करने से पहले, ऐप चेक डिबग प्रदाता फैक्ट्री बनाएं और सेट करें:

    तीव्र

    let providerFactory = AppCheckDebugProviderFactory()
    AppCheck.setAppCheckProviderFactory(providerFactory)
    
    FirebaseApp.configure()

    उद्देश्य सी

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];

जब आपका ऐप सीआई वातावरण में चलता है, तो फायरबेस बैकएंड सेवाएं उसके द्वारा भेजे गए टोकन को मान्य मान लेंगी।