গুগল প্লে গেমস সার্ভিসেসের কার্যকারিতা অ্যাক্সেস করার জন্য, আপনার গেমটিকে প্রমাণীকৃত খেলোয়াড়ের অ্যাকাউন্ট সরবরাহ করতে হবে। এই ডকুমেন্টেশনটি আপনার গেমটিতে একটি নির্বিঘ্ন প্রমাণীকরণ অভিজ্ঞতা কীভাবে বাস্তবায়ন করবেন তা বর্ণনা করে।
Play Games Services v2 SDK বেশ কিছু উন্নতি এনেছে যা আপনার গেমে প্রমাণীকরণকৃত ব্যবহারকারীর সংখ্যা বৃদ্ধি করে এবং ডেভেলপমেন্টকে সহজ করে তোলে:
- ব্যবহারকারীদের জন্য উন্নতি:
- একটি ডিফল্ট অ্যাকাউন্ট নির্বাচন করার পরে, ব্যবহারকারীদের কোনও প্রম্পটের সাথে ইন্টারঅ্যাক্ট না করেই প্রমাণীকরণ করা হয়।
- ব্যবহারকারীদের আর প্লে গেমস পরিষেবার সাথে প্রমাণীকরণের জন্য প্লে গেমস অ্যাপ ডাউনলোড করতে হবে না বা একটি নতুন অ্যাকাউন্ট তৈরি করতে হবে না।
- ব্যবহারকারীরা এখন একই পৃষ্ঠা থেকে একাধিক গেমের জন্য তাদের প্লে গেমস সার্ভিসেস অ্যাকাউন্ট পরিচালনা করতে পারবেন।
- ডেভেলপারদের জন্য উন্নতি:
- ক্লায়েন্ট কোডকে আর প্রমাণীকরণ বা সাইন-আউট প্রবাহ পরিচালনা করতে হবে না, কারণ গেমটি শুরু হলে লগইন স্বয়ংক্রিয়ভাবে ট্রিগার হয় এবং অ্যাকাউন্ট পরিচালনা OS সেটিংসে পরিচালিত হয়।
নতুন ক্লায়েন্ট ইন্টিগ্রেশন
এই বিভাগটি দেখায় কিভাবে Play Games Services Sign In v2 এর সাথে একটি নতুন ক্লায়েন্ট ইন্টিগ্রেশন করতে হয়।
নির্ভরতা যোগ করুন
আপনার অ্যাপের রুট-লেভেল build.gradle ফাইলে Play Game Services SDK নির্ভরতা যোগ করুন। আপনি যদি Gradle ব্যবহার করেন, তাহলে আপনি নিম্নরূপ নির্ভরতা যোগ বা আপডেট করতে পারেন:
dependencies {
implementation "com.google.android.gms:play-services-games-v2:+"
}
প্রকল্প আইডি নির্ধারণ করুন
আপনার অ্যাপে Play Games Services SDK প্রজেক্ট আইডি যোগ করতে, নিম্নলিখিত ধাপগুলি সম্পূর্ণ করুন:
আপনার অ্যাপের
AndroidManifest.xmlফাইলে,<application>এলিমেন্টে নিম্নলিখিত<meta-data>এলিমেন্ট এবং অ্যাট্রিবিউট যোগ করুন:<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নির্ধারণ করুন। আপনার গেমস সার্ভিসেস প্রজেক্ট আইডি গুগল প্লে কনসোলের কনফিগারেশন পৃষ্ঠায় আপনার গেমের নামের অধীনে পাওয়া যাবে।আপনার
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 {
// Show a sign-in button to ask players to authenticate. Clicking it should
// call GamesSignInClient.signIn().
}
});
যদি ব্যবহারকারী গেমটি চালু হওয়ার সময় প্রমাণীকরণ না করার সিদ্ধান্ত নেন, তাহলে আপনাকে Play Games আইকন সহ একটি বোতাম দেখানো চালিয়ে যেতে হবে অথবা ব্যবহারকারীকে একটি সাইন-ইন স্ক্রিন দেখাতে হবে যেখানে প্রমাণীকরণ বিকল্পগুলির মধ্যে একটি হিসাবে Play Games আইকন সহ একটি বোতাম রয়েছে এবং ব্যবহারকারী বোতামটি টিপলে GamesSignInClient.signIn() এ কল করে ব্যবহারকারীকে আবার প্রমাণীকরণ করার চেষ্টা করতে হবে। ব্যবহারকারী প্রমাণীকরণ করেছেন কিনা তা যাচাই করার পরে, আপনি ব্যবহারকারীকে সনাক্ত করার জন্য প্লেয়ার আইডি পুনরুদ্ধার করতে পারেন। উদাহরণস্বরূপ:
PlayGames.getPlayersClient(activity).getCurrentPlayer().addOnCompleteListener(mTask -> {
// Get PlayerID with mTask.getResult().getPlayerId()
}
);