Bug in iOS 11?

bug
ios

#1

I would like to ask for clarification regarding how Apps should handle Twitter integration from iOS 11 onwards.

The official Twitter documentation here states that:

iOS 11 no longer supports using Twitter through the built-in social framework. Instead, you can use Twitter Kit 3 to Tweet, log in users, and use the Twitter API.

And the official Apple documentation states in the release notes the following:

Social accounts have been removed from Settings in iOS 11. Third-party apps no longer have access to those signed-in accounts. (31687059)

My issue right now is trying to tie these 2 together when it comes to SHARING. I understand that login, accessing tweets and other stuff requires the Twitter SDK, but for simple sharing what changes?

Does this mean that we can’t use “SLComposeViewController” to present the Tweet View?

What about sharing through the use of an “UIActivityViewController”?

The current behavior i’ve noticed (and i’ll include Facebook as a comparison) is the following:

SLComposeViewController

Facebook App not installed —> Silently Fails
Twitter App not installed —> Silently Fails

Facebook App installed —> Facebook share view is shown.
Twitter App installed —> Twitter share view is shown, but the following message is shown, “No Twitter Account” “There are no Twitter accounts configured. You can add or create a Twitter account in Settings”, after pressing OK i can post as usual.

  • I’m assuming this is a bug, but is it an iOS bug? or a Twitter bug? or are we just NOT supposed to use “SLComposeViewController” for twitter anymore?

UIActivityViewController

Facebook App not installed —> Facebook doesn’t appear as a sharing option
Twitter App not installed —> Twitter doesn’t appear as a sharing option

Facebook App installed —> Facebook app appears as a sharing option, pressing it shows the facebook sharing view.
Twitter App installed —> Twitter app is shown as a sharing option, but the following message is shown when selected, “No Twitter Account” “There are no Twitter accounts configured. You can add or create a Twitter account in Settings”, after pressing OK i can post as usual.

  • This seems to be the same bug as with the “SLComposeViewController” but we have no control over this since apps that can “share” are shown automatically.

I’ll appreciate if someone from Twitter, or an user with knowledge about this could clarify these points for me.


#2

Hi Oscar,

For UIActivityViewController, the behavior you flag is indeed a bug on our end (our share extension currently still checking for the old SLComposeViewController). This will be be fixed before iOS 11 comes out of beta. Twitter for iOS will continue to provide a share extension.

For the SLComposeViewController use case, Twitter Kit 3 provides a new, standalone composer, that you can use pretty much as before, without changes. The only significant change is that composition now takes place in the context of your app, not the iOS system. You must ensure your app is configured with read/write permission (not just read-only), else Tweeting will fail.

Hope that helps,

Ben


#3

Thanks for the reply, I just have a small follow up.

SLComposeViewController is marked as usable in iOS 11. I understand the correct approach is to implement Twitter Kit 3, but this involves adding an SDK and creating an App on the Twitter developer portal. After a few tests I noticed that, as for Facebook sharing, it’s enough to check if the App is installed or not, (through URL Schemes), then if its installed follow the same code as now using the “SLComposeViewController”. This presents exactly the same sharing window as if using the UIActivityViewController route.

Can I assume this is a valid approach for Twitter as well? (check if the app is installed, then use the SLComposeViewController if it is, or show an alert if it isnt)

*We will probably get around implementing the Twitter Kit 3 SDK at some point though.


#4

Hi Oscar. Thanks for the follow-up question. I’m afraid I’m unaware of whether the SLComposeViewController functionality you’re describing is intentional and supported or not. I wasn’t aware of it before, but it does seem like a logical thing for Apple to maintain some backward compatibility. Unfortunately we’ll need to follow up with Apple to find out how this works and whether it will be supported.

If they’ve mapped their old API to known Facebook/Twitter/etc. app extensions, it may “just work”, but I can’t guarantee that right now without some follow-up I’m afraid. We’ll look into it.

Thanks,

Ben


#5

Okay, thanks for letting me know!
I’ll keep an eye for any updates on this issue.

Oscar


#6

Hi. What’s the latest on this?

Also when will the Twitter app be updated? iOS 11 can’t have long left in beta…a week perhaps?


#7

Dear Twitter Staff
I hear that:
"Note that with Twitter you’ll see the “no accounts configured” dialog but that’s a bug in the Twitter app and will be fixed before iOS 11 is released (as noted in the link I previously shared in this thread)."
Is it correct. Please help confirm.


#8

The updated Twitter app was released yesterday. The share sheet is redesigned and does not prompt about “no accounts configured”.

However, there is a bug/problem in that you can not see what you are typing into the share sheet because the text field is underneath the share sheet title bar.

https://transfer.sh/XDj2y/twitter-ios11.mov (file available for 14 days)

in this screen grab i have swiped down to reveal the “What’s happening?” text


#9

Embedding images seems to have stopped working also.

And getting this error:

Tweet failed to send

Your Tweet couldn’t be sent right now and has been saved as a draft. Please try sending it again later.


#10

Embedding images through my iOS app doesn’t work if Twitter app is installed. It does work if I delete Twitter app. Please fix this critical issue. I have tried re-entering my password. This is on the latest public release of iOS.


#12

Having the same problem…


#13

I have the same issue in landscape orientation with iOS11 GM & latest Twitter app. Top of the share sheet’s scroll view is hidden by navigation bar. Also can’t tweet an image.


#14

That’s funny how it broke right after iOS 11 GM release


#15

Hi all, thank you for reporting this bug.
The bug fix is in flight for next release for main Twitter app.
Twitter Kit will adopt this change for next release.


iOS share extension bug when sharing images?
#17

My app need to run from iOS8 to iOS11, but the TwitterKit2 only support to iOS10 and the TwitterKit3 not support for iOS8. what can i do with this problem.Can you give me same suggestion。 thank you


#18

Unfortunately we took the decision to drop iOS 8 support in Twitter Kit 3. You could build your own integration with an alternative third party library like STTwitter, but if you want to stick with Twitter Kit (which we would of course encourage as it has access to many features of the official client, and automatically means that your app will follow our display requirements) then I’m afraid iOS 8 support is no longer available. Twitter Kit 2 is deprecated.


#19

Does anyone yet know whether this is Apple not supporting app extensions for this, or because Twitter’s extension needs some change to support using SLComposeViewController on iOS 11?


#20

Issues seems to be fixed on latest Twitter.app (7.7.2). Thank you.
But I found an another issue. UIActivityViewController can’t send an large image data.
The image shows up on the share sheet, but sending fails with no error.
Xcode log is below:

[core] SLComposeViewController completeWithResult: 0

When I tested some smaller image, it succeeded.
Is there a limitation for the size of image data?


#21

There is a limitation. Here are some specifics.


#22

Seemed around 1.5MB was the size limitation when I tested. Not 5MB…