سياسات حزمة تطوير برامج الأماكن لأجهزة Android

يوفّر هذا الموضوع متطلبات تحديد المصدر لجميع التطبيقات التي تم تطويرها باستخدام حزمة تطوير البرامج للأماكن (SDK) الخاصة بالأماكن على أجهزة Android، بما في ذلك خدمة الإكمال التلقائي للأماكن التي تشكّل جزءًا من واجهة برمجة التطبيقات هذه. لمعرفة المزيد من أحكام "منصة خرائط Google"، يمكنك الاطّلاع على بنود خدمة "منصة خرائط Google".

تقديم بنود الاستخدام وسياسة الخصوصية

عند تطوير تطبيق "حزمة تطوير برامج الأماكن" لنظام التشغيل Android، عليك إتاحة بنود الاستخدام وسياسة الخصوصية في تطبيقك بما يتوافق مع الإرشادات الموضّحة في اتفاقيتك مع Google:

  • يجب أن تكون بنود الاستخدام وسياسة الخصوصية متاحة للجميع.
  • يجب أن تذكر صراحةً في بنود الاستخدام الخاصة بتطبيقك أنّه من خلال استخدام تطبيقك، يتقيّد المستخدمون ببنود خدمة Google.
  • عليك إعلام المستخدمين في سياسة الخصوصية بأنّك تستخدم واجهات برمجة التطبيقات لخرائط Google ودمجها بالرجوع إلى سياسة خصوصية Google.

إنّ المكان الذي يُنصح بتوفيره بنود الاستخدام وسياسة الخصوصية يعتمد على النظام الأساسي لتطبيقك.

تطبيقات الأجهزة الجوّالة

في حال تطوير تطبيق للأجهزة الجوّالة، ننصحك بتوفير رابط يؤدي إلى بنود الاستخدام وسياسة الخصوصية على صفحة تنزيل التطبيق في متجر التطبيقات ذي الصلة وفي قائمة إعدادات التطبيق.

تطبيقات الويب

في حال تطوير تطبيق ويب، ننصحك بتوفير رابط يؤدي إلى بنود الاستخدام وسياسة الخصوصية في تذييل موقعك الإلكتروني.

الجلب المسبق للمحتوى أو تخزينه مؤقتًا أو تخزينه

تلتزم التطبيقات التي تستخدم "حزمة تطوير برامج الأماكن" لنظام التشغيل Android ببنود اتفاقيتك مع Google. ووفقًا لبنود الاتفاقية، لا يجوز لك جلب أي "محتوى" أو فهرسته أو تخزينه أو تخزينه مؤقتًا إلا في حالة الشروط المحدودة المنصوص عليها في البنود.

يُرجى العلم أنّ رقم تعريف المكان المستخدَم لتحديد مكان معيّن بشكل فريد معفى من قيود التخزين المؤقت. يتم عرض معرّف المكان في الحقل "place_id" في حزمة "SDK للأماكن" لردود Android. اطّلِع على كيفية حفظ أرقام تعريف الأماكن وإعادة تحميلها وإدارتها في دليل أرقام تعريف الأماكن.

عرض نتائج حزمة تطوير برامج الأماكن لأجهزة Android

يمكنك عرض نتائج حزمة تطوير برامج الأماكن لأجهزة Android على خريطة Google، أو بدون خريطة. إذا كنت تريد عرض نتائج حزمة تطوير برامج الأماكن لأجهزة Android على خريطة، يجب عرض هذه النتائج على "خرائط Google". يُحظر استخدام حزمة تطوير برامج الأماكن لبيانات Android على خريطة ليست ضمن "خرائط Google".

إذا كان تطبيقك يعرض بيانات على إحدى "خرائط Google"، سيتم تضمين شعار Google ولا يجوز تعديله. ولا يُشترَط أن تقدّم التطبيقات التي تعرض بيانات Google على الشاشة نفسها التي تعرض "خرائط Google" بيانات إحالة إضافية إلى Google.

إذا كان تطبيقك يعرض بيانات على صفحة أو طريقة عرض لا تعرض أيضًا "خرائط Google"، يجب عرض شعار Google مع تلك البيانات. على سبيل المثال، إذا كان تطبيقك يعرض بيانات Google في علامة تبويب واحدة، وعرض "خرائط Google" تتضمّن هذه البيانات على علامة تبويب أخرى، يجب أن تعرض علامة التبويب الأولى شعار Google. إذا كان تطبيقك يستخدم حقول بحث مع ميزة الإكمال التلقائي أو بدونها، يجب عرض الشعار بشكل مضمّن.

ينبغي وضع شعار Google في الزاوية السفلية اليمنى من الخريطة، مع وضع معلومات تحديد المصدر في أسفل الزاوية اليمنى، وكلاهما يجب أن يتم تقديمهما على الخريطة ككل وليس أسفل الخريطة أو مكان آخر داخل التطبيق. يُظهر مثال الخريطة التالي شعار Google في أسفل يسار الخريطة، والإحالة في أسفل اليمين.

موضع تحديد المصدر المتعلّق بالسياسة

يحتوي ملف ZIP التالي على شعار Google بالأحجام الصحيحة لتطبيقات الكمبيوتر المكتبي وAndroid وiOS. لا يمكنك تغيير حجم هذه الشعارات أو تعديلها بأي شكل من الأشكال.

تنزيل: google_logo.zip

لا تعدِّل الإحالة. لا تزِل معلومات تحديد المصدر أو تحجبها أو تقصّيها. لا يمكنك استخدام شعارات Google المضمّنة (على سبيل المثال، "هذه الخرائط من [Google_logo]").

إبقاء معلومات تحديد المصدر قريبة: في حال استخدام لقطات شاشة من صور Google خارج إطار التضمينات المباشرة، يجب تضمين معلومات تحديد المصدر العادية كما تظهر في الصورة. إذا لزم الأمر، يمكنك تخصيص نمط نص الإحالة وموضعها، شرط أن يكون النص قريبًا من المحتوى وسهل القراءة للمشاهد أو القارئ العادي. لا يجوز لك نقل معلومات الإسناد من المحتوى، كأن يتم نقلها إلى نهاية كتابك أو معلومات المساهمين في الملفات أو العرض أو تذييل موقعك الإلكتروني.

تضمين مزوّدي البيانات التابعين لجهات خارجية: تأتي بعض البيانات والصور في منتجات الخرائط لدينا من مقدّمي خدمات آخرين غير Google. في حال استخدام مثل هذه الصور، يجب أن يذكر نص الإسناد اسم "Google" ومزوّدي البيانات المعنيين، مثل "بيانات الخريطة: Google, Maxar Technologies". إذا تم ذكر مزوّدي بيانات تابعين لجهة خارجية مع الصور، لا يُعدّ تضمين كلمة "Google" أو شعار Google فقط إحالة سليمة.

إذا كنت تستخدم "منصة خرائط Google" على جهاز لا يعرض عملية تحديد المصدر، يُرجى التواصل مع فريق مبيعات Google لمناقشة التراخيص المناسبة لحالة الاستخدام الخاصة بك.

متطلّبات أخرى لتحديد المصدر

اتّبِع التعليمات التالية لاسترداد إحالات الجهات الخارجية وعرض الإحالات في تطبيقك.

استرداد الإسناد من مكان

إذا كان تطبيقك يعرض معلومات تم الحصول عليها من خلال طلب الحصول على مكان من خلال رقم التعريف، يجب أن يعرض التطبيق أيضًا إحالات الجهات الخارجية لتفاصيل المكان التي تم الحصول عليها.

تعرض واجهة برمجة التطبيقات كائن Place. لاسترداد معلومات تحديد المصدر من عنصر Place، يمكنك استدعاء Place.getAttributions(). تعرض الطريقة List من String عنصر، أو تعرض قيمة فارغة إذا لم تكن هناك تصنيفات لعرضها.

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، ننصحك بتضمين صورة المؤلف وإضافة رابط إلى ملفه الشخصي أيضًا. تُظهر الصورة التالية مثالاً على مراجعة لمنتزه:

عرض إحالة المؤلف

تنصح 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 بعرض هذه المعلومات أسفل تفاصيل المكان.

تُنشئ واجهة برمجة التطبيقات إحالات لجميع الأماكن التي يستخدمها التطبيق. ويتم تقديم الإحالات حسب طلب البيانات من واجهة برمجة التطبيقات، وليس لكل مكان.

لعرض معلومات المساهمة، استخدِم 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 في CSS وHTML إذا لم تتمكّن من استخدام شعار Google القابل للتنزيل.

المساحة الخالية

يجب أن يكون مقدار المساحة الخالية حول الشعار الكامل مساويًا لارتفاع "G" في Google أو أكبر منه.

يجب أن تكون المسافة بين نسخة تحديد المصدر وشعار Google نصف عرض "G".

الوضوح

يجب أن يكون سطر الاسم دائمًا واضحًا ومقروءًا ويظهر بتنوع اللون الصحيح لخلفية معينة. احرص دائمًا على توفير تباين كافٍ لصيغة الشعار التي تختارها.

اللون

استخدِم نص Google Material Gray 700 على خلفية بيضاء أو فاتحة اللون تتراوح بين 0% و40% كحد أقصى من اللون الأسود.

Google
#5F6368
RGB 95 99 104
HSL 213 5 39
HSB 213 9 41

على الخلفيات الداكنة وأثناء التصوير الفوتوغرافي أو الأنماط غير المزدحمة، استخدِم نصًا أبيض للسطر الاسمي والإحالة.

Google
#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;