Swift Twitter APK只发送140个字符?

Swift Twitter APK只发送140个字符?,swift,twitter,Swift,Twitter,有人知道TwitterKit for iOS是否仍然只能获取140个字符的推文,而不是更新的计数吗?我将文本放入一个带有动态属性的UILabel中,该属性可以调整自身大小,但仍然会收到截断的推文 更奇怪的是,我还使用以下代码来获取JSON: public func fetchTweets(_ handler: @escaping ([Tweet]) -> Void) { fetch { results in var tweets = [Tweet]()

有人知道TwitterKit for iOS是否仍然只能获取140个字符的推文,而不是更新的计数吗?我将文本放入一个带有动态属性的UILabel中,该属性可以调整自身大小,但仍然会收到截断的推文

更奇怪的是,我还使用以下代码来获取JSON:

    public func fetchTweets(_ handler: @escaping ([Tweet]) -> Void) {
    fetch { results in
        var tweets = [Tweet]()
        var tweetArray: NSArray?
        if let dictionary = results as? NSDictionary {
            if let tweets = dictionary[TwitterKey.tweets] as? NSArray {
                tweetArray = tweets
            } else if let tweet = Tweet(data: dictionary) {
                tweets = [tweet]
            }
        } else if let array = results as? NSArray {
            tweetArray = array
        }
        if tweetArray != nil {
            for tweetData in tweetArray! {
                if let tweet = Tweet(data: tweetData as? NSDictionary) {
                    tweets.append(tweet)
                }
            }
        }
        handler(tweets)
    }
}

    public func fetch(_ handler: @escaping (PropertyList?) -> Void) {
    performTwitterRequest("GET", handler: handler)
}

    func performTwitterRequest(_ method: String, handler: @escaping (PropertyList?) -> Void) {
   Twitter.sharedInstance().sessionStore.session()?.userID {

    let client = TWTRAPIClient()
        let jsonExtension = (self.requestType.range(of: Constants.JSONExtension) == nil) ? Constants.JSONExtension : ""
        let url = "\(Constants.twitterURLPrefix)\(self.requestType)\(jsonExtension)"
        var clientError : NSError?
            let request = client.urlRequest(withMethod: method, url: url, parameters: parameters, error: &clientError)
        sendTwitterRequest(client: client, request: request, handler: handler)

}

func sendTwitterRequest(client: TWTRAPIClient, request: URLRequest, handler: @escaping (PropertyList?) -> Void) {
    client.sendTwitterRequest(request) { (response, responseData, error) -> Void in
        if let err = error {
            print("Error: \(err.localizedDescription)")
        }
         var propertyListResponse: PropertyList?
        if responseData != nil {
            propertyListResponse = try? JSONSerialization.jsonObject(with: responseData!, options: .mutableLeaves)
            if propertyListResponse == nil {
                let error = "Couldn't parse JSON response."
                self.log(error)
                propertyListResponse = error
            }
        }  else {
            let error = "No response from Twitter."
            self.log(error)
            propertyListResponse = error
        }
        self.synchronize {
            self.captureFollowonRequestInfo(propertyListResponse)
        }
        handler(propertyListResponse)
    }
}

我建议从一个类似的问题来看这个答案

  • 在iOS上,无论URL的原始长度如何,URL都计为23个字符
  • 在iOS上,一张图像无论大小都计为23个字符
  • 因此,对于图像和URL,我们只有94个字符 在iOS上每推一条可用。而且没有什么可以做的 除非Twitter更新了他们的SDK或者苹果更新了SLComposeViewController

看起来您正在手动调用Twitter API端点来获取一系列推文,因此您需要在调用中添加
tweet\u mode=extended
参数,以便获取最多280个字符的较长推文。

据我所知,140个字符仍然是推文的基本规则。太棒了!知道了!此外,JSON现在称为全文。但有趣的是:我的表格视图中的第一个结果实际上仍然有一个“…”并且我几乎哭了。原来是用户键入的省略号,因为我向下滚动看到了完整的条目。