এই বিষয়ে Android-এর জন্য Places SDK-এর মাধ্যমে ডেভেলপ করা সব অ্যাপ্লিকেশনের জন্য অ্যাট্রিবিউশন সংক্রান্ত প্রয়োজনীয়তা উল্লেখ করা হয়েছে, এর মধ্যে সেই API-এর অংশ হিসেবে জায়গা অটোমেটিক সম্পূর্ণ করার পরিষেবাও অন্তর্ভুক্ত। Google Maps Platform-এর আরও শর্তাবলী জানতে, Google Maps Platform-এর পরিষেবার শর্তাবলী দেখুন।
নীতি
এই বিভাগে Android-এর জন্য Places SDK-এর সাথে প্রাসঙ্গিক নীতি বর্ণনা করা হয়েছে। নীতিগুলি আপনাকে সঠিকভাবে এবং Google Maps Platform-এর প্রত্যাশা অনুযায়ী পরিষেবা ব্যবহার করতে সাহায্য করার জন্য ব্যবহারিক বাস্তবায়ন নির্দেশিকা এবং প্রয়োজনীয়তা প্রদান করে।
ক্যাশিং সংক্রান্ত বিধিনিষেধের ব্যতিক্রম
মনে রাখবেন, প্লেস আইডি, যা কোনও জায়গাকে অনন্যভাবে শনাক্ত করতে ব্যবহার করা হয়, সেটি
ক্যাশিং সংক্রান্ত বিধিনিষেধ থেকে অব্যাহতিপ্রাপ্ত।
তাই আপনি অনির্দিষ্টকালের জন্য জায়গার আইডি ভ্যালু স্টোর করতে পারবেন।
API রেসপন্সে place_id ফিল্ডে
প্লেস আইডি দেখানো হয়। প্লেস আইডি গাইডে প্লেস আইডি কীভাবে সেভ, রিফ্রেশ ও ম্যানেজ করতে হয় তা জানুন।
ইউরোপীয় অর্থনৈতিক অঞ্চলের দেশ ও অঞ্চল
ইউরোপীয় অর্থনৈতিক অঞ্চলে (EEA) বিলিং ঠিকানা আছে এমন গ্রাহকদের জন্য এই প্রোডাক্টের পরিষেবার শর্তাবলী আলাদা এবং এর কার্যকারিতাও আলাদা হতে পারে। Google Maps Platform-এর সাথে তৈরি করার আগে, নিম্নলিখিত EEA-নির্দিষ্ট শর্তাবলী এবং তথ্য পর্যালোচনা করুন:
- Google Maps Platform EEA পরিষেবার শর্তাবলী
- Google Maps Platform EEA পরিষেবা নির্দিষ্ট শর্তাবলী
- EEA-তে প্রায়শই জিজ্ঞাসিত প্রশ্ন (FAQ)
- Google Maps Platform-এর রোড সেফটি সংক্রান্ত প্রয়োজনীয়তা
আপনার বিলিং ঠিকানা EEA-তে না হলে, নিম্নলিখিত পরিষেবার শর্তাবলী আপনার ক্ষেত্রে প্রযোজ্য হবে:
Google Maps-এর অ্যাট্রিবিউশন সংক্রান্ত প্রয়োজনীয়তা
এই বিভাগে আপনার অ্যাপ্লিকেশনের মাধ্যমে Google Maps এবং কন্টেন্ট দেখানোর জন্য অ্যাট্রিবিউশন সংক্রান্ত প্রয়োজনীয়তা এবং নির্দেশিকা প্রদান করা হয়।
অ্যাট্রিবিউশনের উদাহরণ
Places UI Kit-এর জন্য অ্যাট্রিবিউশনের উদাহরণ নিচে দেওয়া হল।
Google Maps অ্যাট্রিবিউশন দেখান
আপনার অ্যাপ বা ওয়েবসাইটে Google Maps Platform API থেকে কন্টেন্ট দেখানোর সময় আপনাকে Google Maps-এর অ্যাট্রিবিউশন সংক্রান্ত প্রয়োজনীয়তা মেনে চলতে হবে। যদি কন্টেন্টটি এমন একটি Google Map-এ দেখানো হয় যেখানে অ্যাট্রিবিউশন ইতিমধ্যেই দৃশ্যমান, তাহলে আপনাকে অতিরিক্ত অ্যাট্রিবিউশন যোগ করতে হবে না।
Google Maps অ্যাট্রিবিউশন অন্তর্ভুক্ত করা হয়েছে
Google Maps অ্যাট্রিবিউশনের জন্য যা আগে থেকেই Google Maps Platform-এর মাধ্যমে ইউজার ইন্টারফেসে প্রদান করা হয়েছে, যেমন Places UI Kit-এ:
- যেখানেই দেখানো হোক না কেন, অন্তর্ভুক্ত অ্যাট্রিবিউশন সরাবেন না। অ্যাট্রিবিউশন পরিবর্তন, লুকানো বা অস্পষ্ট করবেন না এবং নিশ্চিত করুন যে এটি ব্যাকগ্রাউন্ডের বিপরীতে স্পষ্টভাবে দেখা যাচ্ছে।
- UI ইঙ্গিত যেমন বর্ডার, ব্যাকগ্রাউন্ডের রঙ, শ্যাডো বা পর্যাপ্ত হোয়াইটস্পেস ব্যবহার করে 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 সম্পর্কে জানতে, মেটেরিয়াল ডিজাইন ওয়েবসাইটে পিক্সেল ডেনসিটি দেখুন।
লোগো অ্যাক্সেসিবিলিটি
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. ফন্ট লোড করা বাধ্যতামূলক নয়। ফলব্যাক ফন্ট ফ্যামিলি আপনার প্রোডাক্টে আগে থেকেই ব্যবহার করা হয়েছে এমন যেকোনও Sans Serif বডি ফন্ট অথবা ডিফল্ট সিস্টেম ফন্ট চালু করতে "Sans-Serif" ফন্ট স্টাইল সাধারণ ফন্টের ওজন 400 ফন্টের রঙ সাদা, কালো (#1F1F1F) বা ধূসর (#5E5E5E)। ব্যাকগ্রাউন্ডের সাথে অ্যাক্সেসযোগ্য (৪.৫:১) কনট্রাস্ট বজায় রাখুন। ফন্ট সাইজ ন্যূনতম ফন্ট সাইজ: ১২sp
সর্বাধিক ফন্ট সাইজ: ১৬sp
sp সম্পর্কে জানতে, 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 অ্যাট্রিবিউশনের ভিজ্যুয়াল ট্রিটমেন্টের জন্য এইসব প্রয়োজনীয়তা অনুসরণ করুন।কন্টেন্টের উপরে বা নিচে এবং একই ভিজ্যুয়াল কন্টেনারের মধ্যে অ্যাট্রিবিউশন দেখান। এক লাইনের কন্টেন্টের ক্ষেত্রে, অ্যাট্রিবিউশন ডান বা বাঁদিকে দেখানো যেতে পারে।
বর্ডার, ব্যাকগ্রাউন্ডের রঙ, শ্যাডো বা পর্যাপ্ত হোয়াইটস্পেসের মতো UI কিউ ব্যবহার করে Google Maps Platform কন্টেন্টকে অন্যান্য কন্টেন্ট থেকে আলাদা করুন।
- Google Maps Platform-এর নয় এমন কন্টেন্টের সাথে Google Maps-কে যুক্ত করে ভুলভাবে উপস্থাপন করবেন না।
- অ্যাট্রিবিউশন সবসময় দেখা যাচ্ছে ও পড়া যাচ্ছে কিনা তা যাচাই করুন। এটি কখনও সরাবেন, লুকাবেন, অস্পষ্ট করবেন বা পরিবর্তন করবেন না।
এইসব ভিজ্যুয়াল প্রয়োজনীয়তার উদাহরণ নিচের ছবিতে দেখানো হয়েছে।
থার্ড-পার্টি ডেটা প্রদানকারী
আমাদের ম্যাপিং প্রোডাক্টের কিছু ডেটা ও ছবি Google ছাড়া অন্যান্য পরিষেবা প্রদানকারীর থেকে আসে। Map Tiles API-এর মতো কিছু প্রোডাক্টের ক্ষেত্রে, আমরা আপনাকে থার্ড-পার্টি ডেটা প্রদানকারীর জন্য প্রয়োজনীয় অ্যাট্রিবিউশন প্রদান করতে পারি। আমরা যখন তা করি, তখন আপনার অ্যাট্রিবিউশনের টেক্সটে "Google Maps" নাম এবং প্রাসঙ্গিক ডেটা প্রদানকারীর নাম উল্লেখ করতে হবে, যেমন "ম্যাপ ডেটা: Google, Maxar Technologies." Google যখন থার্ড-পার্টি অ্যাট্রিবিউশন প্রদান করে, তখন শুধুমাত্র "Google Maps" বা Google লোগো অন্তর্ভুক্ত করা সঠিক অ্যাট্রিবিউশন নয়।
অন্যান্য অ্যাট্রিবিউশন সংক্রান্ত প্রয়োজনীয়তা
থার্ড-পার্টি অ্যাট্রিবিউশন ফিরিয়ে আনতে এবং আপনার অ্যাপে অ্যাট্রিবিউশন দেখাতে এইসব নির্দেশাবলী অনুসরণ করুন।
কোনও জায়গা থেকে অ্যাট্রিবিউশন ফিরিয়ে আনা হচ্ছে
আপনার অ্যাপ যদি আইডি অনুযায়ী জায়গা পান কল করে পাওয়া তথ্য দেখায়, তাহলে অ্যাপটিকে অবশ্যই প্রাপ্ত জায়গার বিবরণের জন্য থার্ড-পার্টি অ্যাট্রিবিউশন দেখাতে হবে।
API একটি
Place
অবজেক্ট রিটার্ন করে। Place অবজেক্ট থেকে অ্যাট্রিবিউশন ফিরিয়ে আনতে,
Place.getAttributions() কল করুন।
এই পদ্ধতি String অবজেক্টের List বা দেখানোর মতো কোনও অ্যাট্রিবিউশন না থাকলে
নাল রিটার্ন করে।
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 অবজেক্ট রিটার্ন করে। এই অবজেক্টে AuthorAttribution
অবজেক্টের List
রয়েছে, প্রতিটি লেখক অ্যাট্রিবিউশনের জন্য একটি করে।
// 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 Platform চুক্তিতে উল্লেখ করা Google Maps কন্টেন্ট সংক্রান্ত বিধিনিষেধের আওতাভুক্ত হবে না। এই ব্যতিক্রম শুধুমাত্র ব্যবহারকারীর বেছে নেওয়া রাস্তার ঠিকানা এবং শুধুমাত্র সেই ব্যবহারকারীর নির্দিষ্ট ট্রানজ্যাকশনের ক্ষেত্রে প্রযোজ্য; এটি 'অটোমেটিক সম্পূর্ণ' ফাংশনালিটি বা অন্যান্য Google Maps কন্টেন্টের মাধ্যমে প্রদান করা সাজেস্ট করা ঠিকানার তালিকার ক্ষেত্রে প্রযোজ্য নয়। এই ব্যতিক্রমটি অন্যান্য Google Maps Platform পরিষেবার মাধ্যমে অফার করা কোনও POI বা ঠিকানা লুক-আপ কার্যকারিতার ক্ষেত্রে প্রযোজ্য নয়।

আগের ছবিতে, বাঁদিকে থাকা ঠিকানার তালিকা এখনও Google Maps কন্টেন্টের উপর বিধিনিষেধের সাপেক্ষে। ব্যবহারকারী তার পছন্দের ঠিকানা বেছে নিলে, সেই ঠিকানা Google Maps কন্টেন্টের উপর প্রযোজ্য বিধিনিষেধের অধীন নয়, শুধুমাত্র সেই ব্যবহারকারীর প্রযোজ্য ট্রানজ্যাকশনের উদ্দেশ্যে।