首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >sharedSdkEngineNotInstantiated :抛出HEREMaps地理编码Swift错误

sharedSdkEngineNotInstantiated :抛出HEREMaps地理编码Swift错误
EN

Stack Overflow用户
提问于 2021-02-08 23:23:57
回答 1查看 58关注 0票数 0

所以我使用的是HERE iOS SDK。由于某些原因,try块不工作,我不断得到打印输出'sharedSdkEngineNotInstantiated‘的错误。getCoordinates函数是我在实例化之后尝试测试的函数--我将其包含在内,这样就不会让你们去猜测最终目标是什么。感谢大家的帮助!

代码语言:javascript
复制
class functions: NSObject, ObservableObject {
    var searchEngine: SearchEngine?

    override init() {
        do {
            try searchEngine = SearchEngine()
        } catch let engineInstantiationError {
            print("Failed to make the search engine. The cause was \(engineInstantiationError)")
        }
    }

    func getCoordinates5(from address: String) {
        guard searchEngine != nil else {
            return
        }
        let searchOptions = SearchOptions(maxItems: 10)
    
        let query = TextQuery(address, near: GeoCoordinates(latitude: 40.7128, longitude: 74.0060))
        _ = searchEngine!.search(textQuery: query, options: searchOptions) { (searchError, searchResultItems) in
            guard searchResultItems != nil else {
                return
            }
            for index in 0..<searchResultItems!.count {
                let number = index + 1
                print("Location \(number): \(searchResultItems![index])")
            }
        }
    }
}
EN

回答 1

Stack Overflow用户

发布于 2021-09-03 14:54:56

正如here所解释的,您应该手动实例化sdk,因为当您的代码执行时,您可能还没有加载任何地图(显示地图将自动实例化sdk)。所以你需要做的就是

代码语言:javascript
复制
  // We must explicitly initialize the HERE SDK if no MapView is present.
do {
    try SDKInitializer.initializeIfNecessary()
} catch {
    fatalError("Failed to initialize HERE SDK")
}

在实例化SearchEngine之前

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/66104443

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档