GAID (Google Advertising ID) এবং AAID (Android Advertising ID) হলো Android ডিভাইসের অনন্য বিজ্ঞাপন শনাক্তকারী, যা ইনস্টল অ্যাট্রিবিউশন এবং বিজ্ঞাপন ব্যক্তিগতকরণের জন্য ব্যবহৃত হয়। GAID হলো Google Play Services সম্পন্ন ডিভাইসের অফিসিয়াল নাম, AAID是所有 Android ডিভাইসের জন্য একটি সার্বজনীন শব্দ, যার মধ্যে Google সার্ভিস ছাড়া বিল্ডও অন্তর্ভুক্ত। Google Developer Documentation, 2025 অনুযায়ী, GAID পেতে Google Play Services প্রয়োজন। AdvertisingIdClient হলো Android-এ বিজ্ঞাপন শনাক্তকারী পাওয়ার প্রধান API।
মূল পয়েন্ট
GAID (Google Advertising ID) হলো একটি অনন্য শনাক্তকারী যা Google Play Services ইনস্টল করা প্রতিটি Android ডিভাইসকে বরাদ্দ করা হয়। এটি বিজ্ঞাপনের উদ্দেশ্যে: ইনস্টল অ্যাট্রিবিউশন, ক্যাম্পেইন পরিমাপ এবং ব্যক্তিগতকৃত বিজ্ঞাপন দেখানো। AAID (Android Advertising ID) হলো একটি বিস্তৃত শব্দ যা সব Android ডিভাইসে বিজ্ঞাপন শনাক্তকারীকে কভার করে, যার মধ্যে HMS সহ Huawei ডিভাইস, Amazon Fire এবং Google সার্ভিস ছাড়া AOSP বিল্ড অন্তর্ভুক্ত।
GAID এবং iOS-এ IDFA-এর মধ্যে প্রধান পার্থক্য হলো GAID স্পষ্ট অনুমতি অনুরোধ ছাড়াই উপলব্ধ, কিন্তু Android 14 থেকে অ্যাপগুলিকে ম্যানিফেস্টে বিজ্ঞাপন শনাক্তকারীর ব্যবহার ঘোষণা করতে হবে এবং Google Play গোপনীয়তা নীতি অনুযায়ী ব্যবহারকারীর সম্মতি নিতে হবে। Google সিস্টেম ডায়ালগ (iOS-এ ATT-এর মতো) প্রয়োজন করে না, তবে ডেভেলপারকে ব্যবহারকারীর সম্মতি নিয়ম অনুসরণ করতে হবে।
Google Play Console Statistics (2025) অনুযায়ী, 95% এর বেশি সক্রিয় Android ডিভাইস Google Play Services-এর মাধ্যমে GAID সমর্থন করে। Google সার্ভিস ছাড়া ডিভাইসে (চীনা বাজার, Huawei AppGallery), সংশ্লিষ্ট অ্যাপ স্টোর থেকে AAID বা চীনা নির্মাতাদের জন্য OAID (Open Anonymous ID)-এর মতো বিকল্প শনাক্তকারী ব্যবহার করা হয়।
GAID-এর মূল সুবিধা IDFA-এর উপর হলো ব্লকিং সিস্টেম ডায়ালগ ছাড়াই শনাক্তকারী পাওয়ার ক্ষমতা। তবে Google ক্রমাগত প্রয়োজনীয়তা কঠোর করছে: Android 14 থেকে, API 34 এবং তার উপরে লক্ষ্য করা অ্যাপগুলিকে ম্যানিফেস্টে স্পষ্টভাবে AD_ID অনুমতি ঘোষণা করতে হবে।
Android-এ, বিজ্ঞাপন শনাক্তকারী পাওয়া Google Play Services এবং AdvertisingIdClient ক্লাসের মাধ্যমে বাস্তবায়িত হয়। iOS-এর বিপরীতে, যেখানে IDFA-এ স্পষ্ট ATT ডায়ালগ প্রয়োজন, GAID ডিফল্টরূপে অ্যাপের জন্য উপলব্ধ, যদি না ব্যবহারকারী ডিভাইস সেটিংসে বিজ্ঞাপন ব্যক্তিগতকরণ নিষ্ক্রিয় করে থাকে।
com.google.android.gms.ads.identifier প্যাকেজের AdvertisingIdClient ক্লাস দুটি প্রধান পদ্ধতি প্রদান করে: getAdvertisingIdInfo (প্রসঙ্গ) এবং start (প্রসঙ্গ)। পদ্ধতিটি একটি AdvertisingIdInfo অবজেক্ট ফেরত দেয় যা শনাক্তকারী (UUID স্ট্রিং) এবং isLimitAdTrackingEnabled ফ্ল্যাগ ধারণ করে, যা দেখায় যে ব্যবহারকারী বিজ্ঞাপন ব্যক্তিগতকরণ নিষ্ক্রিয় করেছেন কিনা।
AdvertisingIdClient কল একটি ব্যাকগ্রাউন্ড থ্রেডে করা উচিত, কারণ পদ্ধতিটি দূরবর্তী Google Play পরিষেবায় অ্যাক্সেস করে। অ্যাসিঙ্ক্রোনাসভাবে শনাক্তকারী পাওয়ার জন্য করুটিন বা AsyncTask ব্যবহার করার পরামর্শ দেওয়া হয়। যদি ডিভাইসে Google Play Services উপলব্ধ না হয়, পদ্ধতিটি GooglePlayServicesNotAvailableException ব্যতিক্রম ছুড়ে — এই ক্ষেত্রে, ডেভেলপারকে একটি বিকল্প শনাক্তকরণ পদ্ধতি ব্যবহার করতে হবে।
ব্যবহারকারী যেকোনো সময় সেটিংস — Google — বিজ্ঞাপন — বিজ্ঞাপন শনাক্তকারী রিসেট করুন এর মাধ্যমে GAID রিসেট করতে পারেন। রিসেটের পরে, অ্যাপগুলি একটি নতুন শনাক্তকারী পায় এবং পূর্ববর্তী ডেটার সাথে সংযোগ হারিয়ে যায়। ব্যবহারকারী «বিজ্ঞাপন ব্যক্তিগতকরণ নিষ্ক্রিয় করুন» বিকল্পও চালু করতে পারেন, যা isLimitAdTrackingEnabled ফ্ল্যাগ true-এ সেট করে।
ডেভেলপারকে isLimitAdTrackingEnabled ফ্ল্যাগ সম্মান করতে হবে: যদি এটি true হয়, অ্যাপটি GAID ব্যবহার করে বিজ্ঞাপন ব্যক্তিগতকরণ করতে পারবে না, তবে সীমিত উদ্দেশ্যে যেমন রূপান্তর পরিমাপ, জালিয়াতি প্রতিরোধ এবং ফ্রিকোয়েন্সি সীমার জন্য এটি ব্যবহার করতে পারে। এই নিয়ম লঙ্ঘন Google Play-এ অ্যাপ স্থগিতের দিকে নিয়ে যায়।
Android 14 (API 34) থেকে শুরু করে, Google বিজ্ঞাপন শনাক্তকারীতে অ্যাক্সেসের উপর নতুন বিধিনিষেধ চালু করেছে। GAID পেতে এখন AD_ID অনুমতি অ্যাপ ম্যানিফেস্টে স্পষ্টভাবে ঘোষণা করতে হবে। যদি অ্যাপটি অনুমতি ঘোষণা না করে এবং API 34+ লক্ষ্য করে, AdvertisingIdClient কল একটি শূন্য শনাক্তকারী ফেরত দেয়।
Google Play নীতি অনুযায়ী GAID ব্যবহারকারী অ্যাপগুলিকে বেশ কয়েকটি নিয়ম মেনে চলতে হবে: শনাক্তকারী শুধুমাত্র বিজ্ঞাপন এবং বিশ্লেষণ উদ্দেশ্যে ব্যবহার করা যেতে পারে; অ্যাপটি স্পষ্ট ব্যবহারকারীর সম্মতি ছাড়া GAID-কে ব্যক্তিগত ডেটার সাথে লিঙ্ক করতে পারবে না; GAID গোপনীয়তা নীতিতে উল্লেখ ছাড়া তৃতীয় পক্ষের সাথে ভাগ করা যাবে না। 2025 থেকে, Google Play Play Integrity API ব্যবহার করে এই নিয়মগুলির সাথে সম্মতির জন্য অ্যাপগুলি স্বয়ংক্রিয়ভাবে স্ক্যান করা শুরু করেছে।
শিশুদের অ্যাপে বিশেষ মনোযোগ দেওয়া হয়: Google Play Families Policy অনুযায়ী, শিশুদের লক্ষ্য করা অ্যাপগুলি কোনও পরিস্থিতিতেই বিজ্ঞাপন ব্যক্তিগতকরণের জন্য GAID ব্যবহার করতে পারে না। ডেভেলপারদের শিশুদের শ্রোতার জন্য প্রত্যয়িত বিজ্ঞাপন নেটওয়ার্ক ব্যবহার করতে হবে।
isLimitAdTrackingEnabled ফ্ল্যাগ অ্যাপকে ব্যবহারকারীর পছন্দের সংকেত দেয়। যদি ফ্ল্যাগ true হয়, অ্যাপটি শুধুমাত্র মৌলিক অপারেশনের জন্য GAID ব্যবহার করতে পারে: ইনস্টল অ্যাট্রিবিউশন, বিশ্লেষণ, অ্যান্টি-জালিয়াতি, ফ্রিকোয়েন্সি সীমা। এই ক্ষেত্রে GAID-এর ভিত্তিতে বিজ্ঞাপন ব্যক্তিগতকরণ, ব্যবহারকারী প্রোফাইলিং এবং রিটার্গেটিং নিষিদ্ধ।
Google বিকল্প শনাক্তকারী (IMEI, MAC ঠিকানা, Android ID) মাধ্যমে isLimitAdTrackingEnabled ফ্ল্যাগ বাইপাস করার চেষ্টা না করার পরামর্শ দেয়। স্থায়ী হার্ডওয়্যার শনাক্তকারী ব্যবহার Google Play নীতি দ্বারা কঠোরভাবে নিষিদ্ধ এবং আপিলের সম্ভাবনা ছাড়াই তাৎক্ষণিক অ্যাপ স্থগিতের দিকে নিয়ে যায়।
Android-এ GAID পাওয়ার জন্য সম্ভাব্য ব্যতিক্রমগুলি হ্যান্ডলিং সহ AdvertisingIdClient-এর অ্যাসিঙ্ক্রোনাস কল প্রয়োজন। নীচে করুটিন ব্যবহার করে Kotlin-এ একটি সম্পূর্ণ উদাহরণ দেওয়া হলো।
উদাহরণটি করুটিন এবং Google Play Services ত্রুটিগুলি হ্যান্ডল করার জন্য try-catch ব্যবহার করে বিজ্ঞাপন শনাক্তকারী পাওয়া এবং isLimitAdTrackingEnabled ফ্ল্যাগ পরীক্ষা করা প্রদর্শন করে।
import com.google.android.gms.ads.identifier.AdvertisingIdClient
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.withContext
data class AdvertisingInfo(
val gaid: String,
val isLimitAdTrackingEnabled: Boolean
)
suspend fun getAdvertisingInfo(context: Context): AdvertisingInfo? {
return withContext(Dispatchers.IO) {
try {
val adInfo = AdvertisingIdClient.getAdvertisingIdInfo(context)
AdvertisingInfo(
gaid = adInfo.id,
isLimitAdTrackingEnabled = adInfo.isLimitAdTrackingEnabled(true)
)
} catch (e: GooglePlayServicesNotAvailableException) {
// Google Play Services উপলব্ধ নেই — বিকল্প ID ব্যবহার করুন
null
} catch (e: IOException) {
// সার্ভিসে অ্যাক্সেস করার সময় নেটওয়ার্ক ত্রুটি
null
}
}
}
// Activity বা ViewModel-এ ব্যবহার
fun onGaidRequested() {
lifecycleScope.launch {
val info = getAdvertisingInfo(this@MainActivity)
setupAdNetwork(
gaid = info?.gaid,
limitTracking = info?.isLimitAdTrackingEnabled ?: true
)
}
}
উভয় OS-এ বিজ্ঞাপন অ্যাট্রিবিউশন নিয়ে কাজ করা ডেভেলপারদের জন্য বিভিন্ন প্ল্যাটফর্মে বিজ্ঞাপন শনাক্তকারীর মধ্যে পার্থক্য বোঝা অত্যন্ত গুরুত্বপূর্ণ। নীচে GAID, AAID এবং IDFA-এর মূল দিকগুলির তুলনা দেওয়া হলো।
GAID এবং IDFA-এর মধ্যে প্রধান পার্থক্য হলো প্রাপ্তির পদ্ধতি। IDFA-তে ATT-এর মাধ্যমে স্পষ্ট সম্মতি প্রয়োজন, যা ছাড়া একটি শূন্য শনাক্তকারী ফেরত দেওয়া হয়। GAID সিস্টেম ডায়ালগ ছাড়াই উপলব্ধ, কিন্তু Android 14+ থেকে ম্যানিফেস্টে AD_ID অনুমতি ঘোষণা প্রয়োজন। GAID-এর আরও নমনীয় ফ্ল্যাগ সিস্টেম রয়েছে: isLimitAdTrackingEnabled শনাক্তকারী পাওয়া ব্লক করে না, শুধুমাত্র অ্যাপকে ব্যবহার সীমিত করার সংকেত দেয়।
Adjust (2025) অনুযায়ী, Android-এ GAID-এর প্রাপ্যতা 98% সক্রিয় ডিভাইস, যেখানে iOS-এ IDFA-এর প্রাপ্যতা 20–35%。 এটি Android-কে বিজ্ঞাপন অ্যাট্রিবিউশনের জন্য আরও পূর্বানুমানযোগ্য প্ল্যাটফর্ম করে তোলে, তবে Google নীতিগুলির কঠোরীকরণ ধীরে ধীরে এই ব্যবধান কমিয়ে আনছে।
AAID, GAID-এর বিপরীতে, Google Play Services-এর সাথে আবদ্ধ নয় এবং Huawei (HMS), Amazon Fire OS এবং চীনা নির্মাতাদের ডিভাইসে ব্যবহার করা যেতে পারে। Huawei ডিভাইসে, AAID Huawei Mobile Services (HMS)-এর মাধ্যমে com.huawei.hms.ads.identifier প্যাকেজের AdvertisingIdClient ক্লাস দিয়ে বাস্তবায়িত হয়। চীনা বাজারের জন্য, OAID (Open Anonymous ID)ও সাধারণ — চীনা নির্মাতাদের জোট দ্বারা Google সার্ভিস ছাড়া ডিভাইসে GAID প্রতিস্থাপনের জন্য তৈরি একটি মান। সঠিক API নির্বাচন বিভিন্ন বাজারে বিজ্ঞাপন অ্যাট্রিবিউশনের প্রাপ্যতাকে সরাসরি প্রভাবিত করে।
সচরাচর জিজ্ঞাসিত প্রশ্ন
GAID (Google Advertising ID) — Google Play Services সম্পন্ন ডিভাইসের জন্য বিজ্ঞাপন শনাক্তকারী। AAID (Android Advertising ID) — Android বিজ্ঞাপন শনাক্তকারীর জন্য সাধারণ শব্দ, যার মধ্যে Google সার্ভিস ছাড়া ডিভাইস (Huawei, Amazon Fire) অন্তর্ভুক্ত। GAID Google Play-এর মাধ্যমে পাওয়া যায়, AAID সংশ্লিষ্ট অ্যাপ স্টোরের SDK-এর মাধ্যমে।
হ্যাঁ, Android 14 (API 34) থেকে শুরু করে ম্যানিফেস্টে AD_ID অনুমতি নির্দিষ্ট করা প্রয়োজন। যদি অ্যাপ targetSdkVersion 34+ হয় এবং AD_ID নির্দিষ্ট না করে, AdvertisingIdClient একটি শূন্য শনাক্তকারী ফেরত দেয়। অনুমতি
হ্যাঁ, ব্যবহারকারী যেকোনো সময় সেটিংস — Google — বিজ্ঞাপন — বিজ্ঞাপন শনাক্তকারী রিসেট করুন এর মাধ্যমে GAID রিসেট করতে পারেন। রিসেটের পরে, সব অ্যাপ একটি নতুন শনাক্তকারী পায় এবং বিজ্ঞাপন মিথস্ক্রিয়া ইতিহাসের সাথে সংযোগ হারিয়ে যায়।
OAID (Open Anonymous ID) — চীনা স্মার্টফোন নির্মাতাদের (Xiaomi, OPPO, vivo, Huawei) জোট দ্বারা তৈরি একটি বিজ্ঞাপন শনাক্তকারী মান। এটি চীনা বাজারের জন্য Google Play Services ছাড়া ডিভাইসে ব্যবহৃত হয়। GAID-এর বিপরীতে, OAID-তে Google Play প্রয়োজন হয় না এবং এটি ডিভাইস নির্মাতার SDK-এর মাধ্যমে কাজ করে।
যদি isLimitAdTrackingEnabled true হয়, অ্যাপটি GAID ব্যবহার করে বিজ্ঞাপন ব্যক্তিগতকরণ, ব্যবহারকারী প্রোফাইলিং এবং রিটার্গেটিং করতে পারে না। তবে শনাক্তকারী সীমিত উদ্দেশ্যে ব্যবহার করা যেতে পারে: ইনস্টল অ্যাট্রিবিউশন, বিশ্লেষণ, জালিয়াতি প্রতিরোধ এবং ফ্রিকোয়েন্সি সীমা।
সারসংক্ষেপ
আমরা একটি মোবাইল অ্যাপ্লিকেশন টার্নকি তৈরি করব
IT Sectr 2017 সাল থেকে স্টার্টআপ এবং ব্যবসার জন্য iOS এবং Android অ্যাপ্লিকেশন তৈরি করে। আমরা আপনাকে পরামর্শ দেব এবং সেরা সমাধান প্রস্তাব করব।
আরও পড়ুন