إضافة خريطة

اختَر النظام الأساسي: Android iOS JavaScript

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

المقدمة

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

بالإضافة إلى وظيفة الربط، توفّر واجهة برمجة التطبيقات أيضًا مجموعة من التفاعلات التي تتوافق مع نموذج واجهة مستخدم iOS. على سبيل المثال، يمكنك إعداد التفاعلات مع خريطة من خلال تحديد المجيبين الذين يتفاعلون مع إيماءات المستخدم، مثل النقر والنقر مرتين.

إنّ فئة المفتاح عند العمل مع عنصر على "الخريطة" هي فئة GMSMapView. يعالج GMSMapView العمليات التالية تلقائيًا:

  • جارٍ الاتصال بخدمة "خرائط Google"
  • جارٍ تنزيل مربعات الخرائط.
  • يتم عرض المربّعات على شاشة الجهاز.
  • عرض عناصر التحكّم المختلفة مثل العرض الشامل والتكبير/التصغير.
  • الاستجابة لطلبات التحريك والتكبير/التصغير عبر تحريك الخريطة وتكبيرها أو تصغيرها
  • الاستجابة لإيماءات إصبعين من خلال إمالة زاوية عرض الخريطة.

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

إنشاء خرائط باستخدام منصة SwiftUI

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

تم إنشاء حزمة تطوير البرامج بالاستناد إلى بيانات "خرائط Google" للتطبيقات المتوافقة مع iOS بالإضافة إلى UIKit، وهي لا توفّر حتى الآن طريقة عرض متوافقة مع SwiftUI. تتطلب إضافة الخرائط في SwiftUI التوافق مع UIViewRepresentable أو UIViewControllerRepresentable. للاطّلاع على مزيد من المعلومات، يُرجى الاطّلاع على الدرس التطبيقي حول الترميز إضافة خريطة إلى تطبيق iOS باستخدام SwiftUI.

إضافة خريطة

الخطوات الأساسية لإضافة خريطة هي:

  1. للحصول على حزمة تطوير البرامج (SDK) والحصول على مفتاح لواجهة برمجة التطبيقات وإضافة أُطر العمل المطلوبة، اتّبِع الخطوات التالية:

    1. الإعداد في Google Cloud Console

    2. استخدام مفتاح لواجهة برمجة التطبيقات

    3. إعداد مشروع Xcode

  2. في AppDelegate، قدِّم مفتاح واجهة برمجة التطبيقات إلى طريقة الفئة provideAPIKey: في GMSServices.

  3. إنشاء أو تحديث ViewController. إذا تم عرض الخريطة عندما تصبح وحدة التحكم في العرض هذه مرئية، احرص على إنشاؤها ضمن طريقة loadView.

    1. أنشئ كائن GMSCameraPosition يحدد الوسط والتكبير/التصغير للخريطة. عند إنشاء مثيل لكائن GMSMapView، عليك تمرير العنصر GMSCameraPosition كمَعلمة مطلوبة.

    2. إنشاء صف "GMSMapView" وإنشاء مثيل له باستخدام الطريقة GMSMapView mapWithFrame: إذا كان المطلوب استخدام هذه الخريطة كعرض وحيد لأداة التحكّم في العرض، يمكن استخدام CGRectZero كإطار للخريطة، وسيتم تغيير حجم الخريطة تلقائيًا.

    3. ضبط الكائن GMSMapView كعرض وحدة التحكُّم، مثل self.view = mapView;

يضيف المثال أدناه خريطة تتمركز في وسط مدينة سنغافورة إلى تطبيق.

Swift

import GoogleMaps

class MapObjects : UIViewController {
  override func viewDidLoad() {
    super.viewDidLoad()
    let camera = GMSCameraPosition(latitude: 1.285, longitude: 103.848, zoom: 12)
    let mapView = GMSMapView(frame: .zero, camera: camera)
    self.view = mapView
  }
}
      

Objective-C

#import "MapObjects.h"
@import GoogleMaps;

@implementation MapObjects

- (void)viewDidLoad {
  [super viewDidLoad];
  GMSCameraPosition *camera = [GMSCameraPosition cameraWithLatitude:1.285
                                                          longitude:103.848
                                                               zoom:12];
  GMSMapView *mapView = [GMSMapView mapWithFrame:CGRectZero camera:camera];
  self.view = mapView;
}

@end
      

بعد اتّباع هذه الخطوات، يمكنك ضبط الكائن GMSMapView.

الخطوات التالية

بعد إكمال هذه الخطوات، يمكنك ضبط إعدادات الخريطة.