সেশন - Android SDK v2 (লেগেসি)

এই দস্তাবেজটি Google মোবাইল অ্যাপ অ্যানালিটিক্স এবং Android v2-এর জন্য Google Analytics SDK-এ সেশনগুলির একটি উচ্চ-স্তরের ওভারভিউ প্রদান করে এবং আপনার অ্যাপে সেশনগুলি পরিচালনা করার জন্য উপলব্ধ বিভিন্ন পদ্ধতি বর্ণনা করে৷

ওভারভিউ

একটি সেশন আপনার অ্যাপের সাথে ব্যবহারকারীর ইন্টারঅ্যাকশনের একক সময়ের প্রতিনিধিত্ব করে। সেশনগুলি পরিমাপ করা কার্যকলাপের দরকারী পাত্র হিসাবে কাজ করে, যার মধ্যে স্ক্রিন ভিউ, ইভেন্ট এবং ইকমার্স লেনদেন অন্তর্ভুক্ত থাকে।

ডিফল্টরূপে, Google Analytics একই সেশনে একে অপরের 30 মিনিটের মধ্যে প্রাপ্ত হিটগুলিকে গোষ্ঠীভুক্ত করবে। যাইহোক, অনেক ডেভেলপার সেশন ম্যানেজমেন্টের একটি অতিরিক্ত স্তর প্রয়োগ করতে চাইতে পারেন যা তাদের অ্যাপের অবস্থা বিবেচনা করে, যেমন অ্যাপটি কখন ব্যাকগ্রাউন্ডে থাকে এবং কতক্ষণ থাকে।

এই নথির বাকি অংশটি সেই যুক্তি বাস্তবায়নের জন্য উপলব্ধ পদ্ধতিগুলি বর্ণনা করবে। আপনার বিকল্পগুলি সম্পূর্ণ-স্বয়ংক্রিয় সেশন ম্যানেজমেন্ট থেকে শুরু করে, ইজিট্র্যাকার দ্বারা সরবরাহ করা, ম্যানুয়ালি আপনার নিজস্ব সেশন ম্যানেজমেন্ট লজিক তৈরি করা, বা উভয়ের মিশ্রণ ব্যবহার করে।

সেশন পরিচালনা

নিম্নলিখিত বিভাগটি আপনার অ্যাপে সেশন পরিচালনা করার জন্য উপলব্ধ পদ্ধতিগুলি বর্ণনা করবে।

EasyTracker ব্যবহার করে স্বয়ংক্রিয় সেশন ম্যানেজমেন্ট

EasyTracker স্বয়ংক্রিয় সেশন ম্যানেজমেন্ট প্রদান করে যা আপনার জন্য নতুন সেশন শুরু করার কাজ পরিচালনা করতে পারে। স্বয়ংক্রিয় সেশন ম্যানেজমেন্ট কীভাবে কাজ করে তার একটি ওভারভিউ এখানে রয়েছে:

  • একটি ডিফল্ট বাস্তবায়নের 30 সেকেন্ডের একটি সেশনের সময়সীমা থাকে। আপনি আপনার analytics.xml ফাইলে ga_sessionTimeout প্যারামিটার পরিবর্তন করে সময়সীমা পরিবর্তন করতে পারেন:
      <-- Set session time out to 60 seconds -- >
      <integer name="ga_sessionTimeout">60</integer>
  • যদি অ্যাপটি সেশনের সময়সীমার বেশি সময় ধরে ব্যাকগ্রাউন্ডে থাকে, তাহলে EasyTracker একটি নতুন সেশনের প্রয়োজনীয়তা চিহ্নিত করবে এবং পরবর্তী হিটটি হবে একটি নতুন সেশনের অংশ।

ম্যানুয়াল সেশন ম্যানেজমেন্ট

এমনকি আপনি EasyTracker-এর স্বয়ংক্রিয় সেশন ম্যানেজমেন্ট ব্যবহার করলেও, আপনার অ্যাপের লাইফসাইকেলের মূল ইভেন্টগুলিতে ম্যানুয়ালি নতুন সেশন শুরু করা কার্যকর হতে পারে।

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

একটি নতুন সেশন শুরু করতে, setStartSession(true) কল করুন। এটি পরবর্তী প্রেরিত হিটে একটি প্যারামিটার যোগ করবে যা নির্দেশ করে যে এটি একটি নতুন সেশন শুরু করবে।

নীচের উদাহরণে, আমরা ধরে নিই যে কোনও ব্যবহারকারী আপনার অ্যাপে সফলভাবে সাইন ইন করলে onSignIn() বলা হয়:

// Called after a user successfully signs in to your app.
private void onSignIn() {
  ... // The rest of your onSignIn() code.
  myTracker.setStartSession(true); // Where myTracker is an instance of Tracker.
  myTracker.sendEvent("app_flow", "sign_in", "", null); // First activity of new session.
}