Значение типа 'GMSPlace' не имеет члена 'viewport' в GooglePlaces Cocoapod 3.3.7 - PullRequest
1 голос
/ 04 февраля 2020

Через несколько лет проблема, описанная в этом вопросе , появляется снова,

в последних версиях Cocoapod GooglePlaces (3.3.7), поле viewport не отображается доступно, хотя поле присутствует в интерфейсе класса

//
//  GMSPlace.h
//  Google Places SDK for iOS
//
//  Copyright 2016 Google Inc.
//
//  Usage of this SDK is subject to the Google Maps/Google Earth APIs Terms of
//  Service: https://developers.google.com/maps/terms
//

.....
other fields
.....

/**
* The recommended viewport for this place. May be nil if the size of the place is not known.
*
* This returns a viewport of a size that is suitable for displaying this place. For example,    a
* |GMSPlace| object representing a store may have a relatively small viewport, while a |GMSPlace|
* object representing a country may have a very large viewport.
*/
@property(nonatomic, strong, readonly, nullable) GMSCoordinateBounds *viewport;

.....
.....

Требуется обновление для обеспечения совместимости с API, и это поле очень важно для бизнес-логики приложения c, что мне делать?

Спасибо!

1 Ответ

1 голос
/ 15 марта 2020

Убедитесь, что вы импортируете GooglePlaces и GoogleMapsBase .

GMSCoordinateBounds определен в GoogleMapBase.

Google упоминает об этом изменении в версии 3.5 .0 changelog: https://developers.google.com/places/ios-sdk/releases

GooglePlaces / GooglePlaces.h больше не транзитивно включает классы из GoogleMapsBase.h, поэтому, если вы используете класс GMSCoordinateBounds в своем коде, вы должны теперь также #import GoogleMapsBase / GoogleMapsBase.h.

...