Integrare Linkedin, Facebook, Twitter e MySpace in un’applicazione Android

L’obiettivo principale di questo esempio è quello di accedere ai provider di social media come Facebook, Twitter e altri, facendo click su un pulsante “Condividi”. All’evento click si aprirà la finestra di dialogo dei provider. L’utente potrà accedere al provider nella finestra di dialogo e sarà possibile aggiornare lo status, ottenere l’elenco degli amici e il profilo utente.

Nell’esempio che mostreremo verrà usata la libreria SocialAuth per Android.

Per poter visualizzare il codice supporta il sito cliccando su uno dei seguenti pulsanti social. Grazie!

Codice:[like_to_read]

public class ShareButtonActivity extends Activity {

// SocialAuth Component
SocialAuthAdapter adapter;

@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);

// Welcome Message
TextView textview = (TextView)findViewById(R.id.text);
textview.setText("Welcome to SocialAuth Demo. We are sharing text SocialAuth Android by share button.");

//Create Your Own Share Button
Button share = (Button)findViewById(R.id.sharebutton);
share.setText("Share");
share.setTextColor(Color.WHITE);
share.setBackgroundResource(R.drawable.button_gradient);

// Add it to Library
adapter = new SocialAuthAdapter(new ResponseListener());

// Add providers
adapter.addProvider(Provider.FACEBOOK, R.drawable.facebook);
adapter.addProvider(Provider.TWITTER, R.drawable.twitter);
adapter.addProvider(Provider.LINKEDIN, R.drawable.linkedin);
adapter.addProvider(Provider.MYSPACE, R.drawable.myspace);
adapter.enable(share);

}

/**
* Listens Response from Library
*
*/

private final class ResponseListener implements DialogListener
{
/**
*
*/
private static final long serialVersionUID = 1L;

public void onComplete(Bundle values) {

// Variable to receive message status
boolean status;

Log.d("ShareButton" , "Authentication Successful");

// Get name of provider after authentication
String providerName = values.getString(SocialAuthAdapter.PROVIDER);
Log.d("ShareButton", "Provider Name = " + providerName);

try
{
// Please avoid sending duplicate message. Social Media Providers block duplicate messages.
adapter.getCurrentProvider().updateStatus("SocialAuth Android" + System.currentTimeMillis());
status = true;
}
catch (Exception e)
{
status = false;
}

// Post Toast or Dialog to display on screen
if(status)
Toast.makeText(ShareButtonActivity.this, "Message posted on " + providerName, Toast.LENGTH_SHORT).show();
else
Toast.makeText(ShareButtonActivity.this, "Message not posted on" + providerName, Toast.LENGTH_SHORT).show();

}

public void onError(SocialAuthError error) {
Log.d("ShareButton" , "Authentication Error");
}

public void onCancel() {
Log.d("ShareButton" , "Authentication Cancelled");
}

}

}

 

Vai all’origine della risorsa

[/like_to_read] 

Michele Pierri

Sviluppatore android/web/desktop, blogger, nonchè sostenitore incallito dell'universo Cloud Computing, nel tempo libero amo fare sport e praticare arti marziali.