Apple प्लैटफ़ॉर्म पर, डीबग की सेवा देने वाली कंपनी के साथ ऐप्लिकेशन की जांच करने की सुविधा का इस्तेमाल करना

अगर आपने अपने ऐप्लिकेशन को App Check के लिए रजिस्टर कर लिया है और आपको अपने ऐप्लिकेशन को ऐसे एनवायरमेंट में चलाना है जिसे App Check आम तौर पर मान्य नहीं मानता है, तो आपके पास अपने ऐप्लिकेशन का डीबग बिल्ड बनाने का विकल्प होता है. जैसे, डेवलपमेंट के दौरान सिम्युलेटर या डिवाइस पर या कंटीन्यूअस इंटिग्रेशन (सीआई) एनवायरमेंट से. यह बिल्ड, पुष्टि करने वाले असली प्रोवाइडर के बजाय App Check डीबग प्रोवाइडर का इस्तेमाल करता है.

डेवलपमेंट के दौरान, डीबग प्रोवाइडर का इस्तेमाल करना

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

  1. अपनी डीबग बिल्ड में, Firebase की किसी भी बैकएंड सेवा का इस्तेमाल करने से पहले, App Check डीबग प्रोवाइडर फ़ैक्ट्री बनाएं और उसे सेट करें:

    Swift

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

    Objective-C

    FIRAppCheckDebugProviderFactory *providerFactory =
          [[FIRAppCheckDebugProviderFactory alloc] init];
    [FIRAppCheck setAppCheckProviderFactory:providerFactory];
    
    // Use Firebase library to configure APIs
    [FIRApp configure];
  2. ऐप्लिकेशन लॉन्च करें. जब एसडीके, बैकएंड को अनुरोध भेजने की कोशिश करेगा, तब एक लोकल डीबग टोकन लॉग किया जाएगा. उदाहरण के लिए:

    <Warning> [AppCheckCore][I-GAC004001] App Check debug token:
    '123a4567-b89c-12d3-e456-789012345678'.
  3. Firebase console में, सुरक्षा > App Check > ऐप्लिकेशन पर जाएं.

  4. अभी लॉग किए गए डीबग टोकन को रजिस्टर करें.

    1. अपने ऐप्लिकेशन के ओवरफ़्लो मेन्यू में जाकर, डीबग टोकन मैनेज करें को चुनें.
    2. अपने डीबग टोकन को रजिस्टर करने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.

    &#39;डीबग टोकन मैनेज करें&#39; मेन्यू आइटम का स्क्रीनशॉट

टोकन रजिस्टर करने के बाद, Firebase बैकएंड सेवाएं इसे मान्य के तौर पर स्वीकार करेंगी.

यह टोकन, मान्य डिवाइस के बिना भी आपके Firebase संसाधनों को ऐक्सेस करने की अनुमति देता है. इसलिए, यह ज़रूरी है कि आप इसे निजी रखें. इसे किसी सार्वजनिक रिपॉज़िटरी में न डालें. अगर कभी कोई रजिस्टर किया गया टोकन गलत हाथों में पड़ जाता है, तो उसे Firebase कंसोल में जाकर तुरंत रद्द करें.

सीआई एनवायरमेंट में डीबग प्रोवाइडर का इस्तेमाल करना

कंटिन्यूअस इंटिग्रेशन (सीआई) एनवायरमेंट में डीबग प्रोवाइडर का इस्तेमाल करने के लिए, यह तरीका अपनाएं:

  1. Firebase console में, सुरक्षा > App Check > ऐप्लिकेशन पर जाएं.

  2. डीबग टोकन बनाएं. आपको अगले चरण में इस टोकन की ज़रूरत पड़ेगी.

    1. अपने ऐप्लिकेशन के ओवरफ़्लो मेन्यू में जाकर, डीबग टोकन मैनेज करें को चुनें.
    2. नया डीबग टोकन बनाने के लिए, स्क्रीन पर दिए गए निर्देशों का पालन करें.

    यह टोकन, मान्य डिवाइस के बिना भी आपके Firebase संसाधनों को ऐक्सेस करने की अनुमति देता है. इसलिए, इसे निजी रखना ज़रूरी है. इसे किसी सार्वजनिक रिपॉज़िटरी में न डालें. अगर कभी कोई रजिस्टर किया गया टोकन गलत हाथों में पड़ जाता है, तो उसे Firebase कंसोल में जाकर तुरंत रद्द करें.

    &#39;डीबग टोकन मैनेज करें&#39; मेन्यू आइटम का स्क्रीनशॉट

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

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

  5. Xcode में, अपनी टेस्टिंग स्कीम में एक एनवायरमेंट वैरिएबल जोड़ें. इसका नाम AppCheckDebugToken और वैल्यू $(APP_CHECK_DEBUG_TOKEN) होनी चाहिए.

  6. डीबग टोकन को एनवायरमेंट वैरिएबल के तौर पर पास करने के लिए, अपनी सीआई टेस्ट स्क्रिप्ट कॉन्फ़िगर करें. उदाहरण के लिए:

    xcodebuild test -scheme YourTestScheme -workspace YourProject.xcworkspace \
    APP_CHECK_DEBUG_TOKEN=$(APP_CHECK_DEBUG_TOKEN_FROM_CI)
  7. अपनी डीबग बिल्ड में, Firebase की किसी भी बैकएंड सेवा का इस्तेमाल करने से पहले, App Check डीबग प्रोवाइडर फ़ैक्ट्री बनाएं और उसे सेट करें:

    Swift

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

    Objective-C

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

जब आपका ऐप्लिकेशन सीआई एनवायरमेंट में चलता है, तब Firebase की बैकएंड सेवाएं, भेजे गए टोकन को मान्य मानेंगी.