بهترین روش ها برای شناسه های منحصر به فرد

این سند راهنمایی برای انتخاب شناسه های مناسب برای برنامه شما بر اساس مورد استفاده شما ارائه می دهد.

برای یک نگاه کلی به مجوزهای Android، به نمای کلی مجوزها مراجعه کنید. برای بهترین روش‌های خاص برای کار با مجوزهای Android، بهترین شیوه‌های مجوزهای برنامه را ببینید.

بهترین روش ها برای کار با شناسه های اندروید

برای محافظت از حریم خصوصی کاربران خود، از محدودترین شناسه ای استفاده کنید که مورد استفاده برنامه شما را برآورده می کند. به ویژه، این بهترین شیوه ها را دنبال کنید:

  1. در صورت امکان شناسه های قابل تنظیم مجدد توسط کاربر را انتخاب کنید. برنامه شما حتی زمانی که از شناسه‌هایی غیر از شناسه‌های سخت‌افزاری غیرقابل تنظیم مجدد استفاده می‌کند، می‌تواند به اکثر موارد استفاده خود دست یابد.
  2. از استفاده از شناسه های سخت افزاری خودداری کنید. در بیشتر موارد استفاده، می‌توانید از استفاده از شناسه‌های سخت‌افزاری، مانند شناسه بین‌المللی تجهیزات موبایل (IMEI)، بدون محدود کردن عملکرد مورد نیاز خودداری کنید.

    اندروید 10 (سطح API 29) محدودیت‌هایی را برای شناسه‌های غیرقابل تنظیم مجدد اضافه می‌کند که هم شامل IMEI و هم شماره سریال است. برای دسترسی به این شناسه‌ها، برنامه شما باید یک برنامه مالک دستگاه یا نمایه باشد، دارای مجوزهای شرکت مخابراتی خاص یا دارای مجوز ممتاز READ_PRIVILEGED_PHONE_STATE باشد.

  3. فقط از شناسه تبلیغاتی برای پروفایل کاربری یا موارد استفاده از تبلیغات استفاده کنید. هنگام استفاده از شناسه تبلیغاتی ، همیشه به انتخاب های کاربران در مورد ردیابی تبلیغات احترام بگذارید . اگر باید شناسه تبلیغاتی را به اطلاعات قابل شناسایی شخصی متصل کنید، این کار را فقط با رضایت صریح کاربر انجام دهید.

  4. بازنشانی شناسه تبلیغاتی را پل نزنید.

  5. هر زمان که ممکن است برای سایر موارد استفاده از یک شناسه نصب Firebase (FID) یا یک GUID ذخیره شده خصوصی استفاده کنید، به جز برای جلوگیری از تقلب در پرداخت و تلفن. برای اکثریت قریب به اتفاق موارد استفاده غیر تبلیغاتی، یک FID یا GUID باید کافی باشد.

  6. برای به حداقل رساندن خطر حفظ حریم خصوصی، از APIهایی استفاده کنید که برای مورد استفاده شما مناسب هستند. از DRM API برای محافظت از محتوای با ارزش بالا و از API های Play Integrity برای محافظت در برابر سوء استفاده استفاده کنید. API های Play Integrity ساده ترین راه برای تعیین واقعی بودن دستگاه بدون متحمل شدن به خطرات حریم خصوصی هستند.

بخش‌های باقی‌مانده این راهنما در مورد این قوانین در زمینه توسعه برنامه‌های اندروید توضیح می‌دهد.

با شناسه های تبلیغاتی کار کنید

شناسه تبلیغاتی یک شناسه قابل تنظیم مجدد توسط کاربر است و برای موارد استفاده از تبلیغات مناسب است. با این حال، هنگام استفاده از این شناسه، نکات کلیدی وجود دارد که باید در نظر داشته باشید:

همیشه به قصد کاربر در تنظیم مجدد شناسه تبلیغاتی احترام بگذارید. با استفاده از شناسه یا اثرانگشت دیگر برای پیوند دادن شناسه‌های تبلیغات بعدی بدون رضایت کاربر، بازنشانی‌های کاربر را از بین ندهید. خط‌مشی محتوای برنامه‌نویس Google Play موارد زیر را بیان می‌کند:

"...در صورت بازنشانی، یک شناسه تبلیغاتی جدید نباید بدون رضایت صریح کاربر به شناسه تبلیغاتی قبلی یا داده های مشتق شده از شناسه تبلیغاتی قبلی متصل شود."

همیشه به پرچم تبلیغات شخصی مرتبط احترام بگذارید. شناسه های تبلیغاتی از این جهت قابل تنظیم هستند که کاربران می توانند میزان ردیابی مرتبط با شناسه را محدود کنند. همیشه از روش AdvertisingIdClient.Info.isLimitAdTrackingEnabled() استفاده کنید تا مطمئن شوید که خواسته های کاربران خود را دور نمی زنید. خط‌مشی محتوای برنامه‌نویس Google Play موارد زیر را بیان می‌کند:

"...شما باید تنظیمات "انصراف از تبلیغات مبتنی بر علاقه" یا "انصراف از شخصی سازی تبلیغات" کاربر را رعایت کنید. اگر کاربری این تنظیم را فعال کرده باشد، نمی توانید از شناسه تبلیغاتی برای ایجاد نمایه های کاربر برای تبلیغات استفاده کنید. اهداف یا برای هدف قرار دادن کاربران با تبلیغات شخصی سازی شده شامل تبلیغات متنی، محدودیت فرکانس، ردیابی تبدیل، گزارش و امنیت و کشف تقلب است.

از هرگونه خط‌مشی حفظ حریم خصوصی یا امنیتی مرتبط با SDK‌هایی که استفاده می‌کنید و مرتبط با استفاده از شناسه تبلیغاتی هستند، آگاه باشید. به عنوان مثال، اگر از Google Analytics SDK به روش enableAdvertisingIdCollection() true می‌دهید، مطمئن شوید که همه خط‌مشی‌های قابل اجرا Analytics SDK را بررسی کرده و به آن پایبند هستید.

همچنین، توجه داشته باشید که خط‌مشی محتوای توسعه‌دهنده Google Play ایجاب می‌کند که شناسه تبلیغاتی "نباید به اطلاعات قابل شناسایی شخصی متصل شود یا با هیچ شناسه دستگاه دائمی مرتبط باشد (به عنوان مثال: SSAID، آدرس MAC، IMEI، و غیره)."

به عنوان مثال، فرض کنید می خواهید اطلاعاتی را جمع آوری کنید تا جداول پایگاه داده را با ستون های زیر پر کنید:

TABLE-01
timestamp ad_id account_id clickid
جدول-02
account_id name dob country

در این مثال، ستون ad_id را می‌توان از طریق ستون account_id در هر دو جدول به PII ملحق کرد که اگر مجوز صریح از کاربران خود دریافت نکرده باشید، نقض خط‌مشی محتوای برنامه‌نویس Google Play است.

به خاطر داشته باشید که پیوندهای بین شناسه آگهی‌دهنده و PII همیشه به این وضوح نیست. ممکن است «شبه شناسه‌هایی» داشته باشید که در جدول‌های کلیددار PII و Ad ID ظاهر می‌شوند، که همچنین باعث ایجاد مشکل می‌شود. به عنوان مثال، فرض کنید TABLE-01 و TABLE-02 را به صورت زیر تغییر می دهیم:

TABLE-01
timestamp ad_id clickid dev_model
جدول-02
timestamp demo account_id dev_model name

در این مورد، با رویدادهای کلیکی به اندازه کافی نادر، همچنان می‌توان بین شناسه آگهی‌دهنده TABLE-01 و PII موجود در TABLE-02 با استفاده از مهر زمانی رویداد و مدل دستگاه پیوست.

اگرچه تضمین وجود چنین شبه شناسه‌هایی در یک مجموعه داده اغلب دشوار است، اما می‌توانید با تعمیم داده‌های منحصربه‌فرد در صورت امکان از آشکارترین خطرات پیوستن جلوگیری کنید. در مثال قبل، این به معنای کاهش دقت مهر زمانی است به طوری که چندین دستگاه با یک مدل برای هر مهر زمانی ظاهر می‌شوند.

راه حل های دیگر شامل موارد زیر است:

  • طراحی نکردن جداولی که صریحاً PII را با شناسه‌های تبلیغاتی مرتبط می‌کند . در مثال اول بالا، این به این معنی است که ستون account_id در TABLE-01 درج نمی کند.

  • جداسازی و نظارت بر فهرست‌های کنترل دسترسی برای کاربران یا نقش‌هایی که به داده‌های کلیددار شناسه تبلیغاتی و PII دسترسی دارند . با کنترل دقیق و ممیزی توانایی دسترسی به هر دو منبع به طور همزمان (به عنوان مثال، با انجام اتصال بین جداول)، خطر ارتباط بین شناسه تبلیغات و PII را کاهش می دهید. به طور کلی، کنترل دسترسی به معنای انجام موارد زیر است:

    1. فهرست‌های کنترل دسترسی (ACL) را برای داده‌های کلیددار شناسه آگهی‌دهنده و PII جدا نگه دارید تا تعداد افراد یا نقش‌هایی را که در هر دو ACL هستند به حداقل برسانید.
    2. ثبت دسترسی و ممیزی را برای شناسایی و مدیریت هر گونه استثناء از این قانون پیاده سازی کنید.

برای اطلاعات بیشتر در مورد کار مسئولانه با Advertising ID، به مرجع AdvertisingIdClient API مراجعه کنید.

با FID و GUID کار کنید

ساده ترین راه حل برای شناسایی یک نمونه برنامه در حال اجرا بر روی دستگاه، استفاده از شناسه نصب Firebase (FID) است، و این راه حل توصیه شده در اکثر موارد استفاده غیر تبلیغاتی است. فقط نمونه برنامه‌ای که برای آن ارائه شده است می‌تواند به این شناسه دسترسی داشته باشد، و (نسبتا) به راحتی قابل تنظیم مجدد است زیرا فقط تا زمانی که برنامه نصب شده است باقی می‌ماند.

در نتیجه، FIDها خصوصیات حفظ حریم خصوصی بهتری را در مقایسه با شناسه‌های سخت‌افزاری غیرقابل تنظیم مجدد و محدوده دستگاه ارائه می‌کنند. برای اطلاعات بیشتر، به مرجع firebase.installations API مراجعه کنید.

در مواردی که FID کاربردی نیست، می‌توانید از شناسه‌های منحصربه‌فرد جهانی (GUID) نیز برای شناسایی منحصربه‌فرد یک نمونه برنامه استفاده کنید. ساده ترین راه برای انجام این کار این است که GUID خود را با استفاده از کد زیر ایجاد کنید:

کاتلین

var uniqueID = UUID.randomUUID().toString()

جاوا

String uniqueID = UUID.randomUUID().toString();

از آنجایی که شناسه در سطح جهانی منحصر به فرد است، می توان از آن برای شناسایی یک نمونه برنامه خاص استفاده کرد. برای جلوگیری از نگرانی‌های مرتبط با پیوند دادن شناسه بین برنامه‌ها، GUID‌ها را به جای حافظه خارجی (اشتراک‌گذاری) در حافظه داخلی ذخیره کنید. برای اطلاعات بیشتر، به صفحه مرور کلی داده ها و ذخیره سازی فایل مراجعه کنید.

با آدرس های MAC کار نکنید

آدرس‌های MAC در سطح جهانی منحصربه‌فرد هستند، توسط کاربر قابل تنظیم مجدد نیستند و از بازنشانی کارخانه‌ای جان سالم به در می‌برند. به این دلایل، برای محافظت از حریم خصوصی کاربران، در نسخه‌های اندروید ۶ و بالاتر، دسترسی به آدرس‌های MAC محدود به برنامه‌های سیستمی است. برنامه های شخص ثالث نمی توانند به آنها دسترسی داشته باشند.

تغییر در دسترس بودن آدرس MAC در اندروید 11

در برنامه‌هایی که Android 11 و بالاتر را هدف قرار می‌دهند، تصادفی‌سازی MAC برای شبکه‌های Passpoint به ازای پروفایل Passpoint است و یک آدرس MAC منحصربه‌فرد بر اساس فیلدهای زیر ایجاد می‌کند:

  • نام دامنه کاملاً واجد شرایط (FQDN)
  • قلمرو
  • اعتبار، بر اساس اعتبار استفاده شده در پروفایل Passpoint:
    • اعتبار کاربر: نام کاربری
    • اعتبار گواهی: نوع گواهی و گواهی
    • اعتبار سیم کارت: نوع EAP و IMSI

علاوه بر این، برنامه‌های غیرمجاز نمی‌توانند به آدرس MAC دستگاه دسترسی پیدا کنند. فقط رابط های شبکه با آدرس IP قابل مشاهده هستند. این روی متدهای getifaddrs() و NetworkInterface.getHardwareAddress() و همچنین ارسال پیام‌های Netlink RTM_GETLINK تأثیر می‌گذارد.

در زیر لیستی از روش هایی است که برنامه ها تحت تأثیر این تغییر قرار می گیرند:

  • NetworkInterface.getHardwareAddress() null را برای هر واسط برمی گرداند.
  • برنامه ها نمی توانند از تابع bind() در سوکت های NETLINK_ROUTE استفاده کنند.
  • دستور ip اطلاعات مربوط به رابط ها را بر نمی گرداند.
  • برنامه‌ها نمی‌توانند پیام‌های RTM_GETLINK ارسال کنند.

توجه داشته باشید که بیشتر توسعه دهندگان باید از APIهای سطح بالاتر ConnectivityManager به جای APIهای سطح پایین مانند NetworkInterface ، getifaddrs() یا سوکت های Netlink استفاده کنند. برای مثال، برنامه‌ای که به اطلاعات به‌روز در مسیرهای فعلی نیاز دارد، می‌تواند این اطلاعات را با گوش دادن به تغییرات شبکه با استفاده از ConnectivityManager.registerNetworkCallback() و فراخوانی LinkProperties.getRoutes() مرتبط شبکه دریافت کند.

ویژگی های شناسه

سیستم عامل اندروید تعدادی شناسه با ویژگی های رفتاری متفاوت ارائه می دهد. اینکه کدام شناسه باید استفاده کنید بستگی به نحوه عملکرد ویژگی های زیر با مورد استفاده شما دارد. با این حال، این ویژگی ها پیامدهای حفظ حریم خصوصی نیز دارند، بنابراین مهم است که بدانیم این ویژگی ها چگونه با یکدیگر تعامل دارند.

دامنه

محدوده شناسه توضیح می دهد که کدام سیستم ها می توانند به شناسه دسترسی داشته باشند. دامنه شناسه اندروید به طور کلی در سه نوع ارائه می شود:

  • برنامه تک : شناسه داخلی برنامه است و برای سایر برنامه ها قابل دسترسی نیست.
  • گروه برنامه ها : شناسه برای یک گروه از پیش تعریف شده از برنامه های مرتبط قابل دسترسی است.
  • دستگاه : شناسه برای همه برنامه های نصب شده روی دستگاه قابل دسترسی است.

هرچه دامنه اعطا شده به یک شناسه بیشتر باشد، خطر استفاده از آن برای اهداف ردیابی بیشتر است. برعکس، اگر یک شناسه فقط توسط یک نمونه برنامه قابل دسترسی باشد، نمی توان از آن برای ردیابی یک دستگاه در تراکنش های موجود در برنامه های مختلف استفاده کرد.

قابلیت تنظیم مجدد و ماندگاری

قابلیت تنظیم مجدد و ماندگاری، طول عمر شناسه را مشخص می کند و توضیح می دهد که چگونه می توان آن را بازنشانی کرد. راه‌اندازهای متداول بازنشانی عبارتند از: بازنشانی درون برنامه، بازنشانی از طریق تنظیمات سیستم، بازنشانی هنگام راه‌اندازی و بازنشانی هنگام نصب. شناسه‌های Android می‌توانند طول عمر متفاوتی داشته باشند، اما طول عمر معمولاً به نحوه تنظیم مجدد ID مربوط می‌شود:

  • فقط جلسه : هر بار که کاربر برنامه را مجدداً راه اندازی می کند، از یک شناسه جدید استفاده می شود.
  • Install-Reset : هر بار که کاربر برنامه را حذف نصب و دوباره نصب می کند، از یک شناسه جدید استفاده می شود.
  • FDR-reset : هر بار که کاربر دستگاه را بازنشانی کارخانه ای می کند، از یک شناسه جدید استفاده می شود.
  • FDR-persistent : شناسه بازنشانی کارخانه ای را حفظ می کند.

قابلیت تنظیم مجدد به کاربران این امکان را می دهد که شناسه جدیدی ایجاد کنند که از اطلاعات نمایه موجود جدا باشد. هرچه یک شناسه طولانی‌تر و قابل اطمینان‌تر باقی بماند، مانند شناسه‌ای که در بازنشانی‌های کارخانه باقی بماند، خطر اینکه کاربر در معرض ردیابی طولانی‌مدت قرار گیرد، بیشتر می‌شود. اگر شناسه پس از نصب مجدد برنامه بازنشانی شود، این کار ماندگاری را کاهش می‌دهد و وسیله‌ای برای بازنشانی شناسه فراهم می‌کند، حتی اگر هیچ کنترل واضحی از کاربر برای بازنشانی آن از داخل برنامه یا تنظیمات سیستم وجود نداشته باشد.

منحصر به فرد بودن

منحصر به فرد بودن احتمال برخورد را ایجاد می کند. یعنی شناسه های یکسان در محدوده مرتبط وجود دارد. در بالاترین سطح، یک شناسه منحصربه‌فرد جهانی هرگز حتی در دستگاه‌ها یا برنامه‌های دیگر با هم برخورد نمی‌کند. در غیر این صورت، سطح یکتایی به آنتروپی شناسه و منبع تصادفی مورد استفاده برای ایجاد آن بستگی دارد. برای مثال، احتمال برخورد برای شناسه‌های تصادفی که با تاریخ تقویم نصب شده‌اند (مانند 2019-03-01 ) بسیار بیشتر از شناسه‌هایی است که با مهر زمانی یونیکس نصب شده‌اند (مانند 1551414181 ).

به طور کلی، شناسه های حساب کاربری را می توان منحصر به فرد در نظر گرفت. یعنی هر ترکیب دستگاه/حساب دارای یک شناسه منحصر به فرد است. از سوی دیگر، هرچه یک شناسه منحصر به فرد در یک جمعیت کمتر باشد، حفاظت از حریم خصوصی بیشتر است زیرا برای ردیابی یک کاربر منفرد کمتر مفید است.

حفاظت از یکپارچگی و غیر قابل انکار

می‌توانید از شناسه‌ای استفاده کنید که جعل یا پخش مجدد آن دشوار است تا ثابت کنید دستگاه یا حساب مرتبط دارای ویژگی‌های خاصی است. به عنوان مثال، می توانید ثابت کنید که دستگاه یک دستگاه مجازی نیست که توسط یک هرزنامه استفاده می شود. شناسه‌های جعل سخت نیز غیرقابل انکار هستند. اگر دستگاه پیامی را با کلید مخفی امضا کند، دشوار است که ادعا کنیم دستگاه شخص دیگری پیام را ارسال کرده است. غیر قابل انکار می‌تواند چیزی باشد که کاربر می‌خواهد، مثلاً هنگام تأیید اعتبار یک پرداخت، یا می‌تواند یک ویژگی نامطلوب باشد، مانند زمانی که پیامی ارسال می‌کند که پشیمان است.

موارد استفاده رایج و شناسه مناسب برای استفاده

این بخش جایگزین هایی برای استفاده از شناسه های سخت افزاری مانند IMEI ارائه می دهد. استفاده از شناسه‌های سخت‌افزاری ممنوع است، زیرا کاربر نمی‌تواند آنها را بازنشانی کند و به دستگاه منتقل می‌شود. در بسیاری از موارد، یک شناسه با محدوده برنامه کافی است.

حساب ها

وضعیت حامل

در این حالت، برنامه شما با تلفن دستگاه و عملکرد پیامک با استفاده از یک حساب شرکت مخابراتی تعامل دارد.

شناسه پیشنهادی برای استفاده: IMEI، IMSI، و Line1

چرا این توصیه؟

استفاده از شناسه‌های سخت‌افزار در صورتی قابل قبول است که برای عملکردهای مرتبط با شرکت مخابراتی مورد نیاز باشد. برای مثال، می‌توانید از این شناسه‌ها برای جابه‌جایی بین شرکت‌های مخابراتی تلفن همراه یا اسلات‌های سیم‌کارت یا برای ارسال پیام‌های SMS از طریق IP (برای Line1) - حساب‌های کاربری مبتنی بر سیم‌کارت استفاده کنید. با این حال، برای برنامه‌های فاقد امتیاز، توصیه می‌کنیم از ورود به حساب کاربری برای بازیابی اطلاعات دستگاه کاربر در سمت سرور استفاده کنید. یکی از دلایل این امر این است که در اندروید 6.0 (سطح API 23) و بالاتر، این شناسه ها فقط از طریق مجوز زمان اجرا قابل استفاده هستند. کاربران ممکن است این مجوز را غیرفعال کنند، بنابراین برنامه شما باید این استثنائات را به خوبی مدیریت کند.

وضعیت اشتراک تلفن همراه

در این مورد، باید عملکرد برنامه را با اشتراک‌های سرویس تلفن همراه خاص در دستگاه مرتبط کنید. برای مثال، ممکن است برای تأیید دسترسی به برخی از ویژگی‌های برنامه ممتاز بر اساس اشتراک‌های تلفن همراه دستگاه از طریق سیم کارت، الزامی داشته باشید.

شناسه پیشنهادی برای استفاده: API شناسه اشتراک برای شناسایی سیم‌کارت‌هایی که در دستگاه استفاده می‌شوند.

شناسه اشتراک یک مقدار شاخص (از 1 شروع می‌شود) برای شناسایی منحصربه‌فرد سیم‌کارت‌های نصب شده (از جمله فیزیکی و الکترونیکی) مورد استفاده در دستگاه ارائه می‌کند. از طریق این شناسه، برنامه شما می‌تواند عملکرد خود را با اطلاعات اشتراک مختلف برای یک سیم‌کارت مشخص مرتبط کند. این مقدار برای یک سیم کارت معین ثابت است مگر اینکه دستگاه به تنظیمات کارخانه بازنشانی شود. با این حال، ممکن است مواردی وجود داشته باشد که یک سیم کارت یک شناسه اشتراک متفاوت در دستگاه‌های مختلف داشته باشد یا سیم‌کارت‌های مختلف دارای شناسه مشابه در دستگاه‌های مختلف باشند.

چرا این توصیه؟

ممکن است برخی از برنامه ها در حال حاضر از شناسه ICC برای این منظور استفاده کنند. از آنجایی که شناسه ICC در سطح جهانی منحصر به فرد است و قابل تنظیم مجدد نیست، دسترسی به برنامه هایی با مجوز READ_PRIVILEGED_PHONE_STATE از Android 10 محدود شده است. با شروع Android 11، Android دسترسی بیشتر به ICCID را از طریق getIccId() API، بدون توجه به برنامه، محدود کرد. سطح API هدف برنامه‌های تحت تأثیر باید به جای آن از شناسه اشتراک استفاده کنند.

ورود به سیستم

در این مورد، برنامه شما یک تجربه ورود به سیستم را ارائه می دهد و به کاربران امکان می دهد یک حساب موجود را با سازمان شما مرتبط کنند.

شناسه پیشنهادی برای استفاده: حساب‌های سازگار با مدیر حساب، مانند پیوند دادن حساب Google

چرا این توصیه؟

پیوند دادن حساب Google به کاربران امکان می‌دهد حساب Google موجود کاربر را با برنامه شما مرتبط کنند و دسترسی بی‌نظیر و ایمن‌تری به محصولات و خدمات سازمان شما فراهم کند. علاوه بر این، می‌توانید محدوده‌های سفارشی OAuth را برای به اشتراک گذاشتن تنها داده‌های ضروری تعریف کنید و با تعریف واضح نحوه استفاده از داده‌های کاربر، اعتماد کاربران را افزایش دهید.

تبلیغات

هدف گیری

در این مورد، برنامه شما نمایه ای از علایق کاربر ایجاد می کند تا تبلیغات مرتبط تری را به آنها نشان دهد.

شناسه توصیه شده برای استفاده: اگر برنامه شما از شناسه ای برای تبلیغات استفاده می کند و در Google Play آپلود یا منتشر می کند، آن شناسه باید شناسه تبلیغات باشد.

چرا این توصیه؟

این یک مورد استفاده مرتبط با تبلیغات است که ممکن است به شناسه ای نیاز داشته باشد که در برنامه های مختلف سازمان شما موجود باشد، بنابراین استفاده از شناسه تبلیغاتی مناسب ترین راه حل است. استفاده از شناسه تبلیغات برای موارد استفاده تبلیغاتی، طبق خط‌مشی محتوای برنامه‌نویس Google Play اجباری است، زیرا کاربر می‌تواند آن را بازنشانی کند.

صرف نظر از اینکه داده‌های کاربر را در برنامه خود به اشتراک می‌گذارید، اگر آنها را برای اهداف تبلیغاتی جمع‌آوری و استفاده می‌کنید، باید اهداف تبلیغات را در بخش ایمنی داده صفحه محتوای برنامه در Play Console اعلام کنید.

اندازه گیری

در این حالت، برنامه شما نمایه یک کاربر را بر اساس رفتار او در بین برنامه های سازمان شما در همان دستگاه ایجاد می کند.

شناسه پیشنهادی برای استفاده: شناسه تبلیغات یا APIهای ارجاع دهنده نصب Play

چرا این توصیه؟

این یک مورد استفاده مرتبط با تبلیغات است که ممکن است به شناسه ای نیاز داشته باشد که در برنامه های مختلف سازمان شما موجود باشد، بنابراین استفاده از شناسه تبلیغاتی مناسب ترین راه حل است. اگر از شناسه ای برای موارد استفاده تبلیغاتی استفاده می کنید، آن شناسه باید شناسه تبلیغاتی باشد زیرا کاربر می تواند آن را بازنشانی کند. در خط‌مشی محتوای برنامه‌نویس Google Play بیشتر بیاموزید.

تبدیل ها

در این مورد، شما تبدیل ها را دنبال می کنید تا متوجه شوید که آیا استراتژی بازاریابی شما موفق بوده است یا خیر.

شناسه پیشنهادی برای استفاده: شناسه تبلیغات یا APIهای ارجاع دهنده نصب Play

چرا این توصیه؟

این یک مورد استفاده مرتبط با تبلیغات است که ممکن است به شناسه ای نیاز داشته باشد که در برنامه های مختلف سازمان شما موجود باشد، بنابراین استفاده از شناسه تبلیغاتی مناسب ترین راه حل است. استفاده از شناسه تبلیغات برای موارد استفاده تبلیغاتی، طبق خط‌مشی محتوای برنامه‌نویس Google Play اجباری است، زیرا کاربر می‌تواند آن را بازنشانی کند.

بازاریابی مجدد

در این حالت، برنامه شما تبلیغاتی را بر اساس علایق قبلی کاربر نشان می دهد.

شناسه پیشنهادی برای استفاده: شناسه تبلیغاتی

چرا این توصیه؟

این یک مورد استفاده مرتبط با تبلیغات است که ممکن است به شناسه ای نیاز داشته باشد که در برنامه های مختلف سازمان شما موجود باشد، بنابراین استفاده از شناسه تبلیغاتی مناسب ترین راه حل است. استفاده از شناسه تبلیغات برای موارد استفاده تبلیغاتی، طبق خط‌مشی محتوای برنامه‌نویس Google Play اجباری است، زیرا کاربر می‌تواند آن را بازنشانی کند.

تجزیه و تحلیل برنامه

در این مورد، برنامه شما رفتار کاربر را ارزیابی می کند تا به شما در تعیین موارد زیر کمک کند:

  • کدام یک از محصولات یا برنامه های دیگر سازمان شما ممکن است برای کاربر مناسب باشد.
  • چگونه کاربران را به استفاده از اپلیکیشن خود علاقه مند کنیم.
  • آمار و تجزیه و تحلیل استفاده را برای کاربران خارج از سیستم یا ناشناس اندازه گیری کنید.

راه حل های ممکن عبارتند از:

  • شناسه مجموعه برنامه: شناسه مجموعه برنامه به شما امکان می‌دهد تا زمانی که از داده‌های کاربر برای مقاصد تبلیغاتی استفاده نکنید، رفتار کاربر را در چندین برنامه که سازمان شما مالک آن است، تجزیه و تحلیل کنید. اگر دستگاه‌هایی را هدف قرار می‌دهید که از خدمات Google Play پشتیبانی می‌کنند، توصیه می‌کنیم از App Set ID استفاده کنید.
  • شناسه Firebase (FID): یک FID به برنامه ای که آن را ایجاد می کند، محدود می شود، که از استفاده از شناسه برای ردیابی کاربران در سراسر برنامه ها جلوگیری می کند. همچنین به راحتی قابل تنظیم مجدد است، زیرا کاربر می تواند داده های برنامه را پاک کند یا برنامه را دوباره نصب کند. فرآیند ایجاد یک FID ساده است. راهنمای نصب Firebase را ببینید.

توسعه اپلیکیشن

گزارش خرابی

در این حالت، برنامه شما اطلاعاتی را در مورد زمان و چرایی خرابی در دستگاه های کاربر جمع آوری می کند.

شناسه پیشنهادی برای استفاده: FID یا App set ID

چرا این توصیه؟

یک FID به برنامه ای که آن را ایجاد می کند محدود می شود، که از استفاده از شناسه برای ردیابی کاربران در سراسر برنامه ها جلوگیری می کند. همچنین به راحتی قابل تنظیم مجدد است، زیرا کاربر می تواند داده های برنامه را پاک کند یا برنامه را دوباره نصب کند. فرآیند ایجاد یک FID ساده است. راهنمای نصب Firebase را ببینید. شناسه مجموعه برنامه به شما امکان می‌دهد تا زمانی که از داده‌های کاربر برای مقاصد تبلیغاتی استفاده نکنید، رفتار کاربر را در چندین برنامه که سازمان شما مالک آن است، تجزیه و تحلیل کنید.

گزارش عملکرد

در این حالت، برنامه شما معیارهای عملکرد، مانند زمان بارگذاری و مصرف باتری را جمع‌آوری می‌کند تا به بهبود کیفیت برنامه شما کمک کند.

شناسه توصیه شده برای استفاده: Firebase Performance Monitoring

چرا این توصیه؟

نظارت بر عملکرد Firebase به شما کمک می‌کند روی معیارهایی تمرکز کنید که برای شما مهم‌تر هستند و تأثیر تغییر اخیر در برنامه خود را آزمایش کنید.

تست اپلیکیشن

در این مورد، برنامه شما تجربه کاربر با برنامه شما را برای اهداف آزمایش یا اشکال زدایی ارزیابی می کند.

شناسه پیشنهادی برای استفاده: FID یا App set ID

چرا این توصیه؟

یک FID به برنامه ای که آن را ایجاد می کند محدود می شود، که از استفاده از شناسه برای ردیابی کاربران در سراسر برنامه ها جلوگیری می کند. همچنین به راحتی قابل تنظیم مجدد است، زیرا کاربر می تواند داده های برنامه را پاک کند یا برنامه را دوباره نصب کند. فرآیند ایجاد FID ساده است. راهنمای نصب Firebase را ببینید. شناسه مجموعه برنامه به شما امکان می‌دهد تا زمانی که از داده‌های کاربر برای مقاصد تبلیغاتی استفاده نکنید، رفتار کاربر را در چندین برنامه که سازمان شما مالک آن است، تجزیه و تحلیل کنید.

نصب بین دستگاهی

در این حالت، برنامه شما باید نمونه صحیح برنامه را زمانی که روی چندین دستگاه برای یک کاربر نصب شده است، شناسایی کند.

شناسه پیشنهادی برای استفاده: FID یا GUID

چرا این توصیه؟

یک FID به صراحت برای این منظور طراحی شده است. دامنه آن محدود به برنامه است به طوری که نمی توان از آن برای ردیابی کاربران در برنامه های مختلف استفاده کرد و پس از نصب مجدد برنامه، بازنشانی می شود. در موارد نادری که FID کافی نیست، می توانید از GUID نیز استفاده کنید.

امنیت

تشخیص سوء استفاده

در این مورد، شما سعی می کنید چندین دستگاه جعلی را شناسایی کنید که به خدمات باطن شما حمله می کنند.

شناسه پیشنهادی برای استفاده: کد یکپارچگی Google Play Integrity API

چرا این توصیه؟

برای تأیید اینکه درخواست از یک دستگاه Android واقعی می‌آید - به جای شبیه‌ساز یا کد دیگری که دستگاه دیگری را جعل می‌کند - از Google Play Integrity API استفاده کنید.

کلاهبرداری تبلیغاتی

در این حالت، برنامه شما بررسی می‌کند که برداشت‌ها و اقدامات کاربر در برنامه شما واقعی و قابل تأیید هستند.

شناسه پیشنهادی برای استفاده: شناسه تبلیغاتی

چرا این توصیه؟

استفاده از شناسه تبلیغات برای موارد استفاده تبلیغاتی، طبق خط‌مشی محتوای برنامه‌نویس Google Play اجباری است، زیرا کاربر می‌تواند آن را بازنشانی کند.

مدیریت حقوق دیجیتال (DRM)

در این حالت، برنامه شما می‌خواهد از دسترسی جعلی به مالکیت معنوی یا محتوای پولی محافظت کند.

شناسه پیشنهادی برای استفاده: استفاده از FID یا GUID کاربر را مجبور می‌کند تا برنامه را مجدداً نصب کند تا محدودیت‌های محتوا را دور بزند، که بار کافی برای بازدارندگی بیشتر افراد است. اگر این محافظت کافی نیست، Android یک API DRM ارائه می‌کند که می‌تواند برای محدود کردن دسترسی به محتوا استفاده شود، شامل شناسه هر APK، شناسه Widevine.

تنظیمات برگزیده کاربر

در این حالت، برنامه شما وضعیت کاربر هر دستگاه را در برنامه شما ذخیره می‌کند، مخصوصاً برای کاربرانی که وارد سیستم نشده‌اند. می‌توانید این حالت را به برنامه دیگری منتقل کنید که با همان کلید در همان دستگاه امضا شده است.

شناسه پیشنهادی برای استفاده: FID یا GUID

چرا این توصیه؟

تداوم اطلاعات از طریق نصب مجدد توصیه نمی شود زیرا ممکن است کاربران بخواهند تنظیمات برگزیده خود را با نصب مجدد برنامه تنظیم مجدد کنند.