ভিজ্যুয়াল লিডারবোর্ড তৈরি করতে, প্লেয়ারের স্কোর রেকর্ড করতে এবং আগের গেম সেশন থেকে প্লেয়ারের স্কোরের সাথে স্কোর তুলনা করতে এই গাইডটি আপনাকে দেখায় কিভাবে একটি Android অ্যাপ্লিকেশনে লিডারবোর্ড API ব্যবহার করতে হয়। API গুলি com.google.android.gms.games
এবং com.google.android.gms.games.leaderboards
প্যাকেজে পাওয়া যাবে৷
আপনি শুরু করার আগে
আপনি যদি ইতিমধ্যে এটি না করে থাকেন, তাহলে লিডারবোর্ড গেমের ধারণাগুলি পর্যালোচনা করা আপনার সহায়ক বলে মনে হতে পারে।
লিডারবোর্ড এপিআই ব্যবহার করে কোড করা শুরু করার আগে:
- সেট আপ Google Play পরিষেবা SDK গাইডে Google Play গেম পরিষেবাগুলি ব্যবহার করতে আপনার অ্যাপ ইনস্টল এবং সেট আপ করার নির্দেশাবলী অনুসরণ করুন৷
- Google Play Console গাইডের নির্দেশাবলী অনুসরণ করে আপনি আপনার গেমটি প্রদর্শন বা আপডেট করতে চান এমন লিডারবোর্ডগুলিকে সংজ্ঞায়িত করুন।
- অ্যান্ড্রয়েড নমুনা পৃষ্ঠায় লিডারবোর্ড কোড নমুনা ডাউনলোড করুন এবং পর্যালোচনা করুন।
- কোয়ালিটি চেকলিস্টে বর্ণিত সুপারিশগুলির সাথে নিজেকে পরিচিত করুন৷
লিডারবোর্ড ক্লায়েন্ট পেয়ে
লিডারবোর্ড এপিআই ব্যবহার শুরু করতে, আপনার গেমটিকে প্রথমে একটি LeaderboardsClient
অবজেক্ট পেতে হবে। আপনি Games.getLeadeboardsClient()
পদ্ধতিতে কল করে এবং কার্যকলাপে পাস করে এটি করতে পারেন।
খেলোয়াড়ের স্কোর আপডেট করা হচ্ছে
যখন প্লেয়ারের স্কোর পরিবর্তিত হয় (উদাহরণস্বরূপ, খেলোয়াড় যখন গেমটি শেষ করে), তখন আপনার গেমটি লিডারবোর্ডে তাদের স্কোর আপডেট করতে পারে LeaderboardsClient.submitScore()
এ কল করে এবং লিডারবোর্ড আইডি এবং কাঁচা স্কোর মান পাস করে।
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে আপনার অ্যাপ প্লেয়ারের স্কোর আপডেট করতে পারে:
PlayGames.getLeaderboardsClient(this) .submitScore(getString(R.string.leaderboard_id), 1337);
একটি ভাল অভ্যাস হল আপনার strings.xml
ফাইলে লিডারবোর্ড আইডি সংজ্ঞায়িত করা, যাতে আপনার গেম রিসোর্স আইডি দ্বারা লিডারবোর্ড উল্লেখ করতে পারে। প্লেয়ার স্কোর আপডেট এবং লোড করার জন্য কল করার সময়, আপনার API কোটা অতিক্রম না করার জন্য এই সর্বোত্তম অনুশীলনগুলি অনুসরণ করতে ভুলবেন না।
একটি লিডারবোর্ড প্রদর্শন করা হচ্ছে
লিডারবোর্ড প্রদর্শন করতে, ডিফল্ট লিডারবোর্ড ব্যবহারকারী ইন্টারফেস তৈরি করার জন্য একটি Intent
পেতে LeaderboardsClient.getLeaderboardIntent()
এ কল করুন। আপনার গেম তারপর startActivityForResult
কল করে UI আনতে পারে।
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে আপনার অ্যাপ প্লেয়ারের স্কোর আপডেট করতে পারে। কোড স্নিপেটে, RC_LEADERBOARD_UI
হল অনুরোধ কোডের জন্য একটি নির্বিচারে পূর্ণসংখ্যা।
private static final int RC_LEADERBOARD_UI = 9004; private void showLeaderboard() { PlayGames.getLeaderboardsClient(this) .getLeaderboardIntent(getString(R.string.leaderboard_id)) .addOnSuccessListener(new OnSuccessListener<Intent>() { @Override public void onSuccess(Intent intent) { startActivityForResult(intent, RC_LEADERBOARD_UI); } }); }
লক্ষ্য করুন যে যদিও কোনো ফলাফল ফেরত না আসে, আমাদের startActivityForResult
ব্যবহার করতে হবে যাতে API কলিং প্যাকেজের পরিচয় পেতে পারে। ডিফল্ট লিডারবোর্ড UI এর একটি উদাহরণ নীচে দেখানো হয়েছে।
ভিজ্যুয়াল লিডারবোর্ড তৈরি করতে, প্লেয়ারের স্কোর রেকর্ড করতে এবং আগের গেম সেশন থেকে প্লেয়ারের স্কোরের সাথে স্কোর তুলনা করতে এই গাইডটি আপনাকে দেখায় কিভাবে একটি Android অ্যাপ্লিকেশনে লিডারবোর্ড API ব্যবহার করতে হয়। API গুলি com.google.android.gms.games
এবং com.google.android.gms.games.leaderboards
প্যাকেজে পাওয়া যাবে৷
আপনি শুরু করার আগে
আপনি যদি ইতিমধ্যে এটি না করে থাকেন, তাহলে লিডারবোর্ড গেমের ধারণাগুলি পর্যালোচনা করা আপনার সহায়ক বলে মনে হতে পারে।
লিডারবোর্ড এপিআই ব্যবহার করে কোড করা শুরু করার আগে:
- সেট আপ Google Play পরিষেবা SDK গাইডে Google Play গেম পরিষেবাগুলি ব্যবহার করতে আপনার অ্যাপ ইনস্টল এবং সেট আপ করার নির্দেশাবলী অনুসরণ করুন৷
- Google Play Console গাইডের নির্দেশাবলী অনুসরণ করে আপনি আপনার গেমটি প্রদর্শন বা আপডেট করতে চান এমন লিডারবোর্ডগুলিকে সংজ্ঞায়িত করুন।
- অ্যান্ড্রয়েড নমুনা পৃষ্ঠায় লিডারবোর্ড কোড নমুনা ডাউনলোড করুন এবং পর্যালোচনা করুন।
- কোয়ালিটি চেকলিস্টে বর্ণিত সুপারিশগুলির সাথে নিজেকে পরিচিত করুন৷
লিডারবোর্ড ক্লায়েন্ট পেয়ে
লিডারবোর্ড এপিআই ব্যবহার শুরু করতে, আপনার গেমটিকে প্রথমে একটি LeaderboardsClient
অবজেক্ট পেতে হবে। আপনি Games.getLeadeboardsClient()
পদ্ধতিতে কল করে এবং কার্যকলাপে পাস করে এটি করতে পারেন।
খেলোয়াড়ের স্কোর আপডেট করা হচ্ছে
যখন প্লেয়ারের স্কোর পরিবর্তিত হয় (উদাহরণস্বরূপ, খেলোয়াড় যখন গেমটি শেষ করে), তখন আপনার গেমটি লিডারবোর্ডে তাদের স্কোর আপডেট করতে পারে LeaderboardsClient.submitScore()
এ কল করে এবং লিডারবোর্ড আইডি এবং কাঁচা স্কোর মান পাস করে।
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে আপনার অ্যাপ প্লেয়ারের স্কোর আপডেট করতে পারে:
PlayGames.getLeaderboardsClient(this) .submitScore(getString(R.string.leaderboard_id), 1337);
একটি ভাল অভ্যাস হল আপনার strings.xml
ফাইলে লিডারবোর্ড আইডি সংজ্ঞায়িত করা, যাতে আপনার গেম রিসোর্স আইডি দ্বারা লিডারবোর্ড উল্লেখ করতে পারে। প্লেয়ার স্কোর আপডেট এবং লোড করার জন্য কল করার সময়, আপনার API কোটা অতিক্রম না করার জন্য এই সর্বোত্তম অনুশীলনগুলি অনুসরণ করতে ভুলবেন না।
একটি লিডারবোর্ড প্রদর্শন করা হচ্ছে
লিডারবোর্ড প্রদর্শন করতে, ডিফল্ট লিডারবোর্ড ব্যবহারকারী ইন্টারফেস তৈরি করার জন্য একটি Intent
পেতে LeaderboardsClient.getLeaderboardIntent()
এ কল করুন। আপনার গেম তারপর startActivityForResult
কল করে UI আনতে পারে।
নিম্নলিখিত কোড স্নিপেট দেখায় কিভাবে আপনার অ্যাপ প্লেয়ারের স্কোর আপডেট করতে পারে। কোড স্নিপেটে, RC_LEADERBOARD_UI
হল অনুরোধ কোডের জন্য একটি নির্বিচারে পূর্ণসংখ্যা।
private static final int RC_LEADERBOARD_UI = 9004; private void showLeaderboard() { PlayGames.getLeaderboardsClient(this) .getLeaderboardIntent(getString(R.string.leaderboard_id)) .addOnSuccessListener(new OnSuccessListener<Intent>() { @Override public void onSuccess(Intent intent) { startActivityForResult(intent, RC_LEADERBOARD_UI); } }); }
লক্ষ্য করুন যে যদিও কোনো ফলাফল ফেরত না আসে, আমাদের startActivityForResult
ব্যবহার করতে হবে যাতে API কলিং প্যাকেজের পরিচয় পেতে পারে। ডিফল্ট লিডারবোর্ড UI এর একটি উদাহরণ নীচে দেখানো হয়েছে।