অ্যান্ড্রয়েড গেমের জন্য সাইন-ইন করুন

Google Play গেম পরিষেবাগুলির কার্যকারিতা অ্যাক্সেস করার জন্য, আপনার গেমটিকে সাইন-ইন করা খেলোয়াড়ের অ্যাকাউন্ট সরবরাহ করতে হবে৷ এই ডকুমেন্টেশন বর্ণনা করে কিভাবে আপনার গেমে একটি বিরামহীন সাইন-ইন অভিজ্ঞতা বাস্তবায়ন করতে হয়।

প্লে গেমস পরিষেবা v2 SDK অনেকগুলি উন্নতি নিয়ে আসে যা আপনার গেমে সাইন ইন করা ব্যবহারকারীর সংখ্যা বাড়ায় এবং বিকাশকে সহজ করে তোলে:

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

প্লে গেম সার্ভিস সাইন ইন v2 এর সাথে নতুন ক্লায়েন্ট ইন্টিগ্রেশন

এই বিভাগটি দেখায় কিভাবে প্লে গেম সার্ভিস সাইন ইন v2 এর সাথে একটি নতুন ক্লায়েন্ট ইন্টিগ্রেশন করতে হয়।

প্লে গেম পরিষেবা SDK নির্ভরতা যোগ করুন

আপনার অ্যাপের রুট-লেভেল build.gradle ফাইলে Play Game Services SDK নির্ভরতা যোগ করুন। আপনি যদি Gradle ব্যবহার করেন, তাহলে আপনি নিম্নোক্তভাবে নির্ভরতা যোগ বা আপডেট করতে পারেন:

dependencies {
 implementation "com.google.android.gms:play-services-games-v2:+"
}

প্লে গেম পরিষেবা প্রকল্প আইডি সংজ্ঞায়িত করুন

আপনার অ্যাপে Play Games পরিষেবা SDK প্রোজেক্ট আইডি যোগ করতে, নিম্নলিখিত ধাপগুলি সম্পূর্ণ করুন:

  1. আপনার অ্যাপের AndroidManifest.xml ফাইলে, নিম্নলিখিত <meta-data> উপাদান এবং <application> উপাদানে গুণাবলী যোগ করুন:

    <manifest>
      <application>
        <meta-data android:name="com.google.android.gms.games.APP_ID"
                   android:value="@string/game_services_project_id"/>
      </application>
    </manifest>
    

    স্ট্রিং রিসোর্স রেফারেন্স @string/game_services_project_id আপনার গেমের গেম পরিষেবা প্রকল্প আইডি মান হিসাবে ব্যবহার করে সংজ্ঞায়িত করুন। আপনার গেম পরিষেবা প্রকল্প আইডি Google Play কনসোলের কনফিগারেশন পৃষ্ঠায় আপনার গেমের নামের নিচে পাওয়া যাবে।

  2. আপনার res/values/strings.xml ফাইলে, একটি স্ট্রিং রিসোর্স রেফারেন্স যোগ করুন এবং মান হিসাবে আপনার প্রকল্প আইডি সেট করুন। Google Play Console-এ, আপনি কনফিগারেশন পৃষ্ঠায় আপনার গেমের নামের নিচে আপনার প্রোজেক্ট আইডি খুঁজে পেতে পারেন। যেমন:

    <!-- res/values/strings.xml -->
    <resources>
      <!-- Replace 0000000000 with your game’s project id. Example value shown above.  -->
      <string translatable="false"  name="game_services_project_id"> 0000000000 </string>
    </resources>
    

SDK আরম্ভ করুন

আপনার Application ক্লাসের onCreate(..) কলব্যাকে Play Games SDK চালু করুন৷

import com.google.android.gms.games.PlayGamesSdk;

...

@Override
public void onCreate() {
  super.onCreate();
  PlayGamesSdk.initialize(this);
}

সাইন ইন ফলাফল পান

আপনার গেমটি চালু হলে, এটি সর্বদা ব্যবহারকারীকে সাইন ইন করার চেষ্টা করবে৷ ব্যবহারকারীকে প্রমাণীকরণ করতে, আপনাকে অবশ্যই যাচাই করতে হবে যে ব্যবহারকারী সফলভাবে সাইন ইন করেছেন এবং তারপর তাদের প্লেয়ার আইডি পান।

সাইন ইন করার প্রচেষ্টা যাচাই করতে, GamesSignInClient.isAuthenticated() কল করুন এবং ফলাফলগুলি পুনরুদ্ধার করতে addOnCompleteListener ব্যবহার করুন৷ যেমন:

GamesSignInClient gamesSignInClient = PlayGames.getGamesSignInClient(getActivity());

gamesSignInClient.isAuthenticated().addOnCompleteListener(isAuthenticatedTask -> {
  boolean isAuthenticated =
    (isAuthenticatedTask.isSuccessful() &&
     isAuthenticatedTask.getResult().isAuthenticated());

  if (isAuthenticated) {
    // Continue with Play Games Services
  } else {
    // Disable your integration with Play Games Services or show a
    // login button to ask  players to sign-in. Clicking it should
    // call GamesSignInClient.signIn().
  }
});

গেমটি চালু হওয়ার সময় ব্যবহারকারী যদি সাইন ইন না করা বেছে নেন, তাহলে আপনি ঐচ্ছিকভাবে প্লে গেমস আইকন সহ একটি বোতাম দেখানো চালিয়ে যেতে বেছে নিতে পারেন এবং ব্যবহারকারী বোতাম টিপে GamesSignInClient.signIn() এ কল করে আবার ব্যবহারকারীকে সাইন ইন করার চেষ্টা করতে পারেন।

ব্যবহারকারী সাইন ইন করেছেন তা যাচাই করার পরে, আপনি ব্যবহারকারীকে সনাক্ত করতে প্লেয়ার আইডি পুনরুদ্ধার করতে পারেন। যেমন:

PlayGames.getPlayersClient(activity).getCurrentPlayer().addOnCompleteListener(mTask -> {
    // Get PlayerID with mTask.getResult().getPlayerId()
  }
);