千家信息网

如何在android中实现分享纯图片到QQ空间

发表于:2025-01-22 作者:千家信息网编辑
千家信息网最后更新 2025年01月22日,本篇内容主要讲解"如何在android中实现分享纯图片到QQ空间",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何在android中实现分享纯图片到QQ空
千家信息网最后更新 2025年01月22日如何在android中实现分享纯图片到QQ空间

本篇内容主要讲解"如何在android中实现分享纯图片到QQ空间",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"如何在android中实现分享纯图片到QQ空间"吧!

微信好友分享原生实现:

 public static void sharedToWx(Context context,Uri uri,String filePath) {  if(sendMsg == null) return; Intent intent = new Intent(Intent.ACTION_SEND); if (!(context instanceof Activity)) { intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); } //intent.setType("text/plain"); //文本分享   intent.setType("image/*"); if(uri != null){ intent.putExtra(Intent.EXTRA_STREAM, uri); }else{ intent.putExtra(Intent.EXTRA_STREAM, filePath); }intent.setPackage("com.tencent.mm");  intent.setClassName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareImgUI");//微信  context.startActivity(intent); }

(3)微信朋友圈原生分享

public static void sharedToWx(Context context,Uri uri,String filePath) {  if(sendMsg == null) return;  Intent intent = new Intent(Intent.ACTION_SEND);  if (!(context instanceof Activity)) { intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  }  //intent.setType("text/plain"); //文本分享 intent.setType("image/*");  if(uri != null){ intent.putExtra(Intent.EXTRA_STREAM, uri);  }else{ intent.putExtra(Intent.EXTRA_STREAM, filePath);  }  intent.setPackage("com.tencent.mm");  intent.setClassName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI");//微信朋友圈  context.startActivity(intent);}

注意:微信sdk分享图文分享方式,图片+文本大小不能超过32KB,超过32KB就不能分享。

二.分享qq与qq空间

注意:qq分享支持原生分享也支持sdk分享,qq空间由于qq空间页面activity不对外开放,所以qq空间分享只支持sdk分享,不支持原生qq空间分享,而且qq空间分享早期支 持纯图片分享,但是google从android4.0开始,关闭对apn权限的自动获取,如果再使用qq分享sdk往qq空间分享纯图片就会抛出no permission to write apn setting或者分享 失败。

(1)qq分享sdk官司方文

(2)QQ分享原生实现

 public static void sharedToWx(Context context,Uri uri,String filePath) {  if(sendMsg == null) return;  Intent intent = new Intent(Intent.ACTION_SEND);  if (!(context instanceof Activity)) { intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK);  }  //intent.setType("text/plain"); //文本分享 intent.setType("image/*");  if(uri != null){ intent.putExtra(Intent.EXTRA_STREAM, uri);  }else{ intent.putExtra(Intent.EXTRA_STREAM, filePath);  }  intent.setPackage("com.tencent.mobileqq");  intent.setClassName("com.tencent.mobileqq", "com.tencent.mobileqq.activity.JumpActivity");//QQ  context.startActivity(intent);}

(3)利用qq分享sdk直接向qq空间分享纯图片

备注重点:要向qq空间分享纯图片,分享sdk其实是不支持纯图片分享的,但是可以使用向qq分享纯图片,设置自动打开qq空间,这样会弹出框分享纯图片,很大几 率会分享成功,图片不易过大,过大分享成功的可能性就降低了。

public static void shareToQQZoneImg(String localImgUrl){  if(TextUtils.isEmpty(localImgUrl) || shareBean == null) return;  Tencent tencent = Tencent.createInstance("QQ_APP_ID", ApplicatonContext); //要向腾讯平台申请appid  Bundle bundle = new Bundle();  bundle.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_IMAGE); //注意,要向qq空间分享纯图片,只能传这三个参数,不能传其他的  bundle.putString(QQShare.SHARE_TO_QQ_IMAGE_LOCAL_URL,localImgUrl); //localImgUrl必须是本地手机图片地址  bundle.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_AUTO_OPEN);  tencent.shareToQQ(Activity, bundle, ShareListener);}

到此,相信大家对"如何在android中实现分享纯图片到QQ空间"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!

0