xcode8 beta 'Error' is ambiguous for type

2019-06-16 07:24发布

问题:

According to this article , I need to specify the module to lookup object type , but below function is call from apple api , should I need to wait until Xcode8 really release ? or am I miss anything ?

function in AppDelegate.swift

Import section

回答1:

The Solution is to just type Swift.Error instead of Error.

The issue occurs when one of your modules has its own Error Type...:/

For example:

func application(_ application: UIApplication, didFailToRegisterForRemoteNotificationsWithError error: Swift.Error) {}

I hope this works for you :)



回答2:

The type Error is declared in two imported modules. You have to specify the module from which to use the type. Use Swift.Method instead of Method.

Tip: If you are using the type often, you can create a type alias in your module (application):

typealias Error = Swift.Error

That way you will not need to prefix the type with Swift. any more.