Don't like ads? PRO users don't see any ads ;-)
Guest

Untitled

By: a guest on Feb 14th, 2012  |  syntax: Java 5  |  size: 2.16 KB  |  hits: 102  |  expires: Never
download  |  raw  |  embed  |  report abuse  |  print
This paste has a previous version, view the difference. Text below is selected. Please press Ctrl+C to copy to your clipboard. (⌘+C on Mac)
  1. package com.example.app1;
  2.  
  3. import java.io.IOException;
  4. import java.net.MalformedURLException;
  5.  
  6. public class App1 extends Activity implements View.OnClickListener {
  7.  
  8.         Facebook facebook = new Facebook("fb id goes here");
  9.  
  10.         String FILENAME = "AndroidSSO_data";
  11.  
  12.         private SharedPreferences mPrefs;
  13.  
  14.         Button blogout;
  15.  
  16.         @Override
  17.         public void onCreate(Bundle savedInstanceState) {
  18.                 super.onCreate(savedInstanceState);
  19.                 setContentView(R.layout.main);
  20.                 blogout = (Button) findViewById(R.id.blogout);
  21.                 blogout.setOnClickListener(this);
  22.  
  23.                 /*
  24.                  * Get existing access_token if any
  25.                  */
  26.                 mPrefs = getPreferences(MODE_PRIVATE);
  27.                 String access_token = mPrefs.getString("access_token", null);
  28.                 long expires = mPrefs.getLong("access_expires", 0);
  29.                 if (access_token != null) {
  30.                         facebook.setAccessToken(access_token);
  31.                 }
  32.                 if (expires != 0) {
  33.                         facebook.setAccessExpires(expires);
  34.                 }
  35.  
  36.                 /*
  37.                  * Only call authorize if the access_token has expired.
  38.                  */
  39.                 if (!facebook.isSessionValid()) {
  40.                         facebook.authorize(this, new String[] { "email", "publish_checkins" }, new DialogListener() {
  41.                                 @Override
  42.                                 public void onComplete(Bundle values) {
  43.                                         SharedPreferences.Editor editor = mPrefs.edit();
  44.                                         editor.putString("access_token", facebook.getAccessToken());
  45.                                         editor.putLong("access_expires", facebook.getAccessExpires());
  46.                                         editor.commit();
  47.                                 }
  48.  
  49.                                 @Override
  50.                                 public void onFacebookError(FacebookError error) {
  51.                                 }
  52.  
  53.                                 @Override
  54.                                 public void onError(DialogError e) {
  55.                                 }
  56.  
  57.                                 @Override
  58.                                 public void onCancel() {
  59.                                 }
  60.                         });
  61.                 }
  62.         }
  63.  
  64.         @Override
  65.         public void onActivityResult(int requestCode, int resultCode, Intent data) {
  66.                 super.onActivityResult(requestCode, resultCode, data);
  67.                 facebook.authorizeCallback(requestCode, resultCode, data);
  68.         }
  69.  
  70.         @Override
  71.         public void onClick(View v) {
  72.                 switch (v.getId()) {
  73.                         case R.id.blogout:
  74.                                 try {
  75.                                         facebook.logout(this);
  76.                                 } catch (MalformedURLException e) {
  77.                                         // TODO Auto-generated catch block
  78.                                         e.printStackTrace();
  79.                                 } catch (IOException e) {
  80.                                         // TODO Auto-generated catch block
  81.                                         e.printStackTrace();
  82.                                 }
  83.                                 break;
  84.                 }
  85.         }
  86. }