新浪微博Android客户端开发

新浪微博SDK包: weibo-android-sdk.zip   

下载地址:http://download.csdn.net/detail/xyls126/7072951

 

将下载的包导入工程:WeiboSDK 作为WeiboSDKDemo的Library  

导入得时候可能会报错,先将gen 删掉,然后右键工程项目:properties-->Java Build Path 选中所有的包 remove掉,在把libs里的包加入再clean一下工程,就ok了

 

运行 WeiboSDKDemo

 

新建一个工程,参照上面的例子在权限文件里加入权限,写个Activity 里面有一个Btutton 再设置一下监听事件,如:

SsoHandler ssoHandler;

public class MainActivity extends Activity implements OnClickListener{

protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  this.requestWindowFeature(Window.FEATURE_NO_TITLE);

setContentView(R.layout.activity_main);

 

Button btn = (Button) findViewById(R.id.btn);

btn.setOnClickListener(this);

}

 

public void onClick(View v){

int id = v.getId();    //  小提示:  在最新的Android API里  已经不推荐使用switch(v.getId){} 方式了,使用if()else方式,将swtich(){}方式快捷的替换成if()else方式

                              // 是 选中swtich  然后ctrl+1 ,会弹出一个代码提示框一样的,在提示框里点一下 convert 'swtich' to 'if-else' 就可以了,系统自动替换

    if(id==R.id.btnLogin){

         WeiboAuth mWeibo = new WeiboAuth(context, Constant.API_KEY, REDIRECT_URL, Constant.SCOPE);

         ssoHandler=new SsoHandler(MainActivity.this, mWeibo);
         ssoHandler.authorize(new AuthDialogListener());

    }

}

 

 

Handler mHandler = new Handler(){

  @Override
  public void handleMessage(Message msg) {
   // TODO Auto-generated method stub
   super.handleMessage(msg);
   if(msg.what == 0){
    Toast.makeText(MainActivity.this, “连接失败”, Toast.LENGTH_SHORT).show();
    setResult(RESULT_CANCELED);
    finish();
   }
  }  
 };

 

class AuthDialogListener implements WeiboAuthListener{

   // Oauth2.0 认证过程中,如果认证窗口被关闭或认证取消时调用。
   public void onCancel() {
    mHandler.sendEmptyMessage(0);
   }
   

 // 授权认证结束后将调用此方法。
   public void onComplete(Bundle arg0) {
            String token = arg0.getString("access_token");
            String expires_in = arg0.getString("expires_in");
            String xl_uid = arg0.getString("uid");

            Oauth2AccessToken accessToken = new Oauth2AccessToken(token, expires_in);

            //... 发送消息给微博
   }
   /**

    *  当认证过程中捕获到 WeiboException 时调用。 如:

    *   Web 授权时,加载 URL 异常,此时抛出 WeiboDialogException

    *    Web 授权时,服务器返回的数据不正确,此时抛出 WeiboAuthException

    *    参数 e - WeiboException 微博认证错误异常

    */
   @Override
   public void onWeiboException(WeiboException arg0) {
    System.out.println("weiboException:"+arg0);
    mHandler.sendEmptyMessage(0);
   }
   
  }

 

protected void onActivityResult(int requestCode, int resultCode,
    Intent data) {
   // TODO Auto-generated method stub
   super.onActivityResult(requestCode, resultCode, data);
   if(ssoHandler != null){
    ssoHandler.authorizeCallBack(requestCode, resultCode, data);
   }
  }

 

}

 

 

 

我是新手,  有时候能登陆,有时候说无法连接到服务器。。。还没搞通。。。

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值