友盟第三方登录方法

新人第一次使用友盟的话:

  1. 注册友盟
  2. 点进我的产品,中间有一个换一换 换到移动统计
  3. 接着进入新版,创建一个产品 (名字都是随便起)
  4. 然后返回首页,找到上导航栏的开发者平台选择SDK下载
  5. 最下面社会化分享右边有个开发文档点击去
  6. 右边选择获取SDK下载好jar包
  7. 贴贴到对应的项目lib包,然后全部选中右键add As libray——>确定

QQ为例子,先开始整理清单文件需要的东西

友盟第三方登录方法_第1张图片
友盟第三方登录方法_第2张图片
接着需要手打的
友盟第三方登录方法_第3张图片



    
    
    
    
    
    
        
        
        
        
            
                

                
            
        

        
            
                

                
                

                
            
        
        

        

        

    


创建一个新得类继承Application,复制下面贴贴到这个类

友盟第三方登录方法_第4张图片

主类代码需要复制,贴贴的代码会报错该导包的导包,上下文改一下就好了

友盟第三方登录方法_第5张图片
我复制完的代码

 //第三方登录
        qq.setOnClickListener(new View.OnClickListener(){
            private UMShareAPI umShareAPI;
            @Override
            public void onClick(View v) {
           
                umShareAPI = UMShareAPI.get(LoginActivity.this);//手写
                umShareAPI.getPlatformInfo(LoginActivity.this, SHARE_MEDIA.QQ,new UMAuthListener() {
                    /**
                     * @desc 授权开始的回调
                     * @param platform 平台名称
                     */
                    @Override
                    public void onStart(SHARE_MEDIA platform) {

                    }

                    /**
                     * @desc 授权成功的回调
                     * @param platform 平台名称
                     * @param action 行为序号,开发者用不上
                     * @param data 用户资料返回
                     */
                    @Override
                    public void onComplete(SHARE_MEDIA platform, int action, Map data) {

                        Toast.makeText(LoginActivity.this, "成功了", Toast.LENGTH_LONG).show();

                    }

                    /**
                     * @desc 授权失败的回调
                     * @param platform 平台名称
                     * @param action 行为序号,开发者用不上
                     * @param t 错误原因
                     */
                    @Override
                    public void onError(SHARE_MEDIA platform, int action, Throwable t) {

                        Toast.makeText(LoginActivity.this, "失败:" + t.getMessage(),                                     Toast.LENGTH_LONG).show();
                    }

                    /**
                     * @desc 授权取消的回调
                     * @param platform 平台名称
                     * @param action 行为序号,开发者用不上
                     */
                    @Override
                    public void onCancel(SHARE_MEDIA platform, int action) {
                        Toast.makeText(LoginActivity.this, "取消了", Toast.LENGTH_LONG).show();
                    }
                });
            }
        });


    

然后添加返回方法
友盟第三方登录方法_第6张图片

 //第三方登录
    @Override
    protected void onActivityResult(int requestCode, int resultCode, @Nullable Intent data) {
        super.onActivityResult(requestCode, resultCode, data);
        UMShareAPI.get(LoginActivity.this).onActivityResult(requestCode, resultCode, data);
    }

最后再在清单文件中注册一下活动

在application下打代码

//刚刚新建继承application的类
android:name=".CallBackUtils"

你可能感兴趣的:(开发)