This is the sample app for the Google Maps iOS 3D Maps SDK.
It demonstrates various features of the SDK: displaying a map, controlling the camera, adding markers, shapes and models, handling click events on Place markers, and animating views.
- Xcode 16 or later.
- A physical iOS device is recommended for the best performance and visual fidelity.
- Running in the iOS Simulator: The iOS Simulator is supported, but requires Metal API Validation to be disabled in Xcode. A shared scheme with Metal API Validation disabled is included with the project.
- Choose an existing Google Cloud project, or create a new one.
- Enable the Maps 3D SDK for iOS on your project.
- Create an API key.
- Clone this repository.
- Open the project in Xcode.
- Add your API key to the project:
Create a
Secrets.xcconfigfile in theGoogleMaps3DDemodirectory (next toGoogleMaps3DDemo.xcconfig). This file is git-ignored, so your key remains private:MAPS_API_KEY = your_api_key_here - Build and run the app.
Note on iOS Simulator: If you create a custom scheme or run without the shared scheme, ensure Metal: API Validation is set to Disabled under
Product>Scheme>Edit Scheme...>Run>Diagnostics.
A list of samples is presented on the App screen at startup. These samples each demonstrate a specific capability or set of capabilities of the SDK.
Click each item in the list to see the demo.
See the developer guide and reference documentation.
We are happy to accept contributions in accordance with the Contributions policy.
This repository uses Google Maps Platform services. Use of Google Maps Platform services through this library is subject to the Google Maps Platform Terms of Service.
European Economic Area (EEA) developers
If your billing address is in the European Economic Area, effective on 8 July 2025, the Google Maps Platform EEA Terms of Service will apply to your use of the Services. Functionality varies by region. Learn more.
This repository is not a Google Maps Platform Core Service. Therefore, the Google Maps Platform Terms of Service (e.g. Technical Support Services, Service Level Agreements, and Deprecation Policy) do not apply to the code in this repository.
This repository is offered via an open source license. It is not governed by the Google Maps Platform Support Technical Support Services Guidelines, the SLA, or the Deprecation Policy (however, any Google Maps Platform services used by the library remain subject to the Google Maps Platform Terms of Service).
If you find a bug, or have a feature request, please file an issue on GitHub. If you would like to get answers to technical questions from other Google Maps Platform developers, ask through one of our developer community channels.
You can also discuss this library on our Discord server.