এই নির্দেশিকা আপনাকে দেখায় কিভাবে Google Play Games পরিষেবার জন্য প্লেয়ার স্ট্যাটস API ব্যবহার করতে হয়। আপনি একজন খেলোয়াড়ের ইন-গেম কার্যকলাপ সম্পর্কে ডেটা পুনরুদ্ধার করতে প্লেয়ার পরিসংখ্যান API ব্যবহার করতে পারেন।
প্লেয়ারের পরিসংখ্যান API আপনাকে খেলোয়াড়দের নির্দিষ্ট অংশ এবং খেলোয়াড়ের জীবনচক্রের বিভিন্ন পর্যায়ের জন্য গেমের অভিজ্ঞতা তৈরি করতে দেয়। খেলোয়াড়রা কীভাবে অগ্রগতি করছে, ব্যয় করছে এবং আকর্ষক হচ্ছে তার উপর ভিত্তি করে আপনি প্রতিটি খেলোয়াড় বিভাগের জন্য উপযোগী অভিজ্ঞতা তৈরি করতে পারেন। উদাহরণস্বরূপ, একজন কম সক্রিয় খেলোয়াড়কে আপনার গেমের সাথে পুনরায় যুক্ত হতে উত্সাহিত করতে সক্রিয় পদক্ষেপ নিতে আপনি এই API ব্যবহার করতে পারেন, যেমন খেলোয়াড় সাইন ইন করলে নতুন ইন-গেম আইটেমগুলি প্রদর্শন এবং প্রচার করে৷
APIগুলি com.google.android.gms.games.stats
এবং com.google.android.gms.games
প্যাকেজে পাওয়া যাবে৷
আপনি যে ধরনের প্লেয়ার ডেটা পুনরুদ্ধার করতে পারেন তার মধ্যে রয়েছে:
গড় সেশনের দৈর্ঘ্য : মিনিটে খেলোয়াড়ের গড় সেশনের দৈর্ঘ্য। সেশনের দৈর্ঘ্য নির্ধারিত হয় যখন একজন খেলোয়াড় Google Play Games পরিষেবায় সাইন ইন করেন।
শেষবার খেলার দিন : প্লেয়ার শেষবার খেলার পর থেকে আনুমানিক দিনগুলি৷
কেনাকাটার সংখ্যা : প্লেয়ারের জন্য অ্যাপ-মধ্যস্থ কেনাকাটার আনুমানিক সংখ্যা।
সেশনের সংখ্যা : প্লেয়ারের সেশনের আনুমানিক সংখ্যা। একজন খেলোয়াড় কতবার Google Play গেম পরিষেবাগুলিতে সাইন ইন করে তার সংখ্যার দ্বারা সেশনগুলি নির্ধারিত হয়৷
সেশন পার্সেন্টাইল : প্লেয়ারের জন্য সেশন পার্সেন্টাইলের আনুমানিকতা, 0 থেকে 1 এর মধ্যে একটি দশমিক মান হিসাবে প্রদত্ত। এই মানটি এই গেমের প্লেয়ার বেসের বাকি অংশের তুলনায় বর্তমান খেলোয়াড় কতটি সেশন খেলেছে তা নির্দেশ করে। উচ্চ সংখ্যা নির্দেশ করে যে এই খেলোয়াড় আরও বেশি সেশন খেলেছে।
পার্সেন্টাইল খরচ : প্লেয়ারের আনুমানিক খরচ পার্সেন্টাইল, 0 থেকে 1 এর মধ্যে একটি দশমিক মান হিসাবে দেওয়া হয়। এই মানটি নির্দেশ করে যে এই গেমের প্লেয়ার বেসের বাকি অংশের তুলনায় বর্তমান খেলোয়াড় কতটা ব্যয় করেছে। উচ্চ সংখ্যা নির্দেশ করে যে এই খেলোয়াড় আরও বেশি খরচ করেছেন।
নিম্নলিখিত ধরনের প্লেয়ার ডেটা অবচয়িত হয় এবং সর্বদা একটি আনসেট মান ধ্রুবক ফেরত দেয়:
- মন্থন সম্ভাবনা : 0 (মন্থনের কম সম্ভাবনা) থেকে 1 (মন্থনের উচ্চ সম্ভাবনা) এর মধ্যে একটি দশমিক মান হিসাবে প্রদত্ত পরের দিনে একজন খেলোয়াড় মন্থন করবে কিনা তার পূর্বাভাস। মন্থনকে 7 দিনের নিষ্ক্রিয়তা হিসাবে সংজ্ঞায়িত করা হয়।
- খরচের সম্ভাবনা : এই গেমটিতে খেলোয়াড়ের খরচ করার আনুমানিক সম্ভাব্যতা, 0 (খরচের কম সম্ভাবনা) থেকে 1 (ব্যয়ের উচ্চ সম্ভাবনা) এর মধ্যে দশমিক মান হিসাবে দেওয়া হয়।
- পরের 28 দিনে মোট খরচ : এই গেমে পরবর্তী 28 দিনে খেলোয়াড়ের আনুমানিক মোট প্রত্যাশিত খরচ৷
- উচ্চ ব্যয়কারী সম্ভাবনা : আনুমানিক সম্ভাব্যতা যে পরবর্তী 28 দিনের মধ্যে একজন খেলোয়াড় এই গেমের প্লেয়ার বেসের 95 তম পার্সেন্টাইল বা তার বেশি পরিমাণে খরচ করবে। এটি 0 (একজন উচ্চ ব্যয়কারী হওয়ার সম্ভাবনা কম) থেকে 1 (উচ্চ ব্যয়কারী হওয়ার উচ্চ সম্ভাবনা) এর মধ্যে একটি দশমিক মান হিসাবে দেওয়া হয়।
আপনি শুরু করার আগে
আপনি প্লেয়ার পরিসংখ্যান API ব্যবহার শুরু করার আগে:
- কোড নমুনা ডাউনলোড এবং পর্যালোচনা করুন.
- কোয়ালিটি চেকলিস্টে বর্ণিত সুপারিশগুলির সাথে নিজেকে পরিচিত করুন৷
ক্লায়েন্ট পান
প্লেয়ার স্ট্যাটস API ব্যবহার শুরু করতে, আপনার গেমটিকে প্রথমে একটি PlayerStatsClient
অবজেক্ট পেতে হবে। আপনি Games.getPlayerStatsClient()
পদ্ধতিতে কল করে এবং কার্যকলাপে পাস করে এটি করতে পারেন।
PlayerStatsClient
ক্লাস অ্যাসিঙ্ক্রোনাসভাবে ফলাফল ফেরাতে Google Play পরিষেবার Task
ক্লাস ব্যবহার করে। থ্রেডেড কাজ পরিচালনা করার জন্য টাস্ক ব্যবহার সম্পর্কে আরও জানতে, টাস্ক API ডেভেলপার গাইড দেখুন।
ডেটা পুনরুদ্ধার করুন
বর্তমানে সাইন ইন করা প্লেয়ারের জন্য প্লেয়ার পরিসংখ্যান ডেটা পুনরুদ্ধার করতে, এই পদক্ষেপগুলি অনুসরণ করুন:
PlayerStatsClient.loadPlayerStats()
পদ্ধতিতে কল করুন।কলটি সফল হলে, Google Play গেম পরিষেবাগুলি একটি
Task
অবজেক্ট ফেরত দেয় যা অ্যাসিঙ্ক্রোনাসভাবে একটিPlayerStats
অবজেক্ট লোড করে। আপনার অ্যাপে সাইন-ইন করা প্লেয়ারের কার্যকলাপ সম্পর্কে ডেটা পুনরুদ্ধার করতে এই বস্তুর পদ্ধতিগুলি ব্যবহার করুন৷
এখানে একটি উদাহরণ:
public void checkPlayerStats() { PlayGames.getPlayerStatsClient(this) .loadPlayerStats(true) .addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>() { @Override public void onComplete(@NonNull Task<AnnotatedData<PlayerStats>> task) { if (task.isSuccessful()) { // Check for cached data. if (task.getResult().isStale()) { Log.d(TAG, "using cached data"); } PlayerStats stats = task.getResult().get(); if (stats != null) { Log.d(TAG, "Player stats loaded"); if (stats.getDaysSinceLastPlayed() > 7) { Log.d(TAG, "It's been longer than a week"); } if (stats.getNumberOfSessions() > 1000) { Log.d(TAG, "Veteran player"); } if (stats.getChurnProbability() == 1) { Log.d(TAG, "Player is at high risk of churn"); } } } else { int status = CommonStatusCodes.DEVELOPER_ERROR; if (task.getException() instanceof ApiException) { status = ((ApiException) task.getException()).getStatusCode(); } Log.d(TAG, "Failed to fetch Stats Data status: " + status + ": " + task.getException()); } } }); }
টিপস
প্লে স্ট্যাটস API আপনাকে তাদের ব্যস্ততা এবং ব্যয় আচরণের উপর ভিত্তি করে বিভিন্ন ধরণের খেলোয়াড়কে সহজেই সনাক্ত করতে এবং তাদের খেলার অভিজ্ঞতা উন্নত করতে উপযুক্ত কৌশল প্রয়োগ করতে দেয়।
নিম্নলিখিত সারণীতে কিছু উদাহরণ প্লেয়ার বিভাগ এবং প্রস্তাবিত বাগদান কৌশলের তালিকা রয়েছে:
প্লেয়ার সেগমেন্ট | বাগদানের কৌশল |
---|---|
ঘন ঘন সেশনের একটি উচ্চ সংখ্যা এবং ভাল খরচ শতাংশ, কিন্তু গত সপ্তাহ বা তার বেশি সময় ধরে খেলেনি। |
|
কম খরচের শতাংশে অত্যন্ত নিযুক্ত খেলোয়াড়। |
|
উচ্চ ব্যয়কারী খেলোয়াড়রা শীর্ষে যাওয়ার লক্ষণ দেখাচ্ছে এবং কম ঘন ঘন খেলতে শুরু করেছে। |
|
খুব বেশি বা খুব কম খেলোয়াড়দের খরচ করার সম্ভাবনা। |
|