ইনিশিয়ালাইজেশন বিকল্প সংক্রান্ত সমস্যার সমাধান করা

Firebase বিকল্পের সঠিক সেট ছাড়া আপনার অ্যাপ ইনিশিয়ালাইজ করলে, আপনার অ্যাপ্লিকেশনের নতুন ব্যবহারকারীরা গুরুতর সমস্যার সম্মুখীন হবেন।

Firebase বিকল্প হল প্যারামিটারের একটি সেট যা Firebase সার্ভার API-এর সাথে সফলভাবে যোগাযোগ করতে এবং আপনার Firebase প্রোজেক্ট ও Firebase অ্যাপ্লিকেশনের সাথে ক্লায়েন্ট ডেটা অ্যাসোসিয়েট করতে পরিষেবার প্রয়োজন হয়। Firebase পরিষেবা Firebase-এর প্রাথমিকীকরণ চলাকালীন তৈরি করা Firebase কোর/সাধারণ লাইব্রেরি থেকে উপলভ্য সঠিক Firebase বিকল্পের উপর নির্ভর করে।

বিভিন্ন Firebase পরিষেবার জন্য সঠিকভাবে কাজ করার জন্য বিভিন্ন Firebase বিকল্প প্রয়োজন হয়, কিন্তু সব Firebase পরিষেবার জন্য নিম্নলিখিত Firebase বিকল্প প্রয়োজন:

  • API কী - মনে রাখবেন: এটি FCM সার্ভার কী নয়, FCM সার্ভার কী দেখুন।
    ভ্যালুর উদাহরণ: AIzaSyDOCAbC123dEf456GhI789jKl012-MnO
  • প্রোজেক্ট আইডি - ভ্যালুর উদাহরণ: myapp-project-123.
  • অ্যাপ্লিকেশন আইডি ("AppID") - আপনার অ্যাপের অনন্য শনাক্তকারী, যার ফর্ম্যাট প্ল্যাটফর্মের উপর নির্ভর করে:
    • Android-এর জন্য: mobilesdk_app_id—মনে রাখবেন: এটি Android প্যাকেজের নাম নয়।
      ভ্যালুর উদাহরণ: 1:1234567890:android:321abc456def7890
    • iOS+-এর জন্য: GOOGLE_APP_ID—মনে রাখবেন: এটি Apple বান্ডেল আইডি নয়।
      ভ্যালুর উদাহরণ: 1:1234567890:ios:321abc456def7890

Android অ্যাপ সংক্রান্ত সমস্যার সমাধান করা

নিরাপত্তা উন্নত করতে, Firebase SDK ২৭ ফেব্রুয়ারি আপডেট করা হয়েছে এবং তারপরে Firebase ইনস্ট্যান্স আইডি পরিষেবাটি Firebase ইনস্টলেশন API-এর উপর নির্ভরতার সাথে প্রতিস্থাপন করা হয়েছে।

Firebase ইনস্টলেশন, আপনার Firebase প্রোজেক্টের সাথে ক্লায়েন্ট ডেটা অ্যাসোসিয়েট করার জন্য বাধ্যতামূলক Firebase বিকল্প API কী, প্রোজেক্ট আইডি ও অ্যাপ্লিকেশন আইডির অস্তিত্ব ও বৈধতা এনফোর্স করে। আরও তথ্যের জন্য FirebaseOptions দেখুন।

Firebase ইনস্ট্যান্স আইডি (IID) সহ Firebase Cloud Messaging (FCM)

আপনার অ্যাপের নতুন ব্যবহারকারীরা FCM সংক্রান্ত সমস্যার সম্মুখীন হলে, এটি সম্ভব যে আপনি Firebase-এর প্রয়োজনীয় সেট বিকল্প ছাড়াই Firebase চালু করছেন।

আপনার অ্যাপ্লিকেশন হয়ত সম্পূর্ণ নয় বা ভুল google-services.json কনফিগারেশন ফাইল ব্যবহার করছে; অথবা আপনার অ্যাপ প্রোগ্রামাটিক উপায়ে Firebase ইনিশিয়ালাইজ করছে, যেখানে Firebase-এর প্রয়োজনীয় বিকল্পের সম্পূর্ণ সেট নেই।

এর ফলে, Firebase Cloud Messaging-এর মতো Firebase পরিষেবা আপডেট করা Firebase SDK-এর সাথে রিলিজ করার পরে আপনার অ্যাপ ইনস্টল করা শেষ ব্যবহারকারীদের জন্য ঠিকমতো কাজ করবে না। এছাড়াও, Firebase-এ বারবার অনুরোধ ব্যর্থ হলে, আপনার অ্যাপের ব্যবহারকারীর অভিজ্ঞতা ধীর হয়ে যেতে পারে।

আমাকে কী করতে হবে?

আপনার অ্যাপ্লিকেশনের জন্য Firebase পরিষেবা ঠিকমতো কাজ না করলে, তা ঠিক করতে:

  1. আপনার প্রোজেক্টের সঠিক API কী, সঠিক প্রোজেক্ট আইডি ও সঠিক অ্যাপ্লিকেশন আইডি (mobilesdk_app_id বা "অ্যাপ আইডি") দিয়ে Firebase ইনিশিয়ালাইজ করে আপনার অ্যাপ্লিকেশন আপডেট করুন।
  2. Play Store-এ আপনার অ্যাপের নতুন ভার্সন রিলিজ করুন।

Apple অ্যাপ সংক্রান্ত সমস্যার সমাধান করা

নিরাপত্তা উন্নত করতে, Firebase SDK ১৪ জানুয়ারি আপডেট করা হয়েছে এবং তারপরে Firebase ইনস্ট্যান্স আইডি পরিষেবাকে Firebase Installations API-এর উপর নির্ভরতা দিয়ে প্রতিস্থাপন করা হয়েছে।

Firebase ইনস্টলেশন, আপনার Firebase প্রোজেক্টের সাথে ক্লায়েন্ট ডেটা অ্যাসোসিয়েট করার জন্য বাধ্যতামূলক Firebase বিকল্প API কী, প্রোজেক্ট আইডি ও অ্যাপ্লিকেশন আইডির অস্তিত্ব ও বৈধতা এনফোর্স করে। আরও তথ্যের জন্য FIROptions দেখুন।

Firebase ইনস্ট্যান্স আইডি (IID) সহ Firebase Cloud Messaging (FCM)

আপনার অ্যাপের নতুন ব্যবহারকারীরা FCM সংক্রান্ত সমস্যার সম্মুখীন হলে, এটি সম্ভব যে আপনি Firebase-এর প্রয়োজনীয় সেট বিকল্প ছাড়াই Firebase চালু করছেন।

আপনার অ্যাপ্লিকেশন হয়ত সম্পূর্ণ নয় বা ভুল GoogleService-Info.plist কনফিগারেশন ফাইল ব্যবহার করছে; অথবা আপনার অ্যাপ প্রোগ্রামাটিক উপায়ে Firebase ইনিশিয়ালাইজ করছে কিন্তু Firebase-এর প্রয়োজনীয় বিকল্পের সম্পূর্ণ সেট ব্যবহার করছে না।

এর ফলে, আপডেট করা Firebase SDK সহ আপনার অ্যাপ রিলিজ করার পরে সেটি ইনস্টল করা শেষ ব্যবহারকারীদের জন্য Firebase Cloud Messaging-এর মতো Firebase পরিষেবা সঠিকভাবে কাজ করবে না। এছাড়াও, Firebase-এ বারবার অনুরোধ ব্যর্থ হলে, আপনার অ্যাপের ব্যবহারকারীর অভিজ্ঞতা খারাপ হতে পারে।

আমাকে কী করতে হবে?

আপনার অ্যাপ্লিকেশনের জন্য Firebase পরিষেবা ঠিকমতো কাজ না করলে, তা ঠিক করতে:

  1. আপনার প্রোজেক্টের সঠিক API কী, সঠিক প্রোজেক্ট আইডি ও সঠিক অ্যাপ্লিকেশন আইডি (GOOGLE_APP_ID বা "অ্যাপ আইডি") দিয়ে Firebase ইনিশিয়ালাইজ করে আপনার অ্যাপ্লিকেশন আপডেট করুন।
    1. Firebase কনফিগারেশন ফাইল ব্যবহার করে ডিফল্ট ইনিশিয়ালাইজেশন প্রসেস: Firebase কনসোল থেকে আপনার GoogleService-Info.plist কনফিগারেশন ফাইল ডাউনলোড করুন, তারপর আপনার অ্যাপে আগে থেকে থাকা ফাইলটি সরিয়ে দিন।
    2. FIROptions অবজেক্ট ব্যবহার করে প্রোগ্রাম্যাটিক ইনিশিয়ালাইজেশন: আপনার API কী, প্রোজেক্ট আইডি ও অ্যাপ্লিকেশন আইডি খুঁজে পেতে Firebase কনসোল থেকে আপনার GoogleService-Info.plist কনফিগারেশন ফাইল ডাউনলোড করুন, তারপর আপনার অ্যাপের FIROptions অবজেক্টে এইসব ভ্যালু আপডেট করুন।
  2. App Store-এ আপনার অ্যাপের নতুন ভার্সন রিলিজ করুন।

FCM সার্ভার কী

আপনার অ্যাপ যদি Cloud API কী-এর পরিবর্তে FCM সার্ভার কী ব্যবহার করে, তাহলে আপনি যদি FCM-এর মাধ্যমে পুশ বিজ্ঞপ্তি পাঠানোর জন্য একই FCM সার্ভার কী ব্যবহার করেন, তাহলে এটি নিরাপত্তা সংক্রান্ত দুর্বলতা তৈরি করতে পারে। এই ক্ষেত্রে, আমরা দৃঢ়ভাবে সাজেস্ট করি যে আপনার সার্ভার কীভাবে FCM-এ পাঠানোর অনুরোধকে প্রমাণ করে তা সংশোধন করুন।

মনে রাখবেন, FCM সার্ভার কী (যা Firebase/Cloud API কী-এর মতো নয়) অবশ্যই অ্যাপ্লিকেশনে অন্তর্ভুক্ত করা যাবে না, কারণ সেগুলি আপনার প্রোজেক্টের নামে পুশ বিজ্ঞপ্তি পাঠানোর জন্য অপব্যবহার করা যেতে পারে।