این مبحث الزامات انتساب را برای همه برنامههای توسعهیافته با Places SDK برای Android، از جمله سرویس Place Autocomplete که بخشی از آن API است، ارائه میکند. برای شرایط بیشتر پلتفرم نقشههای Google، شرایط خدمات پلتفرم Google Maps را ببینید.
اگر یک Places SDK برای برنامه Android توسعه میدهید، باید شرایط استفاده و یک خطمشی رازداری را با برنامه خود در دسترس قرار دهید که مطابق با دستورالعملهای ذکر شده در توافقنامه شما با Google باشد: مکان پیشنهادی برای در دسترس قرار دادن شرایط استفاده و سیاست حفظ حریم خصوصی به پلت فرم برنامه شما بستگی دارد. در صورت توسعه یک برنامه تلفن همراه، توصیه می شود پیوندی به شرایط استفاده و خط مشی رازداری در صفحه دانلود برنامه خود در فروشگاه برنامه مربوطه و در منوی تنظیمات برنامه ارائه دهید. در صورت توسعه یک برنامه وب، توصیه می شود که پیوندی به شرایط استفاده و سیاست حفظ حریم خصوصی در پاورقی وب سایت خود ارائه دهید. برنامههایی که از Places SDK برای Android استفاده میکنند، تابع شرایط توافقنامه شما با Google هستند. با توجه به شرایط توافق نامه خود، نباید هیچ محتوایی را از قبل واکشی، فهرست بندی، ذخیره یا ذخیره کنید، مگر تحت شرایط محدودی که در شرایط ذکر شده است. توجه داشته باشید که شناسه مکان ، که برای شناسایی منحصربهفرد یک مکان استفاده میشود، از محدودیتهای حافظه پنهان مستثنی است. شناسه مکان در قسمت «place_id» در Places 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 یک شی اگر برنامه شما عکسهای مکان را نمایش میدهد، باید برای هر عکسی که آنها را دارد، اسناد را نشان دهید. برای دریافت اسناد رشته برای یک عکس، با برای دریافت اسناد نویسنده برای یک عکس، با یک شی هنگام نمایش نظرات ارائه شده توسط کاربران Google، باید نام نویسنده را در نزدیکی قرار دهید. وقتی در فیلد انتساب نویسنده شی گوگل همچنین توصیه می کند که نحوه مرتب سازی نظرات را به کاربر نهایی نشان دهید. برای دسترسی به نظرات، با ارجاعات به ارائه دهندگان شخص ثالث حاوی محتوا و پیوندهایی در قالب HTML است که باید آنها را حفظ کرده و در قالبی که در آن ارائه شده است به کاربر نمایش دهید. گوگل توصیه می کند این اطلاعات را در زیر جزئیات مکان نمایش دهید. API برای همه مکانهایی که توسط برنامه استفاده میشود، ارجاعات ایجاد میکند. اسناد در هر تماس API ارائه می شود، نه در هر مکان. یکی از راههای نمایش اسناد، اگر نمیتوانید از نشانواره دانلودی Google استفاده کنید، دستورالعملهای سبک برای اسناد Google در CSS و HTML در زیر آمده است. مقدار فضای خالی در اطراف قفل باید برابر یا بیشتر از ارتفاع "G" در Google باشد. فاصله بین کپی منبع و نشانواره Google باید نصف عرض "G" باشد. خط کناری باید همیشه واضح، خوانا و با تنوع رنگی مناسب برای یک پسزمینه مشخص باشد. همیشه مطمئن شوید که کنتراست کافی برای تنوع لوگویی که انتخاب می کنید ارائه می کنید. از متن Google Material Grey 700 در پسزمینه سفید یا روشن استفاده کنید که از محدوده 0% تا 40% حداکثر رنگ سیاه استفاده میکند. در پسزمینههای تیرهتر، و بیش از عکاسی یا الگوهای غیرمشغله، از متن سفید برای خطهای کناری و اسناد استفاده کنید. از فونت Roboto استفاده کنید. CSS زیر، وقتی روی متن "Google" اعمال شود، "Google" را با فونت، رنگ و فاصله مناسب روی پسزمینه سفید یا روشن نشان میدهد. برای استفاده در پس زمینه روشن برای استفاده در پس زمینه تیره 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()
قابل دسترسی است.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();
Place
میتواند تا پنج نظر داشته باشد که در آن هر بررسی با یک شی Review
نمایش داده میشود. می توانید به صورت اختیاری این نظرات را در برنامه خود نمایش دهید.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.
}
});
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>
#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
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;