Ejemplo n.º 1
0
 public void onClick(View v) {
   Intent intent;
   switch (v.getId()) {
     case R.id.btnRequest:
       Log.i(TAG, "---------Step1: Get requestToken--------");
       try {
         // 向腾讯微博开放平台请求获得未授权的Request_Token
         oAuth = OAuthV1Client.requestToken(oAuth);
       } catch (Exception e) {
         e.printStackTrace();
       }
       textRequest.append(
           "\nrequest_token:\n"
               + oAuth.getOauthToken()
               + "\nrequest_token_secret:\n"
               + oAuth.getOauthTokenSecret());
       break;
     case R.id.btnAuthorize:
       Log.i(TAG, "---------Step2: authorization--------");
       Log.i(TAG, "start WebView intent");
       intent =
           new Intent(
               OAuthV1Activity.this,
               OAuthV1AuthorizeWebView.class); // 创建Intent,使用WebView让用户授权
       intent.putExtra("oauth", oAuth);
       startActivityForResult(intent, 1);
       break;
     case R.id.btnAccess:
       Log.i(TAG, "---------Step3: getAccessToken--------");
       try {
         oAuth = OAuthV1Client.accessToken(oAuth);
         /*
          * 注意:此时oauth中的Oauth_token和Oauth_token_secret将发生变化,用新获取到的
          * 已授权的access_token和access_token_secret替换之前存储的未授权的request_token
          * 和request_token_secret.
          */
       } catch (Exception e) {
         e.printStackTrace();
       }
       textAccess.append(
           "\naccess_token:\n"
               + oAuth.getOauthToken()
               + "\naccess_token_secret:\n"
               + oAuth.getOauthTokenSecret());
       break;
     case R.id.btnAPItest:
       Log.i(TAG, "---------Step4: Test API V1--------");
       intent =
           new Intent(
               OAuthV1Activity.this,
               WeiBoAPIV1Activity.class); // 创建Intent,转到调用Qweibo API的Activity
       intent.putExtra("oauth", oAuth);
       startActivity(intent);
       break;
   }
 }