این موضوع الزامات ذکر منبع را برای همه برنامههایی که با «کیت توسعه نرمافزار مکانها» برای Android توسعه یافتهاند، ازجمله سرویس «تکمیل خودکار مکان» که بخشی از آن میانای برنامهسازی کاربردی است، ارائه میدهد. برای اطلاع از شرایط بیشتر Google Maps Platform، شرایط خدمات Google Maps Platform را ببینید.
خطمشیها
این بخش خطمشیهای مربوط به «کیت توسعه نرمافزار مکانها، ویژه Android» را شرح میدهد. خطمشیها دستورالعملها و الزامات اجرایی کاربردی را ارائه میدهند تا به شما کمک کنند از «سرویس» بهدرستی و مطابق با انتظارات «پلاتفرم Google Maps» استفاده کنید.
استثنائات محدودیتهای ذخیره کردن در حافظه نهان
توجه داشته باشید که شناسه مکان، که برای شناسایی منحصربهفرد مکان استفاده میشود،
از محدودیتهای ذخیرهسازی موقت معاف است.
بنابراین میتوانید مقادیر شناسه مکان را برای مدت نامحدود ذخیره کنید.
شناسه جا در فیلد place_id در پاسخهای میانای برنامهسازی کاربردی برگردانده میشود. در راهنمای «شناسههای مکان» با نحوه ذخیره، بازآوری، و مدیریت شناسههای مکان آشنا شوید.
کشورها و قلمروهای منطقه اقتصادی اروپا
این محصول برای مشتریانی که نشانی صورتحسابشان در منطقه اقتصادی اروپا (EEA) است، «شرایط خدمات» متفاوتی دارد و ممکن است عملکرد آن نیز متفاوت باشد. قبلاز ساختن با Google Maps Platform، شرایط و اطلاعات زیر را که مختص منطقه اقتصادی اروپا است مرور کنید:
- شرایط خدمات Google Maps Platform در منطقه اقتصادی اروپا
- شرایط خاص سرویس Google Maps Platform در منطقه اقتصادی اروپا
- پرسشگان منطقه اقتصادی اروپا
- الزامات ایمنی جادهای پلاتفرم Google Maps
اگر نشانی صورتحساب شما در منطقه اقتصادی اروپا نیست، شرایط خدمات زیر برای شما اعمال میشود:
الزامات ذکر منبع Google Maps
این بخش الزامات و دستورالعملهای ذکر منبع را برای نمایش Google Maps و محتوا ازطریق برنامههای شما ارائه میدهد.
نمونه اسناد
در زیر نمونهای از ارجاع برای «کیت میانای کاربر جاها» آورده شده است.
نمایش ارجاع Google Maps
هنگام نمایش «محتوا» از میاناهای برنامهسازی کاربردی «پلاتفرم Google Maps» در برنامه یا وبسایتتان، باید الزامات ذکر منبع Google Maps را رعایت کنید. اگر «محتوا» در Google Map نشان داده میشود و ارجاع ازقبل نمایان است، نیازی به افزودن ارجاع اضافی ندارید.
ارجاع Google Maps اضافه شد
برای ارجاع Google Maps که قبلاً توسط «پلاتفرم Google Maps» در میانای کاربر ارائه شده است، مثلاً در «کیت میانای کاربر جاها»:
- ارجاع گنجاندهشده را صرفنظر از جایی که نمایش داده میشود برندارید. اسناد را تغییر ندهید، پنهان نکنید، یا مبهم نکنید و مطمئن شوید که بهوضوح در پسزمینه قابلمشاهده است.
- همیشه «محتوای Google Maps Platform» را بااستفاده از نشانههای میانای کاربری مانند حاشیه، رنگ پسزمینه، سایه، یا فضای خالی کافی بهصورت بصری از محتوای دیگر متمایز کنید.
- هنگام ایجاد تغییرات بصری، باید از همه الزامات ذکر منبع Google Maps پیروی کنید.
نشانواره Google Maps و ارجاع نوشتاری
ارجاع باید هر زمان ممکن است بهشکل نشانواره Google Maps باشد. در مواردی که فضا محدود است، نوشتار Google Maps قابلقبول است. همیشه باید برای کاربران نهایی مشخص باشد که کدام محتوا را Google Maps ارائه کرده است.
ارجاع نشانواره
برای استفاده از نشانواره Google Maps در برنامه یا وبسایتتان، این الزامات را دنبال کنید.بارگیری نشانوارههای Google Maps
از فایلهای رسمی نشانواره Google Maps استفاده کنید. نشانوارههای زیر را بارگیری کنید و دستورالعملهای این بخش را دنبال کنید.
بارگیری داراییهای ارجاع Google Mapsهنگام استفاده از نشانواره Google Maps، این دستورالعملها را دنبال کنید.
- به هیچ وجه نشانواره را تغییر ندهید.
- نسبت ابعادی نشانواره را حفظ کنید تا از اعوجاج جلوگیری شود.
- از نشانواره خطی روی پسزمینه شلوغ، مثل نقشه یا تصویر، استفاده کنید.
- از نشانواره بدون خط پیرامونی روی پسزمینه ساده، مثل رنگ یکدست یا گرادیان ملایم، استفاده کنید.
مشخصات اندازه نشانواره
برای نشانواره Google Maps، این مشخصات اندازه را دنبال کنید:- حداقل ارتفاع نشانواره: ۱۶ پیکسل مستقل از تراکم
- حداکثر ارتفاع نشانواره: ۱۹ پیکسل مستقل از تراکم
- حداقل فضای خالی نشانواره: ۱۰ پیکسل مستقل از تراکم در چپ، راست، و بالا، ۵ پیکسل مستقل از تراکم در پایین
برای آشنایی با dp، به تراکم پیکسل در وبسایت Material Design مراجعه کنید.
دسترسپذیری نشانواره
این الزامات دسترسپذیری را برای نشانواره Google Maps دنبال کنید:- کنتراست دسترسپذیری بین نشانواره و پسزمینه را حفظ کنید.
- برچسب دسترسپذیری با نوشتار Google Maps را اضافه کنید.
انتساب نوشتار
اگر اندازه میانای شما از استفاده از نشانواره Google Maps پشتیبانی نمیکند، میتوانید Google Maps را بهصورت نوشتاری بنویسید. این دستورالعملها را دنبال کنید:
- نوشتار Google Maps را به هیچ وجه تغییر ندهید:
- حروف بزرگ و کوچک Google Maps را تغییر ندهید
- Google Maps را در چند خط ننویسید
- Google Maps را به زبان دیگری بومیسازی نکنید.
- بااستفاده از مشخصه HTML
translate="no"، از ترجمه Google Maps توسط مرورگرها جلوگیری کنید.
نوشتار Google Maps را همانطور که در جدول زیر شرح داده شده است سبکبندی کنید:
الزامات سبک نوشتار Google Maps دارایی سبک خانواده قلم Roboto. بار کردن قلم اختیاری است. خانواده قلم جایگزین هر قلم سنسریف نوشتار اصلی که قبلاً در محصولتان استفاده شده است یا «سنسریف» برای فراخوانی قلم پیشفرض سیستم سبک قلم معمولی وزن قلم ۴۰۰ رنگ قلم سفید، سیاه (#1F1F1F)، یا خاکستری (#5E5E5E). کنتراست دسترسپذیر (۴.۵:۱) را درمقابل پسزمینه حفظ کنید. اندازه قلم حداقل اندازه قلم: ۱۲ اسپی
حداکثر اندازه قلم: ۱۶ اسپی
برای آشنایی با اسپی، به واحدهای اندازه قلم در وبسایت Material Design مراجعه کنید.فاصله حروف معمولی
نمونه CSS
CSS زیر Google Maps را با سبک و رنگ نوشتاری مناسب در پسزمینه سفید یا روشن ارائه میدهد.
@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»، آن را بهاشتباه معرفی نکنید.
- مطمئن شوید که ارجاع همیشه قابلمشاهده و خوانا باشد. هرگز آن را حذف، پنهان، یا مبهم نکنید یا تغییر ندهید.
شکلهای زیر نمونههایی از این الزامات بصری را نشان میدهد.
ارائهدهندگان دادههای طرف سوم
برخیاز دادهها و تصاویر موجود در محصولات نقشهبرداری ما از ارائهدهندگانی غیراز 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،
میتواند حاوی یکی از دو نوع ارجاع باشد:
- ارجاعها، رشته ارجاعی که توسط
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، محصولات جستجو باید نوشتار توضیحی داشته باشند که بیشاز ۱ کلیک فاصله نداشته باشد و عوامل اصلی و وزن عوامل اصلی را که رتبهبندی نتایج جستجو را تعیین میکنند شرح دهد. نوشتار توضیحی:
سرصفحه: درباره این نتایج
متن اصلی: وقتی در اطراف جایی دنبال کسبوکار یا مکانی میگردید، Google Maps به شما نتایج محلی را نشان میدهد. عوامل زیادی - ارتباط درجه اول داشتن، فاصله، و برجسته بودن - ترکیب میشوند تا در یافتن بهترین نتایج برای شما کمک کنند.
دکمه ۱: بیشتر بدانید
نوشتار «بیشتر بدانید» باید به مقاله «مرکز راهنمایی» پیوند داده شود.
دکمه ۲: تأیید
نمایش مرور
یک شیء Place میتواند حداکثر پنج مرور داشته باشد که هر مرور با یک شیء Review نشان داده میشود. میتوانید این مرورها را بهصورت اختیاری در برنامهتان نمایش دهید.
هنگام نمایش مرورهای ارائهشده توسط کاربران Google، باید نام نویسنده را در نزدیکی آن قرار دهید. وقتی در فیلد ارجاع به نویسنده
شیء Review دردسترس باشد، توصیه میکنیم عکس نویسنده
و پیوند به نمایه او را نیز اضافه کنید. تصویر زیر نمونهای از مرور یک پارک را نشان میدهد:

Google همچنین توصیه میکند که نحوه مرتبسازی مرورها را برای کاربر نهایی نمایش دهید.
برای دسترسی به مرورها، با
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 است که باید آنها را حفظ کنید و به همان قالبی که ارائه شدهاند به کاربر نمایش دهید. Google توصیه میکند این اطلاعات را زیر جزئیات مکان نمایش دهید.
این 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» اعمال نمیشود. این استثنا برای هیچکدام از عملکردهای جستجوی نشانی یا نقطه موردعلاقه که توسط دیگر سرویسهای «پلاتفرم Google Maps» ارائه میشود اعمال نمیشود.

در تصویر قبلی، فهرست نشانی در سمت راست همچنان مشمول محدودیتهای «محتوای Google Maps» است. وقتی کاربر نهایی نشانی انتخابیاش را انتخاب میکند، آن نشانی صرفاً برای تراکنش قابلاجرای آن کاربر نهایی مشمول محدودیتهای «محتوای Google Maps» نمیشود.