0

我想在文本中插入链接:

TWTweetComposeViewController *composeController = [[TWTweetComposeViewController alloc] init];
composeController.modalTransitionStyle = UIModalTransitionStyleCrossDissolve;
[composeController setInitialText:NSLocalizedString(kTwitterText, nil)];
[composeController addURL:[NSURL URLWithString:link]];

但首先我尝试插入大链接,我有 4 个额外的字符(我需要删除它们才能发布推文),然后我使用 bit.ly 并创建了短链接,但我有 4 个额外的字符。

1)所以链接宽度并不重要,twitter总是用自己的链接替换它?

2)好的,但是为什么当我在 [composeController setInitialText:NSLocalizedString(kTwitterText, nil)] (而不是[composeController addURL:[NSURL URLWithString:link]];)中添加这些链接时,一切都很好。那么当我们使用 twitter 时,是否会添加一些额外的字符(隐藏) [composeController addURL:[NSURL URLWithString:link]];

更新:

但是当我使用更短的 goo.gl(我实际上只比来自 lit.ly 的链接短 2 个字符)时,它给了我 15 个额外的符号(除了文本之外我还可以写,链接将被发布)。似乎 twitter 不会更改 goo.gl 链接,但会更改其他链接。

4

1 回答 1

0

似乎我找到了答案(我想这是我 2 小时调查的真实基础,但无论如何它是有效的)(我复制了答案,因为起初我选择了社区 wiki):

当您发布到 twitter 的链接时,twitter 会尝试缩短您的链接,但它以一种聪明的方式做到了。

twitter 的缩短 url 长度为 15 个字符。因此,如果您的网址较大,它将缩短。

但是,如果您的 url 较小,则 twitter 文本将由您较短的 url 填充(但无论如何,当您尝试在 twitter 帐户上获取链接时,您会看到 url 无论如何都已更改,但实际上更改后的 url 不会影响您的推文长度,长度将仅填充您较短的链接网址)。

我在 bit.ly 获得了较短的链接(14 个字符),但这对我来说还不够,因为我需要 12 个,但后来我发现我可以将域更改为 j.mp(在我的 bit.ly 帐户的设置中) ) 这给了我 12 个字符的长度。

更新: 在 iOS 5 上,如果您的链接宽度超过 12,您可能会遇到不同的问题(填充的文本不能很长,顺便说一下,如果您的链接宽度为 15,您应该将文本长度减少 15 个字符,很奇怪,但是是这样)

于 2013-06-25T07:16:46.633 回答