Использование Google Places API с Alamofire 4.0 и iOS 10 и Swift 3

мой проект в настоящее время построен в Xcode 8 и в Swift 3 с Alamofire 4.0. Я использую CocoaPods для реализации Alamofire.

мой подфайл выглядит следующим образом:

# Uncomment the next line to define a global platform for your project
platform :ios, '10.0'
use_frameworks!

target 'WTB’ do
# Comment the next line if you're not using Swift and don't want to use        dynamic frameworks
pod 'Alamofire', :git => 'https://github.com/Alamofire/Alamofire.git', :tag => ’4.0.0’


pod 'SwiftyJSON', git: 'https://github.com/BaiduHiDeviOS/SwiftyJSON.git',     branch: 'swift3'

pod 'GooglePlaces'    #doesn't work when this line is added
pod 'ChameleonFramework'
end        

Я получаю следующую ошибку в терминале при попытке установить модуль googlePlaces:

- `Alamofire (from `https://github.com/Alamofire/Alamofire.git`, tag    `4.0.0`)` required by `Podfile`
- `Alamofire (= 4.0.0)` required by `Podfile.lock`
- `Alamofire (~> 3.0)` required by `GooglePlaces (1.0.1)`

Google places работает с предыдущими версиями Alamofire (3.4.0), но я не могу заставить его работать с 4.0.0+.Я делаю что-то не так? кто-нибудь еще имеет ту же проблему/ нашел исправить?

обновление: Мне все еще не повезло после установки clean pod

Matthews-MBP:WTB matthewwyeth$ rm -Rf Pods; pod install
Analyzing dependencies
Pre-downloading: `Alamofire` from    `https://github.com/Alamofire/Alamofire.git`, tag `4.0.0`
Pre-downloading: `SwiftyJSON` from    `https://github.com/BaiduHiDeviOS/SwiftyJSON.git`, commit     `de5dc3b1b421805769590d331178551bbb0e5733`
[!] Unable to satisfy the following requirements:

- `Alamofire (from `https://github.com/Alamofire/Alamofire.git`, tag   `4.0.0`)` required by `Podfile`
- `Alamofire (= 4.0.0)` required by `Podfile.lock`
- `Alamofire (~> 3.0)` required by `GooglePlaces (1.0.1)`

[!] Your Podfile has had smart quotes sanitised. To avoid issues in the            future, you should not use TextEdit for editing it. If you are not using            TextEdit, you should turn off smart quotes in your editor of choice.

2 ответов


вы должны изменить версию Google Places в 2.* в вашем файле pod эта зависимость требует Alamofire 4.0.

Google размещает pod v2.* : https://cocoapods.org/?q=googleplaces


на самом деле проблема в том, когда вы пишите

pod 'GooglePlaces'

внутри PodFile он не приносит правильный стручок, но он по-прежнему получает old GooglePlacesAPI Pod сначала просто типа pod search GooglePlaces внутри терминала, и он принесет много результатов, поскольку первый должен быть сопоставлен, вы заметите, что это будет THE OLD POD так .. Вы должны обновить свои репозитории pod

pod update

и требуется время, чтобы закончить, даже если вы не видите никаких изменений в терминале, но в мониторе активности - >Сеть вы можете контролировать его, так что будьте терпеливы, пока он не закончит обновление и после этого просто перепечатать pod поиск GooglePlaces в терминале, и это будет новый, а затем просто запустить

pod install 

еще раз, и вы хорошо идти !

*вот мой Подфайл на случай, если вам нужно взглянуть:

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '10.0'
use_frameworks!
target 'YOUR-PROJECT' do
pod 'GoogleMaps', '= 2.1.1'
pod 'GooglePlaces', '= 2.1.1'
pod 'Alamofire',
:git => 'https://github.com/Alamofire/Alamofire.git',
:branch => 'master'
end