// QQ分享
UMImage image = new UMImage(MainActivity.this, "https://ss1.bdstatic.com/70cFuXSh_Q1YnxGkpoWK1HF6hhy/it/u=1944582709,2686578056&fm=27&gp=0.jpg"); UMImage thumb = new UMImage(MainActivity.this, R.mipmap.ic_launcher);//缩略图 image.setThumb(thumb); image.compressStyle = UMImage.CompressStyle.SCALE;//大小压缩,默认为大小压缩,适合普通很大的图 image.compressStyle = UMImage.CompressStyle.QUALITY;//质量压缩,适合长图的分享 //压缩格式设置 image.compressFormat = Bitmap.CompressFormat.PNG;//用户分享透明背景的图片可以设置这种方式,但是qq好友,微信朋友圈,不支持透明背景图片,会变成黑色 new ShareAction(MainActivity.this) .withText("hello") .withMedia(image) .setDisplayList(SHARE_MEDIA.SINA, SHARE_MEDIA.QQ, SHARE_MEDIA.WEIXIN) .setCallback(new UMShareListener() { @Override public void onStart(SHARE_MEDIA share_media) { Toast.makeText(MainActivity.this, "分享开始", Toast.LENGTH_SHORT).show(); } @Override public void onResult(SHARE_MEDIA share_media) { Toast.makeText(MainActivity.this, "分享成功", Toast.LENGTH_SHORT).show(); } @Override public void onError(SHARE_MEDIA share_media, Throwable throwable) { Toast.makeText(MainActivity.this, "分享失败", Toast.LENGTH_SHORT).show(); } @Override public void onCancel(SHARE_MEDIA share_media) { Toast.makeText(MainActivity.this, "分享取消", Toast.LENGTH_SHORT).show(); } }) .open();
// QQ登陆
UMShareAPI.get(MainActivity.this).getPlatformInfo(MainActivity.this, SHARE_MEDIA.QQ, new UMAuthListener() { @Override public void onStart(SHARE_MEDIA share_media) { } @Override public void onComplete(SHARE_MEDIA share_media, int i, Map<String, String> map) { Toast.makeText(MainActivity.this, "成功", Toast.LENGTH_SHORT).show(); } @Override public void onError(SHARE_MEDIA share_media, int i, Throwable throwable) { } @Override public void onCancel(SHARE_MEDIA share_media, int i) { } });