Post einen tweet mit der Android-API
Ich habe die Suche nach einem Weg zur post einen tweet mit meinem Android Anwendung, aber all die Dinge, die ich gefunden habe funktionieren nicht.
Muss ich zugeben, dass Twitter die API ist nicht so einfach zu verstehen, aber mein code ist nicht wirklich lang, und ich sehe nicht, wo liegt mein Fehler.
Dies ist mein code:
public class PartagerTwitter extends Activity {
private CommonsHttpOAuthConsumer httpOauthConsumer;
private OAuthProvider httpOauthprovider;
public final static String consumerKey = XXX;
public final static String consumerSecret = XXX;
private final String CALLBACKURL = "myapp://twitactivity";
private Twitter twitter;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
try {
httpOauthConsumer = new CommonsHttpOAuthConsumer(consumerKey, consumerSecret);
httpOauthprovider = new DefaultOAuthProvider("https://twitter.com/oauth/request_token",
"https://twitter.com/oauth/access_token",
"https://twitter.com/oauth/authorize");
String authUrl = httpOauthprovider.retrieveRequestToken(httpOauthConsumer, CALLBACKURL);
this.startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(authUrl)));
} catch (Exception e) {
e.printStackTrace();
}
}
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
Uri uri = intent.getData();
Log.i("test", uri.toString());
if (uri != null && uri.toString().startsWith(CALLBACKURL)) {
String verifier = uri.getQueryParameter(oauth.signpost.OAuth.OAUTH_VERIFIER);
try {
httpOauthprovider.retrieveAccessToken(httpOauthConsumer, verifier);
twitter = new TwitterFactory().getInstance();
twitter.setOAuthConsumer(consumerKey, consumerSecret);
RequestToken requestToken = twitter.getOAuthRequestToken(CALLBACKURL);
AccessToken accessToken = twitter.getOAuthAccessToken(requestToken);
String token = accessToken.getToken(),
secret = accessToken.getTokenSecret();
accessToken = new AccessToken(token,secret);
Twitter twitter = new TwitterFactory().getOAuthAuthorizedInstance(consumerKey,consumerSecret,accessToken);
twitter.updateStatus("My First Status Update");
} catch (Exception e) {
e.printStackTrace();
}
}
}
}
Natürlich, meine keys sind nicht XXX.
Und noch eine Frage, ist es möglich, nach der Anmeldung, zum schließen der Twitter-Fenster und bringe meine Aktivität in den Vordergrund?
Du musst angemeldet sein, um einen Kommentar abzugeben.
Bitte überprüfen Sie in den folgenden blog-post für eine vollständige end-to-end-guide für die Buchung auf Twitter von einer Android app.
Es enthält auch eine funktionierende Android-Probe in Github.
Erstellen Sie Ihre app mit lese - /Schreibberechtigungen in der Twitter-dev-Website, generiert access token für Ihre Anwendung.
den folgenden code verwenden, um den status zu aktualisieren