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

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

অ্যাপল প্ল্যাটফর্ম

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

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

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

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

    ম্যানেজ ডিবাগ টোকেন মেনু আইটেমের স্ক্রিনশট

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

যেহেতু এই টোকেনটি একটি বৈধ ডিভাইস ছাড়াই আপনার 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 কনসোলের অ্যাপ চেক বিভাগে, আপনার অ্যাপের ওভারফ্লো মেনু থেকে ডিবাগ টোকেন পরিচালনা করুন বেছে নিন। তারপরে, আপনি আগের ধাপে লগ ইন করা ডিবাগ টোকেনটি নিবন্ধন করুন৷

    ম্যানেজ ডিবাগ টোকেন মেনু আইটেমের স্ক্রিনশট

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

ওয়েব

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.

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

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

    ম্যানেজ ডিবাগ টোকেন মেনু আইটেমের স্ক্রিনশট

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

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