admin管理员组

文章数量:1537314

android QQ登录与分享

      android QQ登录与分享是我们一个很常见的功能,除了微信登录、QQ登录、还有微博登录,外加上分享,今天就分享一下android的QQ分享与登录,我这里H5开发的和webview配合使用场景,不过就算是原生的,思路也差不多。

一、腾讯开放平台注册应用获取appId,至于怎么注册很简单,这里就不叙述了。

二、下载sdk,下载链接是http://wiki.open.qq/wiki/mobile/SDK%E4%B8%8B%E8%BD%BD,下载最新版本,目前好像已经到3.3.1了

三、将下载下来的包里面的open_sdk_r5990_lite.jar包放入工程的libs目录下,如图


三、build.gradle里面加入

// qq登录
implementation files('libs/open_sdk_r5990_lite.jar')

四、AndroidMainfest.xml里面加入权限和activity

1、权限

<uses-permission android:name="android.permission.INTERNET" />  
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />  

2、加入activity

<!--qq登录-->
        <activity android:name="com.tencent.tauth.AuthActivity"
            android:launchMode="singleTask"
            android:noHistory="true">
            <intent-filter>
                <action android:name="android.intent.action.VIEW" />
                <category android:name="android.intent.category.DEFAULT" />
                <category android:name="android.intent.category.BROWSABLE" />
                <!-- 这地方需要用你在开放平台申请的appid:tencent+appid -->
                <data android:scheme="tencent1106320813" />
            </intent-filter>
        </activity>

        <activity android:name="com.tencent.connectmon.AssistActivity"
            android:configChanges="orientation|keyboardHidden"
            android:screenOrientation="behind"
            android:theme="@android:style/Theme.Translucent.NoTitleBar" />

五、我这里是提供接口给H5端调用,写在了一个JavascriptUtils工具类里面

//QQ登录
private static final String APP_ID = "1105602574";//官方获取的APPID
private Tencent mTencent;
public static BaseUiListener mIUiListener;
public static final int QQ_LOGIN = 6008;
/**
 * QQ登录
 */
@JavascriptInterface
public void qqLogin() {
    //传入参数APPID和全局Context上下文
    if (mTencent == null) {
        mTencent = Tencent.createInstance(APP_ID,mContext);
    }
    mIUiListener = new BaseUiListener(mTencent, mActivity, mContext);
    //all表示获取所有权限
    mTencent.login(mActivity,"all"

本文标签: androidqq