Google 致力于为黑人社区推动种族平等。查看具体举措

আপনার সি ++ প্রকল্পে ফায়ারবেস যুক্ত করুন

আপনার ফায়ারবেস সি ++ এসডিকে দিয়ে আপনার সি ++ গেমসকে শক্তিশালী করুন যা আইওএস এবং অ্যান্ড্রয়েডের জন্য ফায়ারবেসের শীর্ষে একটি সি ++ ইন্টারফেস সরবরাহ করে।

প্ল্যাটফর্ম-নেটিভ কোড না লিখে আপনার সি ++ কোড থেকে সম্পূর্ণ ফায়ারবেস অ্যাক্সেস করুন। ফায়ারবেস এসডিকে সি ++ বিকাশকারীদের সাথে পরিচিত আরও একটি ইন্টারফেসে ফায়ারবেস দ্বারা ব্যবহৃত অনেক ভাষা-নির্দিষ্ট আইডিয়াম অনুবাদ করে।

আমাদের এ Firebase সঙ্গে আপনার গেমস আপ powering সম্পর্কে আরো তথ্য দেখুন Firebase গেম পৃষ্ঠা

ইতিমধ্যে আপনার C ++ প্রকল্পে Firebase যোগ করেছেন? নিশ্চিত করুন যে আপনি সর্বশেষ সংস্করণ ব্যবহার করছেন করুন Firebase সি ++ SDK এর

পূর্বশর্ত

  • নিম্নলিখিত ইনস্টল করুন:

    • এক্সকোড 12 বা তারপরে
    • কোকোপডগুলি 1.10.0 বা তার পরে
  • নিশ্চিত করুন যে আপনার প্রকল্প আইওএস 10 বা তার পরে লক্ষ্য করে।

  • একটি শারীরিক আইওএস ডিভাইস সেট আপ করুন বা আপনার অ্যাপ্লিকেশন চালানোর জন্য আইওএস সিমুলেটর ব্যবহার করুন।

  • Firebase সাইন ইন করুন আপনার Google অ্যাকাউন্ট ব্যবহার করে।

ধাপ 2: একটি Firebase প্রকল্প তৈরি করুন

আপনি আপনার সি ++ প্রকল্পে ফায়ারবেস যুক্ত করার আগে আপনার সি ++ প্রকল্পের সাথে সংযোগ স্থাপনের জন্য আপনাকে ফায়ারবেস প্রকল্প তৈরি করতে হবে। পরিদর্শন বুঝুন Firebase প্রকল্প Firebase প্রকল্পগুলি সম্পর্কে আরও জানতে।

ধাপ 3: Firebase মাধ্যমে আপনার অ্যাপ্লিকেশন নিবন্ধন

আপনার ফায়ারবেস প্রকল্পের পরে, আপনি এটিতে আপনার আইওএস অ্যাপ যুক্ত করতে পারেন।

পরিদর্শন বুঝুন Firebase প্রকল্প একটি Firebase প্রকল্পে অ্যাপ্লিকেশান যোগ করে, কীভাবে একাধিক বিল্ড রূপগুলো হ্যান্ডেল করতে সহ সর্বোত্তম কার্যাভ্যাস এবং বিবেচনার সম্পর্কে আরো জানতে।

  1. যান Firebase কনসোল

  2. প্রকল্পের ওভারভিউ পৃষ্ঠার কেন্দ্রে, আইওএস আইকন (ক্লিক সেটআপ কর্মপ্রবাহ আরম্ভ করার জন্য)।

    আপনি ইতিমধ্যেই আপনার Firebase প্রকল্পে একটি অ্যাপ্লিকেশন যোগ করে থাকেন, প্ল্যাটফর্ম অপশন প্রদর্শন করে অ্যাপ্লিকেশান যোগ ক্লিক করুন।

  3. আইডি ক্ষেত্র বান্ডিল আইওএস আপনার অ্যাপ্লিকেশনের বান্ডিল আইডি লিখুন।

  4. অ্যাপ ডাক নাম এবং App স্টোর বা দোকান আইডি: (ঐচ্ছিক) অন্যান্য অ্যাপ্লিকেশনে তথ্য লিখুন।

  5. নিবন্ধন অ্যাপ্লিকেশন ক্লিক করুন।

ধাপ 4: Firebase কনফিগারেশন ফাইল যোগ করুন

  1. আপনার Firebase আইওএস কনফিগ ফাইল প্রাপ্ত করার ডাউনলোড GoogleService-Info.plist ক্লিক করুন।

  2. আপনার C ++ প্রকল্পটি একটি IDE তে খুলুন, তারপরে আপনার কনফিগ ফাইলটি আপনার C ++ প্রকল্পের মূলের মধ্যে টেনে আনুন।

  3. যদি অনুরোধ করা হয়, সমস্ত লক্ষ্যগুলিতে কনফিগ ফাইল যুক্ত করতে নির্বাচন করুন।

আপনি ফায়ারবেস কনসোলে সেট আপ করা কাজগুলি সম্পন্ন করেছেন। চালিয়ে যাও Firebase সি ++ SDK আছে যোগ করুন ক্লিক করুন।

পদক্ষেপ 5: Firebase সি ++ SDK আছে যোগ করুন

এই বিভাগে পদক্ষেপ জুড়তে কিভাবে একটি উদাহরণ আছে সমর্থিত Firebase পণ্য আপনার Firebase সি ++ প্রকল্পে।

  1. ডাউনলোড Firebase সি ++ SDK এর , তারপর SDK এর কোথাও সুবিধাজনক আনজিপ।

    ফায়ারবেস সি ++ এসডিকে প্ল্যাটফর্ম-নির্দিষ্ট নয়, তবে এতে প্ল্যাটফর্ম-নির্দিষ্ট লাইব্রেরি রয়েছে।

  2. Firebase যোগ pods আনজিপ SDK থেকে।

    1. একটি Podfile তৈরী করতে যদি ইতিমধ্যে আপনার একটি না:

      cd your-app-directory
      pod init

    2. আপনার পোডফাইলে, আপনি আপনার অ্যাপ্লিকেশনটিতে ব্যবহার করতে চান এমন ফায়ারবেস শুঁটি যুক্ত করুন।

      বিশ্লেষণ সক্ষম

      # Add the Firebase pod for Google Analytics
      pod 'Firebase/Analytics'
      # Add the pods for any other Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database pod 'Firebase/Auth' pod 'Firebase/Database'

      বিশ্লেষণ সক্ষম নয়

      # Add the pods for the Firebase products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      pod 'Firebase/Auth'
      pod 'Firebase/Database'
    3. Pods ইনস্টল করুন, তারপর ওপেন .xcworkspace Xcode ফাইল।

      pod install
      open your-app.xcworkspace

  3. Firebase যোগ অবকাঠামো আনজিপ SDK থেকে।

    সবচেয়ে সহজ উপায় এই অবকাঠামো যোগ করার জন্য তাদের একটি থেকে টেনে আনতে সাধারণত Finder (; শীর্ষ-বাম Xcode এর অথবা ক্লিক ফাইল আইকন, সুদূর বাম পেইন ডিফল্ট অনুসারে) উইন্ডো Xcode প্রকল্প ন্যাভিগেটর ফলকে সরাসরি।

    1. Firebase সি ++ ফ্রেমওয়ার্ক যোগ firebase.framework , যা কোনো Firebase পণ্য ব্যবহার করা আবশ্যক।

    2. আপনি যে ফায়ারবেস পণ্যটি ব্যবহার করতে চান তার জন্য কাঠামো যুক্ত করুন। উদাহরণস্বরূপ, Firebase প্রমাণীকরণ ব্যবহার করতে, যোগ firebase_auth.framework

  4. Firebase কনসোলে পিছনে, সেটআপ কর্মপ্রবাহ মধ্যে, Next ক্লিক করুন।

  5. যদি আপনি অ্যানালিটিকস যুক্ত করেন তবে ফায়ারবেস যা আপনি সফলভাবে ফায়ারবেসকে একীভূত করেছেন তা যাচাইকরণ করতে আপনার অ্যাপ্লিকেশনটি চালান। অন্যথায়, আপনি এই যাচাইকরণ পদক্ষেপটি এড়িয়ে যেতে পারেন।

    আপনার ডিভাইস লগগুলি ফায়ারবেস যাচাইকরণ প্রদর্শন করবে যে সূচনাটি সম্পূর্ণ ization আপনি একটি এমুলেটর নেটওয়ার্ক অ্যাক্সেস আছে যা এ আপনার অ্যাপ দৌড়ে পারেন, Firebase কনসোল আপনার অ্যাপ সংযোগ সম্পূর্ণ হলে সূচিত আপনি যে।

আপনি সব সেট! আপনার সি ++ অ্যাপটি ফায়ারবেস পণ্যগুলি ব্যবহারের জন্য নিবন্ধিত এবং কনফিগার করা হয়েছে।

উপলব্ধ গ্রন্থাগারগুলি

মধ্যে সি ++ Firebase লাইব্রেরি সম্পর্কে আরো জানুন রেফারেন্স ডকুমেন্টেশন এবং আমাদের ওপেন সোর্স SDK এর রিলিজে GitHub

আইওএসের জন্য উপলব্ধ গ্রন্থাগারগুলি

লক্ষ্য করুন Android এর জন্য সি ++ লাইব্রেরি তালিকাভুক্ত করা হয় এই সেটআপ পৃষ্ঠার Android সংস্করণ

প্রতিটি ফায়ারবেস পণ্যের বিভিন্ন নির্ভরতা রয়েছে। আপনার পোডফিল এবং সি ++ প্রকল্পে কাঙ্ক্ষিত ফায়ারবেস পণ্যটির জন্য সমস্ত তালিকাভুক্ত নির্ভরতা যুক্ত করতে ভুলবেন না।

ফায়ারবেস পণ্য ফ্রেমওয়ার্ক এবং পডস
অ্যাডমব (প্রয়োজন) firebase.framework
firebase_admob.framework
(প্রয়োজন) firebase_analytics.framework

pod 'Firebase/AdMob', '8.4.0'
(প্রয়োজন) pod 'Firebase/Analytics', '8.4.0'
বিশ্লেষণ (প্রয়োজন) firebase.framework
firebase_analytics.framework

pod 'Firebase/Analytics', '8.4.0'
প্রমাণীকরণ (প্রয়োজন) firebase.framework
firebase_auth.framework

pod 'Firebase/Auth', '8.4.0'
ক্লাউড Firestore (বিটা) (প্রয়োজন) firebase.framework
firebase_firestore.framework
firebase_auth.framework

pod 'Firebase/Firestore', '8.4.0'
pod 'Firebase/Auth', '8.4.0'
মেঘ ফাংশন (প্রয়োজন) firebase.framework
firebase_functions.framework

pod 'Firebase/Functions', '8.4.0'
ক্লাউড মেসেজিং (প্রয়োজন) firebase.framework
firebase_messaging.framework
(প্রস্তাবিত) firebase_analytics.framework

pod 'Firebase/Messaging', '8.4.0'
(প্রস্তাবিত) pod 'Firebase/Analytics', '8.4.0'
মেঘ স্টোরেজ (প্রয়োজন) firebase.framework
firebase_storage.framework

pod 'Firebase/Storage', '8.4.0'
ডায়নামিক লিংক (প্রয়োজন) firebase.framework
firebase_dynamic_links.framework
(প্রস্তাবিত) firebase_analytics.framework

pod 'Firebase/DynamicLinks', '8.4.0'
(প্রস্তাবিত) pod 'Firebase/Analytics', '8.4.0'
রিয়েলটাইম ডাটাবেস (প্রয়োজন) firebase.framework
firebase_database.framework

pod 'Firebase/Database', '8.4.0'
রিমোট কনফিগারেশন (প্রয়োজন) firebase.framework
firebase_remote_config.framework
(প্রস্তাবিত) firebase_analytics.framework

pod 'Firebase/RemoteConfig', '8.4.0'
(প্রস্তাবিত) pod 'Firebase/Analytics', '8.4.0'

মোবাইল সেটআপের জন্য অতিরিক্ত তথ্য

পদ্ধতি সুইজলিং

আইওএস -এ, কিছু অ্যাপ্লিকেশন ইভেন্ট (যেমন ইউআরএল খোলা এবং বিজ্ঞপ্তি গ্রহণ) নির্দিষ্ট পদ্ধতি বাস্তবায়নের জন্য আপনার আবেদন প্রতিনিধি প্রয়োজন। উদাহরণস্বরূপ, একটি বিজ্ঞপ্তিটি পাচ্ছেন বাস্তবায়ন আপনার আবেদন প্রতিনিধি দরকার হবে application:didReceiveRemoteNotification: । কারণ প্রতিটি আইওএস অ্যাপ্লিকেশন নিজস্ব অ্যাপ্লিকেশন প্রতিনিধি আছে, Firebase পদ্ধতি swizzling, যা পরস্পর পদ্ধতি প্রতিস্থাপন, কোন যে আপনার বাস্তবায়িত হতে পারে ছাড়াও নিজস্ব হ্যান্ডেলার সংযুক্ত করতে পারবেন ব্যবহার করে।

ডায়নামিক লিঙ্ক এবং ক্লাউড মেসেজিং লাইব্রেরিগুলিকে পদ্ধতি সুইজলিং ব্যবহার করে অ্যাপ্লিকেশন প্রতিনিধিটির সাথে হ্যান্ডলার সংযুক্ত করা দরকার। এইসব Firebase পণ্য কোন ব্যবহার করেন, তাহলে বোঝা সময়ে Firebase আপনার শনাক্ত করবে AppDelegate বর্গ এবং এটি সম্মুখের দিকে প্রয়োজনীয় পদ্ধতি পাঁচমিশালী মদ্যবিশেষ আপনার বিদ্যমান পদ্ধতি বাস্তবায়ন করার জন্য একটি কল ব্যাক chaining।

একটি ডেস্কটপ কর্মপ্রবাহ (বিটা) সেট আপ করুন

আপনি যখন একটি গেম তৈরি করছেন, ডেস্কটপ প্ল্যাটফর্মগুলিতে আপনার গেমটি পরীক্ষা করা প্রায়শই সহজ easier এই ওয়ার্কফ্লোটি সমর্থন উদ্দেশ্যে আমরা আপনাকে প্রদান Firebase সি ++ SDK আছে এর উপসেট যা উইন্ডোস, MacOS, লিনাক্স, এবং C মধ্যে ++ থেকে সম্পাদক চলতে পারে।

  1. ডেস্কটপ কর্মপ্রবাহের জন্য, আপনাকে নিম্নলিখিতগুলি সম্পূর্ণ করতে হবে:

    1. CMake এর জন্য আপনার C ++ প্রকল্প কনফিগার করুন।
    2. ফায়ারবেস প্রকল্প তৈরি করুন
    3. ফায়ারবেস দিয়ে আপনার অ্যাপ্লিকেশন (আইওএস বা অ্যান্ড্রয়েড) নিবন্ধন করুন
    4. একটি মোবাইল-প্ল্যাটফর্ম ফায়ারবেস কনফিগারেশন ফাইল যুক্ত করুন
  2. Firebase কনফিগারেশন ফাইলের একটি ডেস্কটপ সংস্করণ তৈরি করুন:

    • আপনি Android যোগ করেন, তাহলে google-services.json ফাইল - আপনি আপনার অ্যাপ্লিকেশন চালানোর তখন Firebase এই মোবাইল ফাইল অবস্থান নির্ণয় করে, তারপর স্বয়ংক্রিয়ভাবে একটি ডেস্কটপ Firebase কনফিগ ফাইল (উত্পন্ন google-services-desktop.json )।

    • আপনি iOS যোগ করেন, তাহলে GoogleService-Info.plist ফাইল - আগে আপনি আপনার অ্যাপ্লিকেশন চালানোর জন্য, আপনি একটি ডেস্কটপ Firebase কনফিগ ফাইলে এই মোবাইল ফাইলে রূপান্তর করতে হবে। ফাইলে রূপান্তর করতে, আপনার মত একই ডিরেক্টরি থেকে নিম্নলিখিত কমান্ড ব্যবহার GoogleService-Info.plist ফাইল:

      generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist

    এই ডেস্কটপ কনফিগারেশন ফাইলে সি ++ প্রজেক্ট আইডি রয়েছে যা আপনি ফায়ারবেস কনসোল সেটআপ ওয়ার্কফ্লোতে প্রবেশ করেছেন। পরিদর্শন বুঝুন Firebase প্রকল্প কনফিগ ফাইল সম্পর্কে আরও জানতে।

  3. আপনার C ++ প্রকল্পে Firebase SDK যোগ করুন।

    নীচের পদক্ষেপগুলি কিভাবে কোন যোগ করার জন্য একটি উদাহরণ হিসেবে পরিবেশন সমর্থিত Firebase পণ্য আপনার সি ++ প্রকল্পে। এই উদাহরণে, আমরা ফায়ারবেস প্রমাণীকরণ এবং ফায়ারবেস রিয়েলটাইম ডেটাবেস যোগ করার মধ্য দিয়ে চলেছি।

    1. আপনার সেট FIREBASE_CPP_SDK_DIR আনজিপ Firebase সি ++ SDK এর অবস্থান এনভায়রনমেন্ট ভেরিয়েবল।

    2. আপনার প্রকল্পের এর CMakeLists.txt ফাইল, নিম্নলিখিত বিষয়বস্তু যোগ সহ লাইব্রেরি Firebase পণ্য যা আপনি ব্যবহার করতে চান তাদের জন্য। উদাহরণস্বরূপ, ফায়ারবেস প্রমাণীকরণ এবং ফায়ারবেস রিয়েলটাইম ডেটাবেস ব্যবহার করতে:

      # Add Firebase libraries to the target using the function from the SDK.
      add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
      
      # The Firebase C++ library `firebase_app` is required,
      # and it must always be listed last.
      
      # Add the Firebase SDKs for the products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      set(firebase_libs firebase_auth firebase_database firebase_app)
      target_link_libraries(${target_name} "${firebase_libs}")
      
  4. আপনার সি ++ অ্যাপ্লিকেশন চালান।

উপলব্ধ গ্রন্থাগার (ডেস্কটপ)

Firebase সি ++ SDK এর অন্তর্ভুক্ত ডেস্কটপ কর্মপ্রবাহ সমর্থন , বৈশিষ্ট্য একটি উপসেট জন্য Firebase কিছু অংশে সক্রিয় স্বতন্ত্র ডেস্কটপ ব্যবহৃত হবে উইন্ডোস, MacOS, এবং লিনাক্স তৈরী করে।

ফায়ারবেস পণ্য গ্রন্থাগারের তথ্যসূত্র (সিএমকে ব্যবহার করে)
প্রমাণীকরণ firebase_auth
(প্রয়োজন) firebase_app
ক্লাউড Firestore (বিটা) firebase_firestore
firebase_auth
firebase_app
মেঘ ফাংশন firebase_functions
(প্রয়োজন) firebase_app
মেঘ স্টোরেজ firebase_storage
(প্রয়োজন) firebase_app
রিয়েলটাইম ডাটাবেস firebase_database
(প্রয়োজন) firebase_app
রিমোট কনফিগারেশন firebase_remote_config
(প্রয়োজন) firebase_app

ফায়ারবেস উইন্ডোজ, ম্যাকোস এবং লিনাক্সের জন্য নির্মাণের সময় সুবিধার্থে অবশিষ্ট ডেস্কটপ লাইব্রেরিগুলিকে স্টাব (অ-কার্যকরী) রূপান্তর হিসাবে সরবরাহ করে। অতএব, ডেস্কটপকে টার্গেট করতে আপনার শর্তাধীন কোড সংকলন করার দরকার নেই।

রিয়েলটাইম ডাটাবেস ডেস্কটপ

ডেস্কটপের জন্য রিয়েলটাইম ডাটাবেস SDK এর সাহায্যে, আপনার ডাটাবেস অ্যাক্সেস বিশ্রাম ব্যবহার যাতে আপনি আবশ্যক ইনডেক্স ঘোষণা যে আপনার সাথে ব্যবহার Query::OrderByChild() ডেস্কটপ বা আপনার শ্রোতাকে ব্যর্থ হবে।

ডেস্কটপ সেটআপের জন্য অতিরিক্ত তথ্য

উইন্ডোজ লাইব্রেরি

উইন্ডোজের জন্য, লাইব্রেরির সংস্করণগুলি নিম্নলিখিতগুলির উপর ভিত্তি করে সরবরাহ করা হয়:

  • প্ল্যাটফর্ম তৈরি করুন: 32-বিট (x86) বনাম 64-বিট (x64) মোড
  • উইন্ডোজ রানটাইম এনভায়রনমেন্ট: মাল্টিথ্রেডেড / এমটি বনাম মাল্টিথ্রেডেড ডিএলএল / এমডি
  • লক্ষ্য: রিলিজ বনাম ডিবাগ

নোট করুন যে নিম্নলিখিত গ্রন্থাগারগুলি ভিজ্যুয়াল স্টুডিও 2015 এবং 2017 ব্যবহার করে পরীক্ষা করা হয়েছিল।

উইন্ডোজে সি ++ ডেস্কটপ অ্যাপ্লিকেশনগুলি তৈরি করার সময়, নিম্নলিখিত প্রকল্পগুলিকে আপনার প্রকল্পের সাথে যুক্ত করুন। আরও তথ্যের জন্য আপনার সংকলক ডকুমেন্টেশন পরামর্শ।

ফায়ারবেস সি ++ লাইব্রেরি উইন্ডোজ এসডিকে লাইব্রেরি নির্ভরতা
প্রমাণীকরণ advapi32, ws2_32, crypt32
ক্লাউড ফায়ার স্টোর advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32
মেঘ ফাংশন advapi32, ws2_32, crypt32, rpcrt4, ole32
মেঘ স্টোরেজ advapi32, ws2_32, crypt32
রিয়েলটাইম ডাটাবেস advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv
রিমোট কনফিগারেশন advapi32, ws2_32, crypt32, rpcrt4, ole32

ম্যাকোস লাইব্রেরি

ম্যাকোস (ডারউইন) এর জন্য লাইব্রেরি সংস্করণগুলি 64-বিট (x86_64) প্ল্যাটফর্মের জন্য সরবরাহ করা হয়। আপনার সুবিধার জন্য ফ্রেমওয়ার্কও সরবরাহ করা হয়েছে।

লক্ষ্য করুন যে ম্যাকোস লাইব্রেরিগুলি এক্সকোড 12 ব্যবহার করে পরীক্ষা করা হয়েছে।

ম্যাকোসে সি ++ ডেস্কটপ অ্যাপ্লিকেশনগুলি তৈরি করার সময়, নিম্নলিখিতটি আপনার প্রকল্পের সাথে লিঙ্ক করুন:

  • pthread সিস্টেম গ্রন্থাগার
  • CoreFoundation MacOS সিস্টেম কাঠামো
  • Foundation MacOS সিস্টেম কাঠামো
  • Security MacOS সিস্টেম কাঠামো
  • GSS MacOS সিস্টেম কাঠামো
  • Kerberos MacOS সিস্টেম কাঠামো
  • SystemConfiguration MacOS সিস্টেম কাঠামো

আরও তথ্যের জন্য আপনার সংকলক ডকুমেন্টেশন পরামর্শ।

লিনাক্স লাইব্রেরি

লিনাক্সের জন্য, লাইব্রেরির সংস্করণগুলি 32-বিট (i386) এবং 64-বিট (x86_64) প্ল্যাটফর্মগুলির জন্য সরবরাহ করা হয়।

নোট করুন যে লিনাক্স গ্রন্থাগারগুলি উবুন্টুতে জিসিসি 4.8.0, জিসিসি 7.2.0 এবং ক্ল্যাং 5.0 ব্যবহার করে পরীক্ষা করা হয়েছিল।

যখন লিনাক্স সি ++ ডেস্কটপ অ্যাপ্লিকেশন নির্মাণ করে, লিংক pthread আপনার প্রকল্পের সিস্টেম গ্রন্থাগার। আরও তথ্যের জন্য আপনার কম্পাইলার ডকুমেন্টেশন দেখুন। আপনি যদি জিসিসি 5 বা পরে সাথে এসেছেন বিল্ডিং, সংজ্ঞায়িত -D_GLIBCXX_USE_CXX11_ABI=0

পরবর্তী পদক্ষেপ