iOS ActivityView Twitter错误地更改URL长度

时间:2013-10-21 17:01:50

标签: iphone ios twitter ios7 uiactivityviewcontroller

在iOS 6和iOS 7上,如果我共享文字:

www.google.com is such a cool website, I really enjoy going to it. You should check out the other one too! www.facebook.com

它说文字太长了-15个字符。但是,如果我在Twitter.com或OS X上共享相同的文本,我很好(3个字符)。

我使用UIActivityViewController通过UIActivityTypePostToTwitter分享。只需将其作为NSString发送到UIActivityViewController

似乎iOS上的URL缩短完全被破坏了。我该如何解决这个问题?

1 个答案:

答案 0 :(得分:1)

今天就碰到了这个 - 看起来如果你输入一个109个字符的推文,然后添加任意长度的网址,那么帖子就会填满,你剩下0个字符。所以看起来它不是URLs being 22 characters long as documented on Twitter,而是在iOS上它们长31个字符。

我用一个长度为27个字符的网址确认了这一点,然后推文的其余部分为113个字符。这应该是140个字符的确切限制,但是共享表(又名UIActivityViewController)表示超过4个字符的限制。

我为你的例子做了数学计算,发现它是123个字符,但是为www.google.com减去14个,为www.facebook.com减去16个,然后在每个URL中添加31个,你得到155个字符,是你在问题中得到-15个字符的地方。

tldr:通过UIActivityViewController与Twitter共享的任何URL都计为31个字符。