QQ第三方登录与QQ分享

  • 1:
  • 将第三方jar导入libs中
  • main -- 核心库
  • umeng_social_api.jar
  • umeng_social_net.jar
  • umeng_social_tool.jar
  • platforms -- 分享平台库
  • QQ精简版(SocialSDK_QQ_Simplify.jar)
  • 微信完整版(wechat-sdk-android-with-mta-1.0.2.jar SocialSDK_WeiXin_Full.jar)
  • 新浪精简版(SocialSDK_Sina_Simplif.jar)
  • 2:在xml中加入权限
  • 3:在
    application>中配置
  • 4:
  • 5:在代码中 MainActivity
  • UMShareAPI.get(MainActivity.this).getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ,umAuthListener);
  • UMAuthListener umAuthListener=new UMAuthListener() {
  • @Override public void onStart(SHARE_MEDIA share_media) {
  • }
  • @Override public void onComplete(SHARE_MEDIA share_media, int i, Map map) {
  • String name=map.get("name");
  • String iconurl=map.get("iconurl");
  • tv_name.setText(name);
  • x.image().bind(iv,iconurl);
  • }
  • @Override public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) {
  • }
  • @Override public void onCancel(SHARE_MEDIA share_media, int i) {
  • }
  • };
  • @Overrideprotected void onActivityResult(int requestCode, int resultCode, Intent data) {
  • super.onActivityResult(requestCode, resultCode, data);
  • UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);
  • }
  • 6:建立App类继承Application
  • public class App extends Application {
  • {
  • PlatformConfig.setQQZone("100424468", "c7394704798a158208a74ab60104f0ba");
  • }
  • @Override public void onCreate() {
  • super.onCreate();
  • x.Ext.init(this);
  • UMShareAPI.get(this);
  • }
  • }
QQ分享
  UMWeb web = new UMWeb(xq);
                        web.setTitle(title);//标题
                        web.setDescription(title);//设置描述内容
                        new ShareAction(XiangqingActivity.this)
                                .setPlatform(SHARE_MEDIA.QQ)//传入平台
                                .withMedia(web)
                                .setCallback(umShareListener)//回调监听器
                                .share();

          umShareListener = new UMShareListener() {
            /**
             * @descrption 分享开始的回调
             * @param platform 平台类型
             */
            @Override
            public void onStart(SHARE_MEDIA platform) {


            }
            /**
             * @descrption 分享成功的回调
             * @param platform 平台类型
             */
            @Override
            public void onResult(SHARE_MEDIA platform) {
                Toast.makeText(XiangqingActivity.this,"成功了",Toast.LENGTH_LONG).show();
            }


            /**
             * @descrption 分享失败的回调
             * @param platform 平台类型
             * @param t 错误原因
             */
            @Override
            public void onError(SHARE_MEDIA platform, Throwable t) {
                Toast.makeText(XiangqingActivity.this,"失败"+t.getMessage(),Toast.LENGTH_LONG).show();
            }


            /**
             * @descrption 分享取消的回调
             * @param platform 平台类型
             */
            @Override
            public void onCancel(SHARE_MEDIA platform) {
                Toast.makeText(XiangqingActivity.this,"取消了",Toast.LENGTH_LONG).show();
            }
        };
           

你可能感兴趣的:(QQ第三方登录与QQ分享)