How to post a tweet from an Android app to one specific account?

后端 未结 2 749
猫巷女王i
猫巷女王i 2021-02-10 16:46

I have to add an option to my game for posting highscores to twitter. The idea is that the app has it\'s own twitter account and the user can upload the score to this specific a

2条回答
  •  無奈伤痛
    2021-02-10 17:16

    I have found a solution for this problem. Thought I share it here in case anyone has the same problem.

    1. First you need to create the account for your app on twitter
    2. Go to this page and log in with the created account
    3. Move your mouse over your account name in the upper right corner and click "My applications"
    4. Click on "Create a new application" on the right
    5. Fill in the form and create the application
    6. Go to Settings and under Application type set the Access type to "Read and Write" and save the settings
    7. Return to the "Details" page and scroll down to the bottom and click the "Create access token" button
    8. Use these generated tokens and the other ones ("Consumer key" and "Consumer secret") which are shown above these previously generated tokens on the same page to post tweets from your app

    Here's the code I used in my app:

    You need to include the twitter4j-core-android-2.2.5.jar package for this. You can download it from here: http://twitter4j.org/archive/twitter4j-android-2.2.5.zip

        tweet=(Button)findViewById(R.id.tweetbtn);
        message=(EditText)findViewById(R.id.messagetxt);
    
        tweet.setOnClickListener(new OnClickListener() {
    
            public void onClick(View arg0) {
                String token =""; 
                String secret = "";
                AccessToken a = new AccessToken(token,secret);
                Twitter twitter = new TwitterFactory().getInstance();
                twitter.setOAuthConsumer("", "");
                twitter.setOAuthAccessToken(a);
                try {
                    twitter.updateStatus(message.getText().toString());
                } catch (TwitterException e) {
                    // TODO Auto-generated catch block
                    e.printStackTrace();
                }
    
            }
        });
    

提交回复
热议问题