שילוב ספרייה
קל לארגן דפים בעזרת אוספים
אפשר לשמור ולסווג תוכן על סמך ההעדפות שלך.
שילוב הוא
framework לטיפול באירועים אסינכרוניים על ידי שילוב אופרטורים של עיבוד אירועים.
שילוב מאפשר לרכז את הקוד של עיבוד האירועים כדי לקרוא ולתחזק אותו בקלות.
הספרייה GoogleMapsPlatformPlatform
היא ספריית SWIFT שמחזירה
Publishers
עבור ה-SDK של מפות ל-iOS ו-Places SDK ל-iOS, כדי שתוכלו ליהנות
מהמערך העשיר של תכונות שילוב.
התקנה
לעיון ב
ספרייה GoogleMapsPlatformCombine
תיעוד ב-GitHub כדי לראות את דרישות המערכת העדכניות והוראות ההתקנה.
שימוש לדוגמה
ספריית GoogleMapsPlatformPlatform כוללת את
כיתה GMSMapViewPublisher
שמכיל מאפיינים של בעלי אתרים שמאפשרים לכם להירשם לאירועים שהמפה מפיקה.
בדוגמה הבאה מגדירים מכונת GMSMapViewPublisher
שתירשם אליה
אירועי החלפת מצלמה:
let publisher = GMSMapViewPublisher(mapView: mapView)
publisher.didChangeCameraPosition.sink { cameraPosition in
print("Camera position at \(cameraPosition.target)")
}
המאמרים הבאים
אלא אם צוין אחרת, התוכן של דף זה הוא ברישיון Creative Commons Attribution 4.0 ודוגמאות הקוד הן ברישיון Apache 2.0. לפרטים, ניתן לעיין במדיניות האתר Google Developers. Java הוא סימן מסחרי רשום של חברת Oracle ו/או של השותפים העצמאיים שלה.
עדכון אחרון: 2025-08-31 (שעון UTC).
[null,null,["עדכון אחרון: 2025-08-31 (שעון UTC)."],[[["\u003cp\u003eGoogleMapsPlatformCombine is a Swift library that integrates the Maps SDK for iOS and Places SDK for iOS with Apple's Combine framework.\u003c/p\u003e\n"],["\u003cp\u003eThis library provides Publishers for various SDK functionalities, allowing developers to leverage Combine's features for asynchronous event handling.\u003c/p\u003e\n"],["\u003cp\u003eBy using GoogleMapsPlatformCombine, developers can simplify their code and centralize event-processing logic for Google Maps and Places SDKs within their applications.\u003c/p\u003e\n"],["\u003cp\u003eA practical example demonstrates subscribing to camera change events on a \u003ccode\u003eGMSMapView\u003c/code\u003e using the \u003ccode\u003eGMSMapViewPublisher\u003c/code\u003e and Combine's \u003ccode\u003esink\u003c/code\u003e operator.\u003c/p\u003e\n"]]],["The content introduces the GoogleMapsPlatformCombine library, which utilizes Apple's Combine framework for handling asynchronous events within the Google Maps and Places SDKs for iOS. It leverages `Publishers` to manage events. A key action is demonstrated through the `GMSMapViewPublisher` class, allowing users to subscribe to map events. An example illustrates how to monitor camera position changes using the `didChangeCameraPosition` publisher. Installation instructions and further details are available on the library's GitHub page.\n"],null,["[Combine](https://developer.apple.com/documentation/combine) is a\nframework for handling asynchronous events by combining event-processing operators.\nCombine makes your code easier to read and maintain by centralizing your event-processing code.\n\nThe [GoogleMapsPlatformCombine library](https://github.com/googlemaps/ios-combine)\nis a Swift library that returns\n[`Publishers`](https://developer.apple.com/documentation/combine/publisher)\nfor the Maps SDK for iOS and Places SDK for iOS so that you can take advantage\nof the rich set of Combine features.\n\nInstallation See the [GoogleMapsPlatformCombine library](https://github.com/googlemaps/ios-combine) documentation on GitHub for the latest system requirements and installation instructions.\n\n\u003cbr /\u003e\n\nExample Usage\n\nThe GoogleMapsPlatformCombine library includes the\n[`GMSMapViewPublisher`](https://github.com/googlemaps/ios-combine/blob/main/Sources/Maps/GMSMapViewPublisher.swift) class\nwhich contains publisher properties that let you subscribe to events emitted by the map.\n\nThe following example configures a `GMSMapViewPublisher` instance to subscribe to\ncamera change events: \n\n```yaml\nlet publisher = GMSMapViewPublisher(mapView: mapView)\npublisher.didChangeCameraPosition.sink { cameraPosition in\n print(\"Camera position at \\(cameraPosition.target)\")\n}\n```\n\nWhat's next\n\n- View the [Combine library](https://github.com/googlemaps/ios-combine) GitHub project page."]]