Android SDK: 2.2 API level 8
Eclipse version: Indigo
First download the Facebook-Android SDK – https://github.com/facebook/facebook-android-sdk/
Following is the code of main Activity class, Simply bind the login, logout and post button to the method would work.
package cis542.facebook;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.net.MalformedURLException;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.view.View;
import com.facebook.android.*;
import com.facebook.android.AsyncFacebookRunner.RequestListener;
import com.facebook.android.Facebook.*;
public class FacebookPostWallActivity extends Activity {
Facebook facebook = new Facebook("YOUR_APP_ID");
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
}
@Override
public void onActivityResult(int requestCode, int resultCode, Intent data) {
super.onActivityResult(requestCode, resultCode, data);
facebook.authorizeCallback(requestCode, resultCode, data);
}
// LOG IN BUTTON
public void onButtonLogin(View v) {
facebook.authorize(this, new DialogListener() {
@Override
public void onComplete(Bundle values) {
}
@Override
public void onFacebookError(FacebookError error) {
}
@Override
public void onError(DialogError e) {
}
@Override
public void onCancel() {
}
});
}
// LOG OUT
public void onButtonLogout(View v) {
AsyncFacebookRunner mAsyncFbRunner = new AsyncFacebookRunner(facebook);
mAsyncFbRunner.logout(getBaseContext(), new RequestListener() {
@Override
public void onComplete(String response, Object state) {
}
@Override
public void onIOException(IOException e, Object state) {
}
@Override
public void onFileNotFoundException(FileNotFoundException e,
Object state) {
}
@Override
public void onMalformedURLException(MalformedURLException e,
Object state) {
}
@Override
public void onFacebookError(FacebookError e, Object state) {
}
});
}
// POST BUTTON
public void onButtonClick(View v) {
// AsyncFacebookRunner mAsyncFbRunner = new
// AsyncFacebookRunner(facebook);
Bundle params = new Bundle();
params.putString("message", "whatever");
params.putString("name", "CIS542 porject");
params.putString("caption", "123456");
params.putString("link", "http://www.baidutama.com");
params.putString("description",
"OUR CIS542 project - by Jason, Jiumei, Eric");
params.putString("picture", "http://twitpic.com/show/thumb/6hqd44");
facebook.dialog(this, "feed", params, new PostDialogListener());
}
private class PostDialogListener implements DialogListener {
@Override
public void onComplete(Bundle values) {
// TODO Auto-generated method stub
}
@Override
public void onFacebookError(FacebookError e) {
// TODO Auto-generated method stub
}
@Override
public void onError(DialogError e) {
// TODO Auto-generated method stub
}
@Override
public void onCancel() {
// TODO Auto-generated method stub
}
}
}




