Android: Improving Interfacing with twitter applications
This post builds upon the ideas shown in this post to create a complete function that will do the follow:
- Accept a string input for the message
- Try to open twidroidpro to send this tweet
- If failed, try to open twidroid to send this tweet
- If failed, bring up a list of applications that can send this information
- Return a boolean indicating success of displaying the intent
Code
public boolean intentTwitter(String message){
// Boolean to show if we succeeded or not
// we assume we did until proven otherwise.
boolean success=true;
//Try twidroidpro first
Intent intent = new Intent("com.twidroidpro.SendTweet");
intent.putExtra("com.twidroidpro.extra.MESSAGE", message);
intent.setType("application/twitter");
try{
startActivityForResult(intent, 1);
}
catch(ActivityNotFoundException e){
success=false;
}
// Then twidroid if we failed
if (!success){
success=true;
intent = new Intent("com.twidroid.SendTweet");
intent.putExtra("com.twidroid.extra.MESSAGE", message);
intent.setType("application/twitter");
try{
startActivityForResult(intent, 1);
}
catch(ActivityNotFoundException e){
success=false;
}
}
//Then send general intent if we failed again
if (!success){
success=true;
try {
intent = new Intent(Intent.ACTION_SEND);
intent.putExtra(Intent.EXTRA_TEXT, d);
intent.setType("application/twitter");
startActivity(Intent.createChooser(intent, null));
} catch (ActivityNotFoundException e) {
success=false;
}
}
// return indicating if we were successful in bringing up an intent
// of some description
return success;
}
Example
Below is a screenshot from the wordcube (available on market) application using this function to make the application interact with twitter.
What’s next?
In a future post I will be demonstrating how to interact with the android market, this can be use in conjunction with something similar to above to try and run a program and if the program is not installed the user can be taken to the market to download a program.





