Flutter সহ ডিবাগ প্রদানকারীর সাথে অ্যাপ চেক ব্যবহার করুন

অ্যাপ চেকের জন্য আপনার অ্যাপটি নিবন্ধিত করার পরে, আপনার অ্যাপটি সাধারণত কোনও এমুলেটর বা কন্টিনিউয়াস ইন্টিগ্রেশন (CI) পরিবেশে চলবে না, কারণ সেই পরিবেশগুলি বৈধ ডিভাইস হিসাবে যোগ্যতা অর্জন করে না। যদি আপনি ডেভেলপমেন্ট এবং টেস্টিং চলাকালীন এমন পরিবেশে আপনার অ্যাপটি চালাতে চান, তাহলে আপনি আপনার অ্যাপের একটি ডিবাগ বিল্ড তৈরি করতে পারেন যা প্রকৃত প্রত্যয়ন প্রদানকারীর পরিবর্তে অ্যাপ চেক ডিবাগ প্রদানকারী ব্যবহার করে।

অ্যাপল প্ল্যাটফর্মগুলি

সিমুলেটরে ইন্টারেক্টিভভাবে আপনার অ্যাপ চালানোর সময় ডিবাগ প্রোভাইডার ব্যবহার করতে (উদাহরণস্বরূপ, ডেভেলপমেন্টের সময়), নিম্নলিখিতগুলি করুন:

  1. আপনার Firebase অ্যাপটি চালু করার পরপরই ডিবাগ প্রদানকারীর সাথে অ্যাপ চেক সক্রিয় করুন:

    import 'package:flutter/material.dart';
    import 'package:firebase_core/firebase_core.dart';
    
    // Import the firebase_app_check plugin
    import 'package:firebase_app_check/firebase_app_check.dart';
    
    Future<void> main() async {
      WidgetsFlutterBinding.ensureInitialized();
      await Firebase.initializeApp();
      await FirebaseAppCheck.instance.activate(
        // Set appleProvider to `AppleProvider.debug`
        appleProvider: AppleProvider.debug,
      );
      runApp(App());
    }
    
  2. আপনার Xcode প্রকল্পে (v11.0 বা নতুন) ডিবাগ লগিং সক্ষম করুন:

    1. পণ্য > স্কিম > স্কিম সম্পাদনা করুন খুলুন।
    2. বাম মেনু থেকে Run নির্বাচন করুন, তারপর Arguments ট্যাব নির্বাচন করুন।
    3. "লঞ্চে পাস করা আর্গুমেন্ট" বিভাগে, -FIRDebugEnabled যোগ করুন।
  3. Xcode দিয়ে ios/Runner.xcworkspace খুলুন এবং সিমুলেটরে আপনার অ্যাপটি চালান। Firebase যখন ব্যাকএন্ডে একটি অনুরোধ পাঠানোর চেষ্টা করবে তখন আপনার অ্যাপটি ডিবাগ আউটপুটে একটি স্থানীয় ডিবাগ টোকেন প্রিন্ট করবে। উদাহরণস্বরূপ:

    Firebase App Check Debug Token:
    123a4567-b89c-12d3-e456-789012345678
  4. Firebase কনসোলের App Check বিভাগে, আপনার অ্যাপের ওভারফ্লো মেনু থেকে "ডিবাগ টোকেন পরিচালনা করুন" নির্বাচন করুন। তারপর, পূর্ববর্তী ধাপে লগ ইন করা ডিবাগ টোকেনটি নিবন্ধন করুন।

    ডিবাগ টোকেন পরিচালনা করুন মেনু আইটেমের স্ক্রিনশট

টোকেনটি নিবন্ধন করার পরে, Firebase ব্যাকএন্ড পরিষেবাগুলি এটিকে বৈধ হিসাবে গ্রহণ করবে।

যেহেতু এই টোকেনটি কোনও বৈধ ডিভাইস ছাড়াই আপনার ফায়ারবেস রিসোর্সে অ্যাক্সেসের অনুমতি দেয়, তাই এটি ব্যক্তিগত রাখা অত্যন্ত গুরুত্বপূর্ণ। এটি কোনও পাবলিক রিপোজিটরিতে জমা দেবেন না এবং যদি কোনও নিবন্ধিত টোকেন কখনও আপস করা হয়, তাহলে ফায়ারবেস কনসোলে তা অবিলম্বে প্রত্যাহার করুন।

অ্যান্ড্রয়েড

অ্যান্ড্রয়েড পরিবেশে আপনার ফ্লটার অ্যাপ চালানোর সময় ডিবাগ প্রোভাইডার ব্যবহার করতে, আপনার ফ্লটার অ্যাপ্লিকেশনে নিম্নলিখিত কোডটি প্রয়োগ করুন:

import 'package:flutter/material.dart';
import 'package:firebase_core/firebase_core.dart';

// Import the firebase_app_check plugin
import 'package:firebase_app_check/firebase_app_check.dart';

Future<void> main() async {
  WidgetsFlutterBinding.ensureInitialized();
  await Firebase.initializeApp();
  await FirebaseAppCheck.instance.activate(
    webRecaptchaSiteKey: 'recaptcha-v3-site-key',
    // Set androidProvider to `AndroidProvider.debug`
    androidProvider: AndroidProvider.debug,
  );
  runApp(App());
}

যখন Firebase ব্যাকএন্ডে একটি অনুরোধ পাঠানোর চেষ্টা করবে তখন আপনার অ্যাপটি ডিবাগ আউটপুটে একটি স্থানীয় ডিবাগ টোকেন প্রিন্ট করবে। উদাহরণস্বরূপ:

D DebugAppCheckProvider: Enter this debug secret into the allow list in
the Firebase Console for your project: 123a4567-b89c-12d3-e456-789012345678
  1. Firebase কনসোলের App Check বিভাগে, আপনার অ্যাপের ওভারফ্লো মেনু থেকে "ডিবাগ টোকেন পরিচালনা করুন" নির্বাচন করুন। তারপর, পূর্ববর্তী ধাপে লগ ইন করা ডিবাগ টোকেনটি নিবন্ধন করুন।

    ডিবাগ টোকেন পরিচালনা করুন মেনু আইটেমের স্ক্রিনশট

টোকেনটি নিবন্ধন করার পরে, Firebase ব্যাকএন্ড পরিষেবাগুলি এটিকে বৈধ হিসাবে গ্রহণ করবে।

ওয়েব

localhost থেকে আপনার অ্যাপ চালানোর সময় (উদাহরণস্বরূপ, ডেভেলপমেন্টের সময়) ডিবাগ প্রোভাইডার ব্যবহার করতে, নিম্নলিখিতগুলি করুন:

  1. web/index.html ফাইলে, self.FIREBASE_APPCHECK_DEBUG_TOKEN true এ সেট করে ডিবাগ মোড সক্ষম করুন:

    <body>
      <script>
        self.FIREBASE_APPCHECK_DEBUG_TOKEN = true;
      </script>
    
      ...
    
    </body>
    
  2. আপনার ওয়েব অ্যাপটি স্থানীয়ভাবে চালান এবং ব্রাউজারের ডেভেলপার টুলটি খুলুন। ডিবাগ কনসোলে, আপনি একটি ডিবাগ টোকেন দেখতে পাবেন:

    AppCheck debug token: "123a4567-b89c-12d3-e456-789012345678". You will
    need to safelist it in the Firebase console for it to work.

    এই টোকেনটি আপনার ব্রাউজারে স্থানীয়ভাবে সংরক্ষিত আছে এবং যখনই আপনি একই মেশিনে একই ব্রাউজারে আপনার অ্যাপ ব্যবহার করবেন তখনই এটি ব্যবহার করা হবে। আপনি যদি অন্য ব্রাউজারে বা অন্য মেশিনে টোকেনটি ব্যবহার করতে চান, তাহলে self.FIREBASE_APPCHECK_DEBUG_TOKEN true এর পরিবর্তে টোকেন স্ট্রিংয়ে সেট করুন।

  3. Firebase কনসোলের App Check বিভাগে, আপনার অ্যাপের ওভারফ্লো মেনু থেকে "ডিবাগ টোকেন পরিচালনা করুন" নির্বাচন করুন। তারপর, পূর্ববর্তী ধাপে লগ ইন করা ডিবাগ টোকেনটি নিবন্ধন করুন।

    ডিবাগ টোকেন পরিচালনা করুন মেনু আইটেমের স্ক্রিনশট

টোকেনটি নিবন্ধন করার পরে, Firebase ব্যাকএন্ড পরিষেবাগুলি এটিকে বৈধ হিসাবে গ্রহণ করবে।

যেহেতু এই টোকেনটি কোনও বৈধ ডিভাইস ছাড়াই আপনার ফায়ারবেস রিসোর্সে অ্যাক্সেসের অনুমতি দেয়, তাই এটি ব্যক্তিগত রাখা অত্যন্ত গুরুত্বপূর্ণ। এটি কোনও পাবলিক রিপোজিটরিতে জমা দেবেন না এবং যদি কোনও নিবন্ধিত টোকেন কখনও আপস করা হয়, তাহলে ফায়ারবেস কনসোলে তা অবিলম্বে প্রত্যাহার করুন।