v2 নেটিভ সি অথবা সি++ সেট আপ করুন

এই ডকুমেন্টটি আপনাকে v2 নেটিভ C বা C++ এর জন্য আপনার C++ প্রজেক্ট সেট আপ করতে এবং অথেনটিকেশন সার্ভিস যাচাই করতে সাহায্য করে।

শুরু করার আগে

আপনাকে গুগল প্লে কনসোলে প্লে গেমস সার্ভিসেস সেট আপ করতে হবে।

অ্যাপের পূর্বশর্ত

নিশ্চি�� করুন যে আপনার অ্যাপের বিল্ড ফাইলে নিম্নলিখিত মানগুলি ব্যবহৃত হয়েছে:

  • minSdkVersion 19 বা তার বেশি
  • compileSdkVersion 28 বা তার বেশি

আপনার গেম প্রজেক্টটি সেট আপ করুন

আপনার গেম প্রজেক্টটি সেট আপ করতে নিচের ধাপগুলো সম্পন্ন করুন।

build.gradle আপডেট করুন

আপনার অ্যাপ-স্তরের build.gradle ফাইলে নিম্নলিখিত কাজগুলো করুন:

  • প্রিফ্যাব বিল্ড ফিচারটি সক্রিয় আছে কিনা তা নিশ্চিত করুন।

  • v2 নেটিভ SDK (বিটা)-এর জন্য নির্ভরতা যোগ করুন:

    • com.google.android.gms:play-services-games-v2-native-c:21.0.0-beta1

এখানে একটি উদাহরণ দেওয়া হলো:

  android {
    ...
    buildFeatures {
      prefab true
    }
    ...
  }
  dependencies {
    ...
    implementation "com.google.android.gms:play-services-games-v2-native-c:21.0.0-beta1"
  }

CMakeLists.txt আপডেট করুন

আপনার CMakeLists.txt ফাইলে নিম্নলিখিত কোডটি যোগ করুন:

  find_package(com.google.android.gms.games.v2.c REQUIRED CONFIG)

  // link games_static for -DANDROID_STL=c++_static or default
  // link games_shared for -DANDROID_STL=c++_shared
  target_link_libraries(
    app PUBLIC com.google.android.gms.games.v2.c::games_static)

AndroidManifest.xml আপডেট করুন

  1. আপনার AndroidManifest.xml ফাইলে Play Games Services প্রোজেক্ট আইডি নির্ধারণ করতে, নিম্নলিখিত লাইনগুলো যোগ করুন:

    <manifest>
      <application>
        <meta-data android:name="com.google.android.gms.games.APP_ID"
                   android:value="@string/game_services_project_id"/>
      </application>
    </manifest>
    
  2. আপনার প্রজেক্ট আইডির জন্য একটি স্ট্রিং রিসো��্স তৈরি করুন। এটি আপনার গেমকে বিল্ড করার সময় আইডিটি অ্যাক্সেস করতে সাহায্য করবে। রিসোর্সটি তৈরি করতে, project_root /app/src/main/res/values/games-ids.xml ফাইলটি তৈরি করুন এবং নিম্নলিখিত কোডটি যোগ করুন:

    <?xml version="1.0" encoding="utf-8"?>
    <resources>
        <string name="game_services_project_id"
                translatable="false">add your Project ID here</string>
    </resources>
    
  3. আপনার গেমটি তৈরি ও পরীক্ষা করুন। সফল হলে, গেমটি চালু করার সময় একটি সাইন-ইন প্রম্পট অথবা একটি সফল সাইন-ইন ব্যানার প্রদর্শিত হবে।

সাইন-ইন প্রম্পটটি পুনরায় চালু করুন

আপনার গেম চালু হওয়ার সময় স্বয়ংক্রিয়ভাবে প্রদর্শিত প্রাথমিক প্লে গেমস সার্ভিসেস সাইন-ইন প্রম্পটটি যদি কোনো খেলোয়াড় প্রত্যাখ্যান করেন, তবে গেম সেশন চলাকালীন তিনি তার সিদ্ধান্ত পরিবর্তন করতে পারেন। যতক্ষণ পর্যন্ত কোনো খেলোয়াড় প্রমাণীকৃত না থাকেন, ততক্ষণ আপনি PgsGamesSignInClient_signIn কল করে সাইন-ইন প্রম্পটটি পুনরায় চালু করতে পারেন।

গেম সার্ভার অনুমোদন

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

আরও তথ্যের জন্য, সার্ভার অ্যাক্সেস নির্দেশিকা দেখুন।