Android——QQ登录、分享

写在前面的话
应用要接入QQ登录,分享,需要在QQ的开发者平台上进行提交应用,并且审核通过,应用已经获取到appId。
相关jar包下载地址:http://download.youkuaiyun.com/detail/sapce_fish/9570936
也可到官网下载:
http://wiki.open.qq.com/wiki/mobile/SDK%E4%B8%8B%E8%BD%BD
open_sdk_r5509.jarmta-sdk-1.6.2.jar两个jar包引进自己的项目中


第一步:在Manifest中进行如下配置:

<!-- 微信登录相关权限  开始 -->
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<!-- 微信登录相关权限  结束 -->

<!-- 腾讯QQ登录相关配置 开始 -->
<activity
    android:name="com.tencent.tauth.AuthActivity"
    android:launchMode="singleTask"
    android:noHistory="true">
    <intent-filter tools:ignore="GoogleAppIndexingDeepLinkError">
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <!-- <data android:scheme="tencent222222" /> -->
    </intent-filter>
 </activity>
 <activity
    android:name="com.tencent.connect.common.AssistActivity"
    android:configChanges="orientation|keyboardHidden|screenSize"
    android:theme="@android:style/Theme.Translucent.NoTitleBar" />
<!-- 腾讯QQ登录相关配置 结束 -->


第二步:初始化Tencent实例,openId,token以及相关回调
初始化Tencent实例

/**
  * 初始化各社交平台的sdk
  */
private void initSocial() {
    //初始化腾讯QQ相关
    if (mTencent == null) {
        mTencent = Tencent.createInstance(AppConstants.APP_ID_QQ, mActivity);
    }
}

初始化openid和token


/** 初始化openid和token***/
private static void initOpenidAndToken(String token,String expires,String openId) {
    if (!TextUtils.isEmpty(token) && !TextUtils.isEmpty(expires)
          && !TextUtils.isEmpty(openId)) {
       mTencent.setAccessToken(token, expires);
       mTencent.setOpenId(openId);
    }
}

Tencent登录回调接口

/***Tencent登录回调接口实现*/
    IUiListener qqLoginListener = new IUiListener()
    {
        @Override
        public void onError(UiError e)
        {
            Log.i("space", "onError"+e.toString());
            JsCallbackExecutor.onSocialQQLoginResult(CallbackCode.LOGIN_FAIL,e.toString());
        }
        @Override
        public void onComplete(Object response)
        {
            if (null == response) {
                Log.i("space", "返回为空登录失败 response is null");
                JsCallbackExecutor.onSocialQQLoginResult(CallbackCode.LOGIN_FAIL, "response is null");
                
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值