همانطور که در صفحههای درخواست اجازههای مکان و روالهای مطلوب حریم خصوصی شرح داده شده است، برنامهها فقط باید نوعی از اجازه مکان را درخواست کنند که برای ویژگی سَمت کاربر حیاتی است و این موضوع را بهدرستی برای کاربران شفافسازی کنند. اکثر موارد استفاده فقط زمانی به مکان نیاز دارند که کاربر درحال تعامل با برنامه باشد. اگر برنامهتان به مکان پسزمینهای نیاز دارد، مثلاً هنگام پیادهسازی حصارکشی جغرافیایی، مطمئن شوید که این امر برای عملکرد اصلی برنامه ضروری است، مزایای واضحی برای کاربر ارائه میدهد، و بهگونهای انجام میشود که برای کاربر آشکار است.
بازبینه دسترسی به مکان در پسزمینه
از بازبینه زیر برای شناسایی منطق دسترسی به مکان احتمالی در پسزمینه استفاده کنید:
در مانیفست برنامهتان، اجازه
ACCESS_COARSE_LOCATIONو اجازهACCESS_FINE_LOCATIONرا بررسی کنید. درستیسنجی کنید که برنامهتان به این اجازههای مکان نیاز دارد.- اگر برنامه شما Android 10 (سطح میانای برنامهسازی کاربردی ۲۹) یا بالاتر را هدف قرار میدهد،
اجازه
ACCESS_BACKGROUND_LOCATIONرا نیز بررسی کنید. بررسی کنید که برنامهتان ویژگیای داشته باشد که به آن نیاز دارد.
- اگر برنامه شما Android 10 (سطح میانای برنامهسازی کاربردی ۲۹) یا بالاتر را هدف قرار میدهد،
اجازه
بهدنبال استفاده از میاناهای برنامهسازی کاربردی دسترسی به مکان، مثل Fused Location Provider API، Geofencing API، یا
LocationManagerAPI، در کدتان باشید، مثلاً در ساختارهای زیر:- سرویسهای پسزمینهای
WorkManagerیاJobSchedulerتکلیفAlarmManagerعملیات- قصد معوقی که از ابزارک برنامه فراخوانده میشود
اگر برنامهتان از کیت توسعه نرمافزار یا کتابخانهای استفاده میکند که به مکان دسترسی دارد، این دسترسی به برنامهتان نسبت داده میشود. برای تعیین اینکه آیا کیت توسعه نرمافزار یا کتابخانه به دسترسی به مکان نیاز دارد یا نه، به اسناد کتابخانه مراجعه کنید.
ارزیابی دسترسی به مکان در پسزمینه
اگر متوجه شدید که برنامهتان در پسزمینه به مکان دسترسی دارد، اقدامات زیر را انجام دهید:
- ارزیابی کنید که آیا دسترسی به مکان در پسزمینه برای عملکرد اصلی برنامه حیاتی است یا نه.
اگر به دسترسی به مکان در پسزمینه نیاز ندارید، آن را بردارید.
اگر برنامه شما Android 10 (سطح میانای برنامهسازی کاربردی ۲۹) یا بالاتر را هدفیابی میکند، اجازه
ACCESS_BACKGROUND_LOCATIONرا از مانیفست برنامهتان بردارید. وقتی این اجازه را برمیدارید، دسترسی همیشگی به مکان برای برنامه در دستگاههایی که Android 10 دارند دیگر گزینهای نخواهد بود.مطمئن شوید کاربر میداند که برنامهتان در پسزمینه به مکان دسترسی دارد. این موضوع بهویژه برای مواردی که برای کاربران واضح نیست اهمیت دارد.
درصورت امکان، منطق دسترسی به مکان را بازسازی کنید تا فقط زمانی مکان را درخواست کنید که فعالیت برنامهتان برای کاربران نمایان باشد.
بهروزرسانیهای محدود برای مکان پسزمینهای
اگر دسترسی به مکان پسزمینهای برای برنامهتان ضروری است، بهخاطر داشته باشید که Android با تنظیم محدودیتهای مکان پسزمینهای در دستگاههایی که Android نسخه ۸.۰ (سطح میانای برنامهسازی کاربردی ۲۶) و بالاتر دارند، عمر باتری دستگاه را حفظ میکند. در این نسخههای Android، اگر برنامهتان در پسزمینه اجرا شود، فقط چند بار در ساعت میتواند بهروزرسانیهای مکان را دریافت کند. برای اطلاعات بیشتر، محدودیتهای مکان پسزمینهای را ببینید.
منابع بیشتر
برای کسب اطلاعات بیشتر درباره استفاده از مکان پسزمینهای، مطالب زیر را ببینید:
ویدیوها
نحوه پیدا کردن موارد احتمالی استفاده از مکان پسزمینهای
نمونهها
نمونه مکان پسزمینهای بهترین روشها را برای دسترسی به مکان وقتی برنامه در پسزمینه است نشان میدهد.