این مبحث الزامات انتساب را برای همه برنامههای توسعهیافته با Places SDK برای Android، از جمله سرویس Place Autocomplete که بخشی از آن API است، ارائه میکند. برای شرایط بیشتر پلتفرم نقشههای Google، شرایط خدمات پلتفرم Google Maps را ببینید.
سیاست ها
این بخش خطمشیهای مربوط به Places SDK برای Android را شرح میدهد. خطمشیها دستورالعملها و الزامات اجرایی عملی را ارائه میکنند تا به شما کمک کنند از سرویس بهطور صحیح و مطابق با انتظارات پلتفرم Google Maps استفاده کنید.
استثناهایی از محدودیت های حافظه پنهان
توجه داشته باشید که شناسه مکان ، که برای شناسایی منحصربهفرد یک مکان استفاده میشود، از محدودیتهای حافظه پنهان مستثنی است. بنابراین می توانید مقادیر مکان شناسه را به طور نامحدود ذخیره کنید. شناسه مکان در پاسخهای API در قسمت place_id
برگردانده میشود. با نحوه ذخیره، بازخوانی و مدیریت شناسه مکان در راهنمای شناسه مکان آشنا شوید.
کشورها و مناطق منطقه اقتصادی اروپا
این محصول دارای شرایط خدمات متفاوتی برای مشتریان با آدرس صورتحساب در منطقه اقتصادی اروپا (EEA) است و همچنین ممکن است عملکردهای متفاوتی داشته باشد. قبل از ساختن با پلتفرم Google Maps، شرایط و اطلاعات ویژه منطقه اقتصادی اروپا را بررسی کنید:
- شرایط خدمات EEA پلتفرم Google Maps
- شرایط خاص خدمات EEA پلت فرم Google Maps
- سوالات متداول EEA (سوالات متداول)
- الزامات ایمنی جاده پلتفرم نقشه های گوگل
اگر آدرس صورتحساب شما در EEA نیست، شرایط خدمات زیر برای شما اعمال میشود:
الزامات اسناد Google Maps
این بخش الزامات انتساب و دستورالعمل هایی را برای نمایش Google Maps و محتوا از طریق برنامه های کاربردی شما ارائه می دهد.
نمونه اسناد
در زیر یک مثال انتساب برای Places UI Kit آمده است.

نمایش اعتبار نقشه های گوگل
هنگام نمایش محتوا از APIهای پلتفرم Google Maps در برنامه یا وبسایت خود، باید الزامات ارجاع Google Maps را دنبال کنید. اگر محتوا در نقشه Google نشان داده شده است، جایی که انتساب از قبل قابل مشاهده است، نیازی به اضافه کردن اسناد اضافی ندارید.
شامل اسناد Google Maps
برای اسناد Google Maps که قبلاً توسط Google Maps Platform در رابط کاربری ارائه شده است، مانند Places UI Kit:
- انتساب اضافه شده را صرف نظر از جایی که نمایش داده می شود، حذف نکنید. انتساب را تغییر ندهید، پنهان یا مبهم نکنید و مطمئن شوید که به وضوح در پس زمینه قابل مشاهده است.
- همیشه با استفاده از نشانههای رابط کاربری مانند حاشیه، رنگ پسزمینه، سایه یا فضای خالی کافی، محتوای پلتفرم Google Maps را بهصورت بصری از سایر محتواها متمایز کنید.
- هنگام ایجاد تغییرات بصری، باید تمام الزامات اسناد Google Maps را رعایت کنید.
نشانواره و اسناد متنی Google Maps
در صورت امکان، ذکر منبع باید به شکل نشانواره Google Maps باشد. در مواردی که فضا محدود است، متن Google Maps قابل قبول است. همیشه باید برای کاربران نهایی مشخص باشد که کدام محتوا توسط Google Maps ارائه شده است.

انتساب لوگو
برای استفاده از نشانواره Google Maps در برنامه یا وبسایت خود، این الزامات را دنبال کنید.
لوگوی نقشه های گوگل را دانلود کنید
از فایلهای لوگوی رسمی Google Maps استفاده کنید. لوگوهای زیر را دانلود کنید و دستورالعمل های این بخش را دنبال کنید.
داراییهای اسناد Google Maps را دانلود کنیدهنگام استفاده از لوگوی نقشه های گوگل، این دستورالعمل ها را دنبال کنید.
- به هیچ وجه لوگو را تغییر ندهید.
- برای جلوگیری از اعوجاج، نسبت ابعاد لوگو را حفظ کنید.
- از لوگوی مشخص شده در پس زمینه شلوغ، مانند نقشه یا تصویر استفاده کنید.
- از لوگوی بدون طرح روی یک پسزمینه ساده، مانند یک رنگ ثابت یا گرادیان ظریف استفاده کنید.
مشخصات سایز لوگو
این مشخصات اندازه را برای نشانواره Google Maps دنبال کنید:- حداقل ارتفاع لوگو: 16dp
- حداکثر ارتفاع لوگو: 19dp
- حداقل فضای خالی لوگو: 10dp در سمت چپ، راست و بالا، 5dp در پایین
برای آشنایی با dp، تراکم پیکسلی را در وب سایت طراحی متریال ببینید.

قابلیت دسترسی به لوگو
این الزامات دسترسی را برای نشانواره Google Maps دنبال کنید:- کنتراست قابل دسترس بین لوگو و پس زمینه را حفظ کنید.
- یک برچسب دسترسی با متن Google Maps اضافه کنید.

انتساب متن
اگر اندازه رابط کاربری شما از نشانواره Google Maps پشتیبانی نمیکند، میتوانید Google Maps را به صورت متنی بنویسید. این دستورالعمل ها را دنبال کنید:

- متن Google Maps را به هیچ وجه تغییر ندهید:
- حروف بزرگ Google Maps را تغییر ندهید
- نقشه های گوگل را روی چند خط نپیچید
- Google Maps را به زبان دیگری بومی سازی نکنید.
- با استفاده از ویژگی HTML
translate="no"
از ترجمه Google Maps توسط مرورگرها جلوگیری کنید.

به متن Google Maps همانطور که در جدول زیر توضیح داده شده است، سبک دهید:
الزامات استایل متن Google Maps اموال سبک خانواده فونت ربات . بارگیری فونت اختیاری است. خانواده فونت بازگشتی هر فونت بدنه sans serif که قبلاً در محصول شما استفاده شده است یا "Sans-Serif" برای فراخوانی فونت پیشفرض سیستم سبک فونت عادی وزن فونت 400 رنگ فونت سفید، سیاه (#1F1F1F) یا خاکستری (#5E5E5E). کنتراست قابل دسترس (4.5:1) را در پس زمینه حفظ کنید. اندازه فونت حداقل اندازه فونت: 12sp
حداکثر اندازه فونت: 16 sp
برای آشنایی با sp، واحدهای اندازه فونت را در وب سایت طراحی متریال ببینید.فاصله حروف عادی
مثال CSS
CSS زیر نقشه های گوگل را با سبک و رنگ تایپوگرافی مناسب در پس زمینه سفید یا روشن ارائه می کند.
@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap'); .GMP-attribution { font-family: Roboto, Sans-Serif; font-style: normal; font-weight: 400; font-size: 1rem; letter-spacing: normal; white-space: nowrap; color: #5e5e5e; }
الزامات بصری
این الزامات را برای برخورد بصری اسناد Google Maps دنبال کنید.انتساب را در نزدیکی بالا یا پایین محتوا و در همان ظرف بصری قرار دهید. برای یک خط محتوا، انتساب را می توان در سمت راست یا چپ قرار داد.
با استفاده از نشانههای رابط کاربری مانند حاشیه، رنگ پسزمینه، سایه یا فضای خالی کافی، محتوای پلتفرم Google Maps را از سایر محتواها متمایز کنید.
- با نسبت دادن Google Maps به محتوای غیر Google Maps Platform، آن را نادرست معرفی نکنید.
- بررسی کنید که انتساب همیشه قابل مشاهده و خوانا باشد. هرگز آن را حذف، پنهان، مبهم یا تغییر ندهید.
شکل های زیر نمونه هایی از این الزامات بصری را نشان می دهد.



ارائه دهندگان داده شخص ثالث
برخی از داده ها و تصاویر موجود در محصولات نقشه برداری ما از ارائه دهندگانی غیر از Google می آیند. برای برخی از محصولات، مانند Map Tiles API، ممکن است انتساب لازم به ارائهدهنده داده شخص ثالث را در اختیار شما قرار دهیم. وقتی این کار را انجام میدهیم، متن انتساب شما باید نام «Google Maps» و ارائهدهنده(های) داده مربوطه، مانند «دادههای نقشه: Google، Maxar Technologies» را ذکر کند. وقتی Google انتساب شخص ثالث را ارائه میکند، فقط شامل «Google Maps» یا نشانواره Google، انتساب مناسبی نیست.
سایر الزامات انتساب
این دستورالعملها را برای بازیابی اسناد شخص ثالث و نمایش آنها در برنامه خود دنبال کنید.
بازیابی اسناد از یک مکان
اگر برنامه شما اطلاعاتی را که با تماس گرفتن مکان با شناسه به دست آمده را نشان می دهد، برنامه باید اسناد شخص ثالث را برای جزئیات مکان به دست آمده نیز نمایش دهد.
API یک شی Place
را برمی گرداند. برای بازیابی انتساب ها از شی Place
، Place.getAttributions()
را فراخوانی کنید. این متد List
از اشیاء String
را برمی گرداند یا در صورتی که هیچ انتسابی برای نمایش وجود نداشته باشد، null را برمی گرداند.
String placeId = "INSERT_PLACE_ID_HERE"; List<Place.Field> placeFields = Arrays.asList(Place.Field.ID, Place.Field.DISPLAY_NAME); FetchPlaceRequest request = FetchPlaceRequest.newInstance(placeId, placeFields); placesClient.fetchPlace(request).addOnSuccessListener((response) -> { Place place = response.getPlace(); textView.append("Place found: " + place.getName()); List<String> attributions = place.getAttributions(); if (attributions != null) { StringBuilder stringBuilder = new StringBuilder("Attributions: "); for (String attribution : attributions) { stringBuilder.append(attribution).append("\n"); } textView.append(stringBuilder.toString()); }}).addOnFailureListener((exception) -> { if (exception instanceof ApiException) { // Handle the error. } } );
نمایش اسناد برای یک عکس
اگر برنامه شما عکسهای مکان را نمایش میدهد، باید برای هر عکسی که آنها را دارد، اسناد را نشان دهید. PhotoMetadata
، می تواند شامل یکی از دو نوع اسناد باشد:
- Attributions ، یک رشته انتساب که توسط
PhotoMetadata.getAttributions()
قابل دسترسی است. - AuthorAttributions ، یک شی
AuthorAttributions
که توسطPhotoMetadata.getAuthorAttributions()
قابل دسترسی است.
برای دریافت اسناد رشته برای یک عکس، با PhotoMetadata.getAttributions()
تماس بگیرید. این متد یک دنباله کاراکترهای HTML یا یک رشته خالی را در صورتی که هیچ انتسابی برای نمایش وجود نداشته باشد برمی گرداند.
// Get the photo metadata from the Place object. PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0); // Get the attribution text. String attributions = photoMetadata.getAttributions();
برای دریافت اسناد نویسنده برای یک عکس، با PhotoMetadata.getAuthorAttributions()
تماس بگیرید. متد یک شی AuthorAttributions
را برمی گرداند. این شی شامل List
از اشیاء AuthorAttribution
است که یکی برای هر انتساب نویسنده است.
// Get the photo metadata from the Place object. PhotoMetadata photoMetadata = place.getPhotoMetadatas().get(0); // Get the author attributions object. AuthorAttributions authorAttributions = photoMetadata.getAuthorAttributions(); List<AuthorAttribution> authorAttributionList = authorAttributions.asList();
اسناد نتایج جستجو
در اروپا، هنگام استفاده از رتبهبندی بدون تحریف گوگل، محصولات جستجو باید دارای متن توضیحی با فاصله کمتر از یک کلیک باشند که فاکتورهای اصلی و وزن عوامل اصلی تعیینکننده رتبهبندی نتایج جستجو را توصیف کند. متن توضیح دهنده:
سربرگ: درباره این نتایج
بدنه: وقتی مشاغل یا مکانهای نزدیک به یک مکان را جستجو میکنید، Google Maps نتایج محلی را به شما نشان میدهد. چندین عامل - در درجه اول ارتباط، فاصله و برجستگی - برای کمک به یافتن بهترین نتایج برای جستجوی شما ترکیب شده اند.
دکمه 1: بیشتر بدانید
متن "بیشتر بیاموزید" باید به مقاله مرکز راهنمایی پیوند داده شود.
دکمه 2: خوب
نمایش یک بررسی
یک شی Place
میتواند تا پنج نظر داشته باشد که در آن هر بررسی با یک شی Review
نمایش داده میشود. می توانید به صورت اختیاری این نظرات را در برنامه خود نمایش دهید.
هنگام نمایش نظرات ارائه شده توسط کاربران Google، باید نام نویسنده را در نزدیکی قرار دهید. وقتی در فیلد انتساب نویسنده شی Review
موجود است، توصیه می کنیم عکس نویسنده و پیوند به نمایه او را نیز اضافه کنید. تصویر زیر نمونه ای از بررسی یک پارک را نشان می دهد:
گوگل همچنین توصیه می کند که نحوه مرتب سازی نظرات را به کاربر نهایی نشان دهید.
برای دسترسی به نظرات، با Place.getReviews()
تماس بگیرید:
// Specify the fields to return. final List<Place.Field> placeFields = Arrays.asList(Place.Field.REVIEWS); // Construct a request object, passing the place ID and fields array. final FetchPlaceRequest request = FetchPlaceRequest.newInstance("INSERT_PLACE_ID_HERE", placeFields); placesClient.fetchPlace(request).addOnSuccessListener((response) -> { Place place = response.getPlace(); List<Review> reviews = place.getReviews(); // For loop for iterating over the List for (int i = 0; i < reviews.size(); i++) { // For each review, get the Review object. Review placeReview = reviews.get(i); // Get any attribution and author attribution. String reviewAttribution = placeReview.getAttribution(); AuthorAttribution authorAttribution = placeReview.getAuthorAttribution(); // Display the review contents and attributions as necessary. } }).addOnFailureListener((exception) -> { if (exception instanceof ApiException) { // Handle the error. } });
نمایش اسناد شخص ثالث
ارجاعات به ارائه دهندگان شخص ثالث حاوی محتوا و پیوندهایی در قالب HTML است که باید آنها را حفظ کرده و در قالبی که در آن ارائه شده است به کاربر نمایش دهید. گوگل توصیه می کند این اطلاعات را در زیر جزئیات مکان نمایش دهید.
API برای همه مکانهایی که توسط برنامه استفاده میشود، ارقام ایجاد میکند. اسناد در هر تماس API ارائه می شود، نه در هر مکان.
یکی از راههای نمایش اسناد، TextView
است. به عنوان مثال:
TextView attributionsText = (TextView) findViewById(R.id.attributions); String thirdPartyAttributions = place.getAttributions(); attributionsText.setText(thirdPartyAttributions);
نمونه ای از یک منبع شخص ثالث
Listings by <a href="https://www.example.com/">Example Company</a>
تکمیل خودکار آدرسهای کاربر نهایی
وقتی کاربر نهایی از قابلیت تکمیل خودکار در برنامه مشتری شما برای تایپ آدرس خیابان استفاده میکند و آن آدرس خیابان بدون تکمیل خودکار توسط آن کاربر نهایی به طور کامل و دقیق ارائه میشد، آدرس انتخابی کاربر نهایی مشمول محدودیتهای محتوای Google Maps در توافقنامه پلتفرم Google Maps شما نمیشود. این استثنا فقط برای آدرس خیابان انتخاب شده توسط کاربر نهایی و صرفاً برای تراکنش خاص آن کاربر نهایی اعمال می شود. برای فهرست آدرسهای پیشنهادی ارائهشده توسط عملکرد تکمیل خودکار یا سایر محتوای Google Maps اعمال نمیشود. این استثنا برای هیچ POI یا قابلیت جستجوی آدرس ارائه شده توسط سایر سرویسهای پلتفرم Google Maps اعمال نمیشود.
در تصویر قبلی، لیست آدرس در سمت چپ همچنان مشمول محدودیت در محتوای Google Maps است. هنگامی که کاربر نهایی آدرس انتخابی خود را انتخاب کرد، آن آدرس مشمول محدودیتهای محتوای Google Maps صرفاً به منظور تراکنش قابل اعمال آن کاربر نهایی نخواهد بود.