纯净、安全、绿色的下载网站

首页|软件分类|下载排行|最新软件|IT学院

当前位置:首页IT学院IT技术

Android 微信登录 Android实现微信登录的代码实例

hequnwang10   2021-08-08 我要评论
想了解Android实现微信登录的代码实例的相关内容吗,hequnwang10在本文为您仔细讲解Android 微信登录的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Android,微信登录,下面大家一起来学习吧。

微信登录的实现与qq登录类似。不过微信登录比较麻烦,需要拿到开发者资质认证,花300块钱,然后应用的话还得有官网之类的,就是比较繁琐的前期准备工作,如果在公司里,这些应该都不是事,会有相关人提前准备好。在这里我们已经拿到了开发者认证,并且申请到了微信登录的授权。

在这里插入图片描述

现在直接介绍mob来实现微信登录的代码,并获取微信的相关数据,比较简单。

一、布局界面

布局界面只需要一个button来触发授权就可以

    <Button
        android:id="@+id/wxlogin"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="微信登录" />

二、MainActivity.java

public class MainActivity extends Activity {
    private Button wxlogin;
    private Platform wx;
 @Override
    protected void onCreate(Bundle savedInstanceState) {
        requestWindowFeature(Window.FEATURE_NO_TITLE);
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_login);
        wxlogin = (Button) login_view.findViewById(R.id.wxlogin);
        wxlogin.setOnClickListener(new wxloginListener());
        }


private class wxloginListener implements OnClickListener {
        @Override
        public void onClick(View arg0) {
            wx = ShareSDK.getPlatform(Wechat.NAME);
            System.out.println("微信是否已经授权1:"+wx.isAuthValid());
            if(wx.isAuthValid()){
                wx.removeAccount(true);
            }
            System.out.println("微信是否已经授权2:"+wx.isAuthValid());
            wx.SSOSetting(false); // 设置false表示使用SSO授权方式
            wx.authorize();
            wx.showUser(null);
            wx.setPlatformActionListener(new PlatformActionListener() {
                @Override
                public void onComplete(Platform platform, int i, HashMap<String, Object> hashMap) {
                    System.out.println("wx登录测试hashMap"+hashMap);
                    System.out.println("wx登录测试hashMap"+hashMap.toString());
                    String unionid = (String) hashMap.get("unionid");
                    System.out.println("wx登录测试unionid"+unionid);
                    System.out.println("wx登录测试"+platform.getDb().toString());
                    String thirdLoginId = platform.getDb().getUserId();
                    System.out.println("wx登录测试thirdLoginId:"+thirdLoginId);
                    String userName = platform.getDb().getUserName();
                    System.out.println("wx登录测试userName:"+ userName);
                    String image = platform.getDb().getUserIcon();
                    System.out.println("wx登录测试image:"+image);
                    String sex = qq.getDb().getUserGender();
                    System.out.println("wx登录测试sex:"+sex);
                    System.out.println("wx登录测试:"+"成功了");
                }

                @Override
                public void onError(Platform platform, int i, Throwable throwable) {

                }

                @Override
                public void onCancel(Platform platform, int i) {

                }
            });
            wx.removeAccount(true);
            System.out.println("微信是否已经授权3:"+wx.isAuthValid());
        }
    }
}

在这里插入图片描述

这是官方提供的接口,

plat. authorize():要功能不要数据 单独授权(只获取授权信息,不获取用户信息)plat. showUser(null):要数据无需功能à授权并获取信息(除了授权信息,其他用户信息可以在oncomplete中的hashmap中获取)

在这里插入图片描述

在这里插入图片描述

这样就拿到的微信的授权,并且获得数据,然后将数据向数据库中存储,就可以做微信登录了。
总体流程来说还是比较简单,直接调用接口就行,就是前期的审核准备工作比较麻烦。


相关文章

猜您喜欢

  • Vue成绩单 Vue计算属性实现成绩单

    想了解Vue计算属性实现成绩单的相关内容吗,风尘DX在本文为您仔细讲解Vue成绩单的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:vue,成绩单,下面大家一起来学习吧。..
  • Vue3 key的作用 浅谈Vue3中key的作用和工作原理

    想了解浅谈Vue3中key的作用和工作原理的相关内容吗,易小川打码在本文为您仔细讲解Vue3 key的作用 的相关知识和一些Code实例,欢迎阅读和指正,我们先划重点:Vue3,key的作用,Vue3,key,下面大家一起来学习吧。..

网友评论

Copyright 2020 www.freefLashonLinegames.com 【木头下载】 版权所有 软件发布

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 点此查看联系方式