使用WebView实现腾讯微博OAuth登录

接着上一篇文章"使用WebView实现新浪微博OAuth登录",实现腾讯微博OAuth登录。

 

 

#腾讯官方下载SDK

http://open.t.qq.com/resource.php?i=3,1

 

#申请应用KEY

登录腾讯微博,进入http://open.t.qq.com/申请应用,获取KEY和SECRET。

 

#准备

在项目中导入QWeiboSDK.jar、dom4j-1.6.1.jar(这两个包是由官方下载的SDK提供)


 

 

这里只给出腾讯OAuth登录代码,其它代码看上一篇文章

 

package com.oauth;

import com.db.DbHelper;
import com.tencent.weibo.beans.OAuth;
import com.tencent.weibo.utils.OAuthClient;

import android.content.Intent;
import android.net.Uri;
import android.os.Bundle;

public class TencentOAuth extends OAuthActivity {
    public static final String CONSUMER_KEY = "应用KEY";
    public static final String CONSUMER_SECRET = "应用SECRET";
    private OAuthClient oauthClient;
    private OAuth oauth; 
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        titleView.setText("腾讯微博登录");
    }

    @Override
    protected void oauthLogin() {
        oauth = new OAuth(CONSUMER_KEY, CONSUMER_SECRET, "weibo4android://CallbackActivity");
        oauthClient = new OAuthClient();
        try {
            oauthClient.requestToken(oauth);
            String authUrl = "http://open.t.qq.com/cgi-bin/authorize?oauth_token="+oauth.getOauth_token();
            oauthWebView.loadUrl(authUrl);//自定义WebView
        } catch (Exception e) {
            e.printStackTrace();
        }
        oauthActivity = this;//此处很关键
    }

    @Override
    protected void callback(Intent callbackIntent) {
        Uri uri = callbackIntent.getData();
        oauth.setOauth_verifier(uri.getQueryParameter("oauth_verifier"));
        try {
            oauthClient.accessToken(oauth);
        } catch (Exception e) {
            e.printStackTrace();
        }
        DbHelper.persistUser(Share.TENCENT, 0, oauth.getOauth_token(), oauth.getOauth_token_secret());

        Intent intent = getIntent();
        intent.putExtra("oauth_type", Share.TENCENT);
        intent.putExtra("token", oauth.getOauth_token());
        intent.putExtra("secret", oauth.getOauth_token_secret());
        intent.setClass(TencentOAuth.this, ShareActivity.class);
        this.startActivity(intent);
        this.finish();
    }
}
 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值