خط‌مشی‌های Places SDK برای Android

این مبحث الزامات انتساب را برای همه برنامه‌های توسعه‌یافته با Places SDK برای Android، از جمله سرویس Place Autocomplete که بخشی از آن API است، ارائه می‌کند. برای شرایط بیشتر پلتفرم نقشه‌های Google، شرایط خدمات پلتفرم Google Maps را ببینید.

ارائه شرایط استفاده و سیاست حفظ حریم خصوصی

اگر یک Places SDK برای برنامه Android توسعه می‌دهید، باید شرایط استفاده و یک خط‌مشی رازداری را با برنامه خود در دسترس قرار دهید که مطابق با دستورالعمل‌های ذکر شده در توافقنامه شما با Google باشد:

  • شرایط استفاده و سیاست حفظ حریم خصوصی باید در دسترس عموم باشد.
  • شما باید به صراحت در شرایط استفاده برنامه خود بیان کنید که با استفاده از برنامه شما، کاربران به شرایط خدمات Google ملزم هستند.
  • شما باید در خط‌مشی رازداری خود به کاربران اطلاع دهید که از API(های) Google Maps استفاده می‌کنید و با ارجاع به خط‌مشی رازداری Google ادغام کنید.

مکان پیشنهادی برای در دسترس قرار دادن شرایط استفاده و سیاست حفظ حریم خصوصی به پلت فرم برنامه شما بستگی دارد.

برنامه های موبایل

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

برنامه های کاربردی وب

در صورت توسعه یک برنامه وب، توصیه می شود که پیوندی به شرایط استفاده و سیاست حفظ حریم خصوصی در پاورقی وب سایت خود ارائه دهید.

پیش واکشی، ذخیره سازی یا ذخیره سازی محتوا

برنامه‌هایی که از Places SDK برای Android استفاده می‌کنند، تابع شرایط توافقنامه شما با Google هستند. با توجه به شرایط توافق نامه خود، نباید هیچ محتوایی را از قبل واکشی، فهرست بندی، ذخیره یا ذخیره کنید، مگر تحت شرایط محدودی که در شرایط ذکر شده است.

توجه داشته باشید که شناسه مکان ، که برای شناسایی منحصربه‌فرد یک مکان استفاده می‌شود، از محدودیت‌های حافظه پنهان مستثنی است. شناسه مکان در قسمت «place_id» در Places SDK برای پاسخ‌های Android بازگردانده می‌شود. با نحوه ذخیره، بازخوانی و مدیریت شناسه مکان در راهنمای شناسه مکان آشنا شوید.

نمایش SDK مکان‌ها برای نتایج Android

می‌توانید نتایج Places SDK برای Android را روی نقشه Google یا بدون نقشه نمایش دهید. اگر می‌خواهید نتایج Places SDK برای Android را روی نقشه نمایش دهید، این نتایج باید در نقشه گوگل نمایش داده شوند. استفاده از Places SDK برای داده‌های Android روی نقشه‌ای که نقشه Google نیست ممنوع است.

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

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

لوگوی گوگل باید در گوشه سمت چپ پایین نقشه قرار گیرد و اطلاعات انتساب در گوشه سمت راست پایین قرار گیرد، که هر دو باید روی نقشه به طور کلی ارائه شوند و در زیر نقشه یا مکان دیگری در برنامه نباشند. . مثال نقشه زیر نشان‌واره گوگل را در سمت چپ پایین نقشه و انتساب را در سمت راست پایین نشان می‌دهد.

قرار دادن تخصیص خط مشی

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

دانلود: google_logo.zip

انتساب را تغییر ندهید اطلاعات انتساب را حذف، مبهم یا برش ندهید. نمی‌توانید از نشان‌واره‌های Google به صورت درون خطی استفاده کنید (به عنوان مثال، «این نقشه‌ها از [Google_logo] هستند»).

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

شامل ارائه دهندگان داده شخص ثالث. برخی از داده ها و تصاویر موجود در محصولات نقشه برداری ما از ارائه دهندگانی غیر از Google می آیند. اگر از چنین تصاویری استفاده می‌کنید، متن انتساب شما باید نام «Google» و ارائه‌دهنده(های) داده مربوطه، مانند «داده‌های نقشه: Google، Maxar Technologies» را ذکر کند. هنگامی که ارائه‌دهندگان داده شخص ثالثی وجود دارند که با تصاویر ذکر شده است، فقط شامل «Google» یا نشان‌واره Google به درستی ارجاع داده نمی‌شود.

اگر از Google Maps Platform در دستگاهی استفاده می‌کنید که نمایش اسناد در آن کاربردی نیست، لطفاً با تیم فروش 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.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() تماس بگیرید. این متد یک دنباله کاراکترهای 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();

نمایش یک بررسی

یک شی 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

اگر نمی‌توانید از نشان‌واره دانلودی Google استفاده کنید، دستورالعمل‌های سبک برای اسناد Google در CSS و HTML در زیر آمده است.

فضای خالی

مقدار فضای خالی اطراف قفل باید برابر یا بیشتر از ارتفاع "G" در گوگل باشد.

فاصله بین کپی منبع و نشان‌واره Google باید نصف عرض "G" باشد.

خوانایی

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

رنگ

از متن Google Material Grey 700 در پس‌زمینه سفید یا روشن استفاده کنید که از محدوده 0% تا 40% حداکثر رنگ سیاه استفاده می‌کند.

گوگل
#5F6368
RGB 95 99 104
HSL 213 5 39
HSB 213 9 41

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

گوگل
#FFFFFF
RGB 255 255 255
HSL 0 0 100
HSB 0 0 100

فونت

از فونت Roboto استفاده کنید.

مثال CSS

CSS زیر، وقتی روی متن "Google" اعمال شود، "Google" را با فونت، رنگ و فاصله مناسب روی پس‌زمینه سفید یا روشن نشان می‌دهد.

font-family: Roboto;
font-style: normal;
font-weight: 500;
font-size: 16px;
line-height: 16px;
padding: 16px;
letter-spacing: 0.0575em; /* 0.69px */
color: #5F6368;