【Android 腾讯微博】-- Oauth2.0认证以及登录


申请AppKey,AppSecret

必须到微博开放平台官方网站申请应用的AppKey和AppSecret后,才能完成微博登录。

SDK(Android_SDK_v1.2.jar)适用的开发环境

  • JAVA SDK v5 及以上
  • Android SDK 2.2(level8) 及以上
  • 依赖包:httpmime-4.1.3.jar

特别说明: Android SDK 2.2以下版本的Webview不提供处理SSL异常的方法,因此,如需在Andriod2.2以下版本开发应用,请使用修改版SDK(Android_SDK_v1.2_Fix.jar,该版本只能使用OAuth1.0授权和调用1.0 API,所有连接均为普通http连接)

SDK使用方法

修改AndroidManifest.xml文件

  • 在<manifest>标签中,添加:
<!-- 允许网络访问 -->
<uses-permission android:name="android.permission.INTERNET" />
  • 在<application>标签中,添加:
<!-- OAuth Version 2. 使用  WebView 辅助进行ImplicitGrant方式授权必须 -->
<activity
    android:name="com.tencent.weibo.webview.OAuthV2AuthorizeWebView"
    android:label="@string/app_name" >
</activity>

添加必要JAR包

Android_SDK_v1.2.jar 和 httpmime-4.1.3.jar


-----------------------以上为官方说明-----------------------

认证很简单,官方直接给出了代码,

public class OauthActivity extends Activity{
	 private OAuthV2 oAuth;
	    
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.oauth);

        oAuth=new OAuthV2("http://www.tencent.com/zh-cn/index.shtml"); // url回调地址
        oAuth.setClientId("801**5505"); // appkey
        oAuth.setClientSecret("be1dd1410434a9f7d5a2586b****6829"); // secret

        Intent intent = new Intent(OauthActivity.this, OAuthV2AuthorizeWebView.class);
        intent.putExtra("oauth", oAuth);
        startActivityForResult(intent,1);   
    }
    
    protected void onActivityResult(int requestCode, int resultCode, Intent data)   {
        if (requestCode==1) {
            if (resultCode==OAuthV2AuthorizeWebView.RESULT_CODE)    {
                oAuth=(OAuthV2) data.getExtras().getSerializable("oauth");
                //调用API获取用户信息
                UserAPI userAPI=new UserAPI(OAuthConstants.OAUTH_VERSION_2_A);
                try {
                    String response=userAPI.info(oAuth, "json");//获取用户信息
                    ((TextView)findViewById(R.id.textView)).setText(response+"\n");
                } catch (Exception e) {
                    e.printStackTrace();
                }
                userAPI.shutdownConnection();
                
            }
        }
    }
}



  • 6
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 6
    评论
评论 6
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值