2016-03-10 4 views
0

Я пытаюсь использовать 2 OS-константы, используемые в знаке google в sdk. Вот мой код:Быстрая проблема с назначением констант ОС

func application(application: UIApplication, openURL url: NSURL, options: [String: AnyObject]) -> Bool { 

let appKey = UIApplicationOpenURLOptionsSourceApplicationKey 
let annoKey = UIApplicationOpenURLOptionsAnnotationKey 

return GIDSignIn.sharedInstance().handleURL(url,sourceApplication: options[appKey], 
      annotation: options[annoKey]) 
} 

Но когда я использую UIApplicationOpenURLOptionsSourceApplicationKey и UIApplicationOpenURLOptionsAnnotationKey я получаю сообщение об ошибке говорящее

Использование неразрешенного идентификатора UIApplicationOpenURLOptionsSourceApplicationKey

Любая помощь будет высоко ценится.

+1

Добро пожаловать на переполнение стека! Я отредактировал ваш вопрос, чтобы правильно форматировать встроенный код и blockquote. Дополнительную информацию о форматировании см. В справке по редактированию. Удачи! – Wtower

+0

вы добавили «' #import '" или "#import GoogleSignIn/GoogleSignIn.h'" в заголовочный файл моста вашего проекта? –

+0

нет удача @MichaelDautermann !! – TechBee

ответ

0

Как вы можете видеть options - это словарь, который может содержать String в качестве ключа, и AnyObject как значение.

let appKey = UIApplicationOpenURLOptionsSourceApplicationKey: в этой строке appKey имеет тип AnyObject, поэтому его нельзя отправить в GIDSignIn.sharedInstance(). Попробуйте бросить его в строку:

let appKey = UIApplicationOpenURLOptionsSourceApplicationKey as? String 

или

let appKey = UIApplicationOpenURLOptionsSourceApplicationKey as! String 
+0

Нет. Это не решение. Прочтите мой вопрос еще раз. «Использование неразрешенного идентификатора UIApplicationOpenURLOptionsSourceApplicationKey». UIApplicationOpenURLOptionsSourceApplicationKey не решен. – TechBee