如果您已經使用Twitter SDK,則無需再處理ACAccount。
只要按照他們的指示,並且可以手動建立一個請求: Build TW Request manually
下面是該代碼更新的斯威夫特2:
if let userID = Twitter.sharedInstance().sessionStore.session()?.userID {
let client = TWTRAPIClient(userID: userID)
let statusesShowEndpoint = "https://api.twitter.com/1.1/statuses/update.json"
var clientError : NSError?
let request = client.URLRequestWithMethod("POST", URL: statusesShowEndpoint, parameters: dictMessage, error: &clientError)
if let err = clientError {
print("Error: \(err)")
}
else {
client.sendTwitterRequest(request) { (response, data, connectionError) -> Void in
if (connectionError == nil) {
do {
if let dictTWData = try NSJSONSerialization.JSONObjectWithData(data!, options: NSJSONReadingOptions.AllowFragments) as? [String: AnyObject] {
print("\(dictTWData)")
}
}
catch _ as NSError {
}
catch {
fatalError()
}
}
else {
print("Error: \(connectionError)")
}
}
}
}
完美的解決方案!謝謝 – Bonnke
但是,我想使用Swifter Twitter庫,因爲它使得處理其他API更容易。然而,Swifter需要ACAccount來初始化Swifter對象。如何使用Twitter sharedInstance會話創建一個ACAccount對象?看起來,即使Twitter文檔說iOS 11不支持iOS的Social Framework,但我的測試表明它仍然支持沒有任何問題(不知道如何或爲什麼)。 – Annjawn