友盟第三方登录之QQ

第一步打开友盟官网注册一个账号,登录如下图进行操作点击个人中心

这里写图片描述

进入下一个界面点击管理创建一个应用生成AppKey:如下图

这里写图片描述

返回首页点击SDK与文档点击进行第三方登录集成点击右边的SDK下载选择你需要的平台
除了eclipse选项都选
这里写图片描述
这篇文章之介绍QQ第三方登录

阅读官方文档
一、解压下载的SDK打开:拷入友盟的三个核心库和需要的第三方jar包

这里写图片描述

把SDK中的debug.keystore拷入工程:

这里写图片描述

main中res中的三个values文件:

这里写图片描述

准备完毕然后进行权限配置:

在application中加入:

<activity
            android:name="com.umeng.qq.tencent.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" />
                <data android:scheme="tencent100424468" />
            </intent-filter>
        </activity>

        <activity
            android:name="com.umeng.qq.tencent.AssistActivity"
            android:screenOrientation="portrait"
            android:theme="@android:style/Theme.Translucent.NoTitleBar"
            android:configChanges="orientation|keyboardHidden|screenSize"/>
        <meta-data
            android:name="UMENG_APPKEY"
            android:value="5a0b920f8f4a9d5c2700080c">
        </meta-data>

value改成你自己生成的AppKey

权限:

<uses-permission android:name="android.permission.INTERNET" />
    <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />
    <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
    <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
    <uses-permission android:name="android.permission.READ_PHONE_STATE" />
    <uses-permission android:name="android.permission.CAMERA" />
    <uses-permission android:name="android.permission.VIBRATE" />
    <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
    <uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />

application中:

public class MyApp extends Application {
    {
        PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
    }

    @Override
    public void onCreate() {
        super.onCreate();
        Fresco.initialize(this);
        UMShareAPI.get(this);
    }

}

最后在你点击登录的地方:
实例化一个友盟的监听

UMAuthListener umAuthListener  = new UMAuthListener() {
        @Override
        public void onStart(SHARE_MEDIA share_media) {

        }

        @Override
        public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) {
            System.out.println("uid========"+map.get("uid"));
            System.out.println("name========"+map.get("name"));
            System.out.println("iconurl========"+map.get("iconurl"));
            ToastUtil.showLong(LoginActivity.this , "登录成功"+map.get("name"));
            /*//设置QQ头像
            ImageLoader.getInstance().displayImage(map.get("iconurl"),micon);
            //设置QQ名字
            mname.setText(map.get("name"));*/
        }

        @Override
        public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {

        }

        @Override
        public void onCancel(SHARE_MEDIA share_media, int i) {

        }
    };

点击调用:

 UMShareAPI.get(LoginActivity.this).getPlatformInfo(LoginActivity.this, SHARE_MEDIA.QQ,umAuthListener);                               

最后重写onactivityresult

 @Override
    protected void onActivityResult(int requestCode, int resultCode, Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
    }

这就可以实现QQ第三方登录了!!!快去试试吧。。。

©️2020 CSDN 皮肤主题: 大白 设计师:CSDN官方博客 返回首页