Google地方信息发布不适用于XCode 6.4

时间:2015-09-16 16:41:01

标签: ios xcode swift google-places-api xcode6.4

我正在使用Xcode 6.4,Swift 1.2版开发一个iOS应用程序。

我正在尝试在我的应用中使用Google Places API的功能当前位置,以获取靠近用户的位置列表,然后将其显示在tableView中。为了猜测位置,我创建了这个函数,每次搜索栏中的文本发生变化时都会激活,并填充一个名为PossiblePlaces的数组,其中包含实时适应的建议:

func search(searchText: String? = nil){

    self.possiblePlaces = []
    if searchText != nil {
        println("before query")
    placesClient?.currentPlaceWithCallback({ (placeLikelihoods:GMSPlaceLikelihoodList?, error:NSError?) -> Void in

        if error != nil {
            println("error")

        }
        if error == nil {
            println("query ended")

            for likelihood in placeLikelihoods!.likelihoods {
                println(likelihood)
                let place = likelihood.name
                let id = likelihood.identifier
                println(id)
                println(place)
                var suggestion = postedPlace(name: place, id: id)
                self.possiblePlaces.append(suggestion)

            }

           self.autocompleteTableView.reloadData()
        }
    })
    }
    }

据我所知,该函数正确启动:我在查询之前得到了#34;"每次文本更改时都会显示消息。但是,我既没有"错误"也没有"查询结束",看似意味着查询永远不会启动。我不知道原因:API密钥是正确的,当GMSPlacesClient初始化时(在ViewDidLoad中)我甚至在控制台中的Google Maps SDK版本上收到一条消息,因此我假设集成有效。

我感谢任何意见!

由于

2 个答案:

答案 0 :(得分:1)

我也有同样的问题。 我在iPhone模拟器上工作的方式是通过在模拟器上更改我的位置:调试 - >地点。也就是说,它被设置为Apple'默认情况下,我只是将其改为Bicycle Ride。 并通过在Info.plist中添加NSLocationWhenInUseUsageDescription权限。

它对我有用

答案 1 :(得分:0)

对于那些可能遇到同样问题的人来说,似乎问题在于模拟器假定模拟设备具有的iOS版本。简单地说,这个问题没有出现在iPhone 6模拟器上,可能是因为Xcode假设设备上的iOS至少是iOS 7.0。