ios – ‘ErrorType’不能转换为’NSError’

ios – ‘ErrorType’不能转换为’NSError’,第1张

概述Google Analytics(分析)有错误: ‘ErrorType’ is not convertible to ‘NSError’; did you mean to use ‘as!’ to force downcast? 当我试图调用2次createScreenView时,会发生这种情况 我这样做: override func viewDidLoad() { let t Google Analytics(分析)有错误:

‘ErrorType’ is not convertible to ‘NSError’; dID you mean to use ‘as!’
to force downcast?

当我试图调用2次createScreenVIEw时,会发生这种情况

我这样做:

overrIDe func vIEwDIDLoad() {        let tracker = GAI.sharedInstance().defaultTracker        tracker.set(kGAIScreenname,value: "Demande Gratuite")        var builder = GAIDictionaryBuilder.createScreenVIEw().build() as! [NSObject : AnyObject]        tracker.send(builder)...}    @IBAction func ValIDer(sender: AnyObject) {        ...        let trackerv = GAI.sharedInstance().defaultTracker        trackerv.set(kGAIScreenname,value: "Demande Envoyé")        var builder = GAIDictionaryBuilder.createScreenVIEw().build() as! [NSObject : AnyObject]        trackerv.send(builder)        let eventTracker: NSObject = GAIDictionaryBuilder.createItemWithTransactionID(            "1",name: "test",sku: nil,category: "IOS",price: 1,quantity: 1,currencyCode: nil).build()        trackerv.send(eventTracker as! [NSObject : AnyObject])    }

错误的功能是:

lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator = {    // The persistent store coordinator for the application. This implementation creates and returns a coordinator,having added the store for the application to it. This property is optional since there are legitimate error conditions that Could cause the creation of the store to fail.    // Create the coordinator and store    let coordinator = NSPersistentStoreCoordinator(managedobjectModel: self.managedobjectModel)    let url = self.applicationdocumentsDirectory.URLByAppendingPathComponent("SingleVIEwCoreData.sqlite")    var failureReason = "There was an error creating or loading the application's saved data."    do {        try coordinator.addPersistentStoreWithType(NSsqliteStoreType,configuration: nil,URL: url,options: nil)    } catch {        // Report any error we got.        var dict = [String: AnyObject]()        dict[NSLocalizedDescriptionKey] = "Failed to initialize the application's saved data"        dict[NSLocalizedFailurereasonerrorKey] = failureReason        dict[NSUnderlyingErrorKey] = error as NSError        let wrappedError = NSError(domain: "YOUR_ERROR_DOMAIN",code: 9999,userInfo: dict)        // Replace this with code to handle the error appropriately.        // abort() causes the application to generate a crash log and terminate. You should not use this function in a shipPing application,although it may be useful during development.        NSLog("Unresolved error \(wrappedError),\(wrappedError.userInfo)")        abort()    }    return coordinator}()

另一个问题在这里

let tracker = GAI.sharedInstance().defaultTrackertracker.set(kGAIScreenname,value: "Mentions Légales")var builder = GAIDictionaryBuilder.createScreenVIEw().build() as! [NSObject : AnyObject]tracker.send(builder)

Forced cast from ‘NSMutableDictionary!’ to ‘[NSObject : AnyObject]’
always succeeds; dID you mean to use ‘as’?

Variable ‘builder’ was never mutated; consIDer changing to ‘let’
constant

解决方法 对于我来说,在同一个项目中使用AVFoundation和Core Data也会发生这种情况.

要摆脱错误:

‘ErrorType’ is not convertible to ‘NSError’; dID you mean to use ‘as!’ to force downcast?

或警告:

Conditional cast from ‘ErrorType’ to ‘NSError’ always succeeds

Forced cast from ‘ErrorType’ to ‘NSError’ always succeeds; dID you mean to use ‘as’?

我这样做:

lazy var persistentStoreCoordinator: NSPersistentStoreCoordinator = {    // The persistent store coordinator for the application. This implementation creates and returns a coordinator,having added the store for the application to it. This property is optional since there are legitimate error conditions that Could cause the creation of the store to fail.    // Create the coordinator and store    let coordinator = NSPersistentStoreCoordinator(managedobjectModel: self.managedobjectModel)    let url = self.applicationdocumentsDirectory.URLByAppendingPathComponent("MY_APP_name.sqlite")    var failureReason = "There was an error creating or loading the application's saved data."    do {        try coordinator.addPersistentStoreWithType(NSsqliteStoreType,options: nil)    } catch let error as NSError {        // Report any error we got.        var dict = [String: AnyObject]()        dict[NSLocalizedDescriptionKey] = "Failed to initialize the application's saved data"        dict[NSLocalizedFailurereasonerrorKey] = failureReason        dict[NSUnderlyingErrorKey] = error        let wrappedError = NSError(domain: "YOUR_ERROR_DOMAIN",\(wrappedError.userInfo)")        abort()    } catch {        // dummy    }    return coordinator}()

希望这可以帮助 :)

总结

以上是内存溢出为你收集整理的ios – ‘ErrorType’不能转换为’NSError’全部内容,希望文章能够帮你解决ios – ‘ErrorType’不能转换为’NSError’所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/1095828.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-28
下一篇 2022-05-28

发表评论

登录后才能评论

评论列表(0条)

保存