2015-02-07 85 views
0

我試圖將Twitter OAuth與Swift整合到我的OS X應用程序中。我從Twitter API獲取請求令牌,然後使用該應用的協議作爲回調URL appname://oauthTwitter OAuth Swift OS X

我已經看過iOS的教程,它使用類似這樣的內容,然後從url傳遞請求令牌,然後獲取訪問令牌。

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String, annotation: AnyObject?) -> Bool { 
    // Fetch access token 
    return true 
} 

哪些被添加到AppDelegate.swift

據我所知,這不會工作,因爲可可沒有UIApplication

任何人都可以幫助我調整OS X的上述代碼?

回答

1

您仍然需要在其info.plist文件中註冊您的應用程序的協議(urlScheme)。假設你已經做到了。你會想要做這樣的事情在應用程序的委託執行以下操作:

let eventManager = NSAppleEventManager.sharedAppleEventManager() 
eventManager.setEventHandler(self, andSelector: 
          Selector("handleEvent:withReplyEvent:"), 
          forEventClass: AEEventClass(kInternetEventClass), 
          andEventID: AEEventID(kAEGetURL)) 

其中selector(「handleAppleEvent」)映射到一個函數名

func handleEvent(event: NSAppleEventDescriptor!, withReplyEvent: NSAppleEventDescriptor!) { 
    println("Check the event for info") 
}