无法从安全连接和GMSTileURLConstructor

时间:2018-02-07 20:00:19

标签: ios google-maps ssl

我正在尝试从SSL网址加载地图图块。我加载磁贴的代码如下:

func initializeTiles() {
    let urlInfo:GMSTileURLConstructor = { (x: UInt, y: UInt, zoom: UInt) -> URL in 
        let baseUrl = Constants.MAPS_BASE_URL
        let tileUrl = "\(baseUrl)ImageryMaps&channel=1006&version=1&x=\(x)&y=\(y)&z=\(zoom)&is2d=t"
        return URL(string: tileUrl)!
    }

    let layer = GMSURLTileLayer(urlConstructor: urlInfo)
    if mapView != nil {
        DispatchQueue.main.async {
            layer.zIndex = 100
            layer.tileSize = 512
            layer.map = self.mapView
        }
    }
}

此代码已使用非安全网址进行测试,并成功加载了切片。将此代码与SSL网址一起使用时,我得到以下信息:

NSURLSession/NSURLConnection HTTP load failed (kCFStreamErrorDomainSSL, -9824)

我已经阅读了很多有关此错误的帖子,而且大多数似乎都指向对info.plist文件进行更改。我已经对plist进行了适当的更改,结果是同样的错误。以下是我添加到plist中的设置:

<key>NSAppTransportSecurity</key>
<dict>
    <key>NSAllowsArbitraryLoads</key>
    <true/>
    <key>NSExceptionDomains</key>
    <dict>
        <key>xxxxxxx.com</key>
        <dict>
            <key>NSIncludesSubdomains</key>
            <true/>
            <key>NSExceptionAllowsInsecureHTTPLoads</key>
            <true/>
        </dict>
    </dict>
</dict>

我已经用尽了一些选项或想法。对info.plist进行更改似乎对应用程序完全没有影响。

有人可以在这里尝试别的东西吗?谢谢!

0 个答案:

没有答案