Welcome, guest! Login / Register - Why register?
Psst.. new poll here.
Psst.. new forums here.

Paste

Pasted as Plain Text by khan ( 13 years ago )
import java.security.MessageDigest;
import java.security.NoSuchAlgorithmException;
import java.security.Signature;

import android.app.Activity;
import android.content.Intent;
import android.content.pm.PackageInfo;
import android.content.pm.PackageManager;
import android.content.pm.PackageManager.NameNotFoundException;
import android.os.Bundle;
import android.util.Base64;
import android.util.Log;

import com.facebook.Request;
import com.facebook.Response;
import com.facebook.Session;
import com.facebook.SessionState;
import com.facebook.model.GraphUser;


public class MainActivity extends Activity {
 Session.StatusCallback statusCallback = new SessionStatusCallback();
 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.main);
     // Add code to print out the key hash
     try {
         PackageInfo info = getPackageManager().getPackageInfo(
                 "com.demofbsso", 
                 PackageManager.GET_SIGNATURES);
         for (android.content.pm.Signature signature : info.signatures) {
             MessageDigest md = MessageDigest.getInstance("SHA");
             md.update(signature.toByteArray());
             Log.d("KeyHash:", Base64.encodeToString(md.digest(), Base64.DEFAULT));
             }
     } catch (NameNotFoundException e) {

     } catch (NoSuchAlgorithmException e) {

     }
  
     Session session = Session.getActiveSession();
        if (session!=null) {
         if(!session.isOpened() && !session.isClosed())
            session.openForRead(new Session.OpenRequest(this).setCallback(statusCallback));
        } else {
            Session.openActiveSession(this, true, statusCallback);
        }
     }
 
   @Override
     public void onStart() {
         super.onStart();
        // Session.getActiveSession().addCallback(statusCallback);
     }

     @Override
     public void onStop() {
         super.onStop();
         Session.getActiveSession().removeCallback(statusCallback);
     }

     @Override
     public void onActivityResult(int requestCode, int resultCode, Intent data) {
         super.onActivityResult(requestCode, resultCode, data);
         Session.getActiveSession().onActivityResult(this, requestCode, resultCode, data);
     }

     @Override
     protected void onSaveInstanceState(Bundle outState) {
         super.onSaveInstanceState(outState);
         Session session = Session.getActiveSession();
         Session.saveSession(session, outState);
     }
     private class SessionStatusCallback implements Session.StatusCallback {
         @Override
         public void call(Session session, SessionState state, Exception exception) {
           Log.e("isSessionOpen",""+session.isOpened());
           if (session.isOpened()) {

             // make request to the /me API
             Request.executeMeRequestAsync(session, new Request.GraphUserCallback() {

               // callback after Graph API response with user object
               @Override
               public void onCompleted(GraphUser user, Response response) {
                 if (user != null) {
                  Log.e("welcome",""+user.getUsername());
                 }
               }
             });
           }
         }
     }
}

 

Revise this Paste

Parent: 64947
Your Name: Code Language: