登陆主要用到了OAuth2.0协议,不懂了可以看下百度百科
package test.sinalogin;
import java.io.IOException;
import java.text.SimpleDateFormat;
import com.weibo.sdk.android.Oauth2AccessToken;
import com.weibo.sdk.android.Weibo;
import com.weibo.sdk.android.WeiboAuthListener;
import com.weibo.sdk.android.WeiboDialogError;
import com.weibo.sdk.android.WeiboException;
import com.weibo.sdk.android.net.RequestListener;
import android.app.Activity;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
import android.widget.ImageButton;
import android.widget.TextView;
import android.widget.Toast;
public class SinaLoginActivity extends Activity {
/** Called when the activity is first created. */
private ImageButton button;
private Weibo weibo;
private static final String CONSUMER_KEY = "xxxxxxxxxxxxx";// 替换为开发者的appkey
private static final String REDIRECT_URL = "http://www.sina.com";//回调网址
public static Oauth2AccessToken accessToken;
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
weibo=Weibo.getInstance(CONSUMER_KEY, REDIRECT_URL);
button=(ImageButton)findViewById(R.id.LoginButton);
button.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
weibo.authorize(SinaLoginActivity.this, new AuthDialogListener());//调用认证功能的C//ontext实例
}
});
}
private class AuthDialogListener implements WeiboAuthListener
{
@Override
public void onCancel() {
// TODO Auto-generated method stub
}
@Override
public void onComplete(Bundle values) {
// TODO Auto-generated method stub
String token = values.getString("access_token");
String expires_in = values.getString("expires_in");
SinaLoginActivity.accessToken = new Oauth2AccessToken(token, expires_in);
if (SinaLoginActivity.accessToken.isSessionValid())
{
AccessTokenKeeper.keepAccessToken(SinaLoginActivity.this,accessToken);//保存acce_token,
Toast.makeText(SinaLoginActivity.this, "认证成功", Toast.LENGTH_SHORT).show();
Intent intent=new Intent(SinaLoginActivity.this,HomeActivity1.class);
startActivity(intent);
}
}
@Override
public void onError(WeiboDialogError arg0) {
// TODO Auto-generated method stub
}
@Override
public void onWeiboException(WeiboException arg0) {
// TODO Auto-generated method stub
}
}
}