Tweet Web Intent / Twitter app for iOS conflicts

ios
webintent

#1

Hi there!

I think this could be an issue with the Twitter app for iOS in iOS 9, but I’m not sure where else to report it. I can’t seem to find a place to report bugs for the mobile apps. I couldn’t reproduce on desktop or on Android.

I also figured it would be good for other developers to know.

It seems that 2 small changes were made to the Twitter app recently, most likely with the switch to iOS 9. These 2 changes break the way web intents work.

1) You can use + to indicate spaces in tweet text anymore. Instead, you have to use %20.

Here is an example:

https://twitter.com/intent/tweet?text=Hello+World

Will become

HelloWorld

While

https://twitter.com/intent/tweet?text=Hello%20World

renders

Hello World

This can be solved by changing the way your web intents are built, so that’s relatively okay and easy to fix. %20 also works in other clients, so that works out okay.

The second problem, on the other hand, is harder to fix.

  1. The @ symbol isn’t prepended to a Twitter username added with the via parameter.

    https://twitter.com/intent/tweet?text=Hello%20World&via=jeherve

Renders

Hello World via jeherve

While in other clients, it includes the @ symbol:

Hello World via @jeherve

I’m not exactly sure how to fix that without having a double @ in other clients.

If I should report this somewhere else, please let me know!

Thanks!


#2

Web intent parameters should be percent-encoded, RFC 3986 style.

I verified the @ character is not prepended to a username extracted from the via query parameter in iOS 9 after the universal link is handled by the Twitter iOS app. The fix is tied to a template component update in a future release of the Twitter app.


#3

Hello, is there any update on the fix for the iOS Twitter app not generating the “@” symbol when using “via” to share a link?


#4

#5

The @ symbol prefix for the via parameter value should be included in the Tweet composer in the latest version of Twitter for iOS.