您好,登錄后才能下訂單哦!
這篇文章給大家介紹怎么在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官司方文檔: http://wiki.open.qq.com/wiki/%E5%88%86%E4%BA%AB%E6%B6%88%E6%81%AF%E5%88%B0QQ%EF%BC%88%E5%AE%9A%E5%90%91%E5%88%86%E4%BA%AB%EF%BC%89
(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空間就分享到這里了,希望以上內容可以對大家有一定的幫助,可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。