Can an iOS app tweet automatically?

ios

#1

I’m updating my app’s twitter features for iOS 11 using Twitter Kit.
Previously (iOS 10, iOS 9) My app would automatically tweet information about a live backgammon match - when set by the user.

e.g.

@mybgbuddy John Doe vs Peter Smith @ Manchester open 2017. Peter Smith wins a 2 cubed single game for 2 points. Score: 0-2 to 7

I’m now testing the twitter “Connect your account” view controller which states that my app "will not be able to … post Tweets for you

Is there a setting that will allow automatic Tweet from apps or has that functionality been removed?


#2

It sounds like the app on apps.twitter.com does not have read/write permissions set up.

Note that apps should never Tweet automatically (per the developer policy - don’t surprise the user, and give them the ability to customise what is posted). The expectation is that the Tweet share sheet should be used so the user has the opportunity to modify the content and confirm the Tweet.


#3

Blockquote don’t surprise the user, and give them the ability to customise what is posted

No surprises, It is/was a very specific ‘opt in’ function which asks - ‘would you like to automatically tweet your match scores including any of your hashtags?’ This allows fans to follow matches on twitter.

The user decides if they’d like to tweet scores or not and can change the setting at any time.

NOTE: This app is an aid to live competitive backgammon where play is often on the clock. Players certainly don’t want any interruption from tweet sheets while in the middle of an important match.

Here is the old settings screen which I’m in the process of updating, previously you could choose your twitter account from within the app

IMG_6177

Blockquote The expectation is that the Tweet share sheet should be used so the user has the opportunity to modify the content and confirm the Tweet.

It seems that if BG Buddy can’t tweet scores automatically with the user’s consent I’ll sadly have to remove twitter functionality completely in the next update.

Is that in fact the case?


#5

Thanks for the question, and for reviewing our rules so carefully. Since users will be explicitly opting in to post scores from their accounts, this type of automation is permitted under the Automation Rules.


#6

Thanks for your reply - good news.

Can you tell me the method in Twitter Kit that actually performs an automated tweet?

edit: I have account authorisation working and am able to tweet using this code

TWTRComposer *composer = [[TWTRComposer alloc] init];
[composer setText:@"test tweet text"];
[composer showFromViewController:self completion:^(TWTRComposerResult result) {
    if (result == TWTRComposerResultCancelled) {
        NSLog(@"Tweet composition cancelled");
    }
    else {
        NSLog(@"Sending Tweet!");
    }
}];

… but I now need to replace this code with an automated tweet method


#7

There is no method in Twitter Kit, you will need to call the statuses/update method via the TWTRAPIClient to post in the background.