手把手帶你實(shí)現(xiàn)QQ分享

android.jpg

QQ分享主要有分享到好友、分享到空間

分享到好友
1、圖文分享(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_DEFAULT)
2、純圖片分享(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_IMAGE)
3、音樂分享(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_AUDIO)
4、應(yīng)用分享(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_APP)
5、攜帶APK JSON串分享(注意:攜帶ARK信息的同時(shí),需要攜帶原本的圖文信息,ARK信息只是作為可選項(xiàng),傳遞的JSON串為空或者不規(guī)范,分享的仍然為原本的圖文信息。)
分享到空間
1、圖文分享(QzoneShare.SHARE_TO_QZONE_KEY_TYPE, QzoneShare.SHARE_TO_QZONE_TYPE_IMAGE_TEXT)
2、發(fā)表說說、視頻、上傳圖片(QzonePublish.PUBLISH_TO_QZONE_KEY_TYPE, QzonePublish.PUBLISH_TO_QZONE_TYPE_PUBLISHMOOD)

API文檔查詢

分享圖文消息

final Bundle params = new Bundle();
//分享的類型  SHARE_TO_QQ_TYPE_DEFAULT為圖文分享(普通分享)
params.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_DEFAULT);
//分享的標(biāo)題 最長(zhǎng)30個(gè)字符
params.putString(QQShare.SHARE_TO_QQ_TITLE, "要分享的標(biāo)題");
//分享的消息摘要 最長(zhǎng)40個(gè)字
params.putString(QQShare.SHARE_TO_QQ_SUMMARY, "要分享的摘要");
//這條消息被好友點(diǎn)擊之后跳轉(zhuǎn)的連接
params.putString(QQShare.SHARE_TO_QQ_TARGET_URL, "http://www.qq.com/news/1.html");
//圖片的URL或者本地路徑
params.putString(QQShare.SHARE_TO_QQ_IMAGE_URL, "http://www.45fan.com/uploads/allimg/130707/3767_130707110914_1.gif");
//手Q客戶端頂部,替換“返回”按鈕文字,如果為空,用返回代替
params.putString(QQShare.SHARE_TO_QQ_APP_NAME, "測(cè)試應(yīng)用222222");
//分享額外選項(xiàng)  SHARE_TO_QQ_FLAG_QZONE_AUTO_OPEN  分享到QQ空間
//分享額外選項(xiàng)  SHARE_TO_QQ_FLAG_QZONE_ITEM_HIDE  分享給好友
params.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_ITEM_HIDE);
//這里分享盡量放在主線程來完成
mTencent.shareToQQ(QQLoginActivity.this, params, new BaseUi());

分享純圖片(只可以分享本地圖片)

Bundle params1 = new Bundle();
//純圖片分享只可以是本地圖片
//分享的類型  SHARE_TO_QQ_TYPE_IMAGE(純圖片分享)
params1.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_IMAGE);
//這里我是為了方便從本地直接拿到一個(gè)圖片地址放到這里的,大家可以根據(jù)自己的需求來拿去本地圖片的地址
params1.putString(QQShare.SHARE_TO_QQ_IMAGE_LOCAL_URL, "/storage/emulated/0/klcert1574583840887.jpg");
//分享之后彈框左邊按鈕的內(nèi)容(這里基本上都寫上自己應(yīng)用的名字)
params1.putString(QQShare.SHARE_TO_QQ_APP_NAME, "AndroidProject");
params1.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_ITEM_HIDE);
mTencent.shareToQQ(QQLoginActivity.this, params1, new BaseUi());

分享音樂

final Bundle params2 = new Bundle();
//分享音樂 SHARE_TO_QQ_TYPE_AUDIO(分享音樂)
params2.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_AUDIO);
params2.putString(QQShare.SHARE_TO_QQ_TITLE, "要分享的標(biāo)題");
params2.putString(QQShare.SHARE_TO_QQ_SUMMARY, "要分享的摘要");
params2.putString(QQShare.SHARE_TO_QQ_TARGET_URL, "http://c.y.qq.com/v8/playsong.html?songid=109325260&songmid=000kuo2H2xJqfA&songtype=0&source=mqq&_wv=1");
params2.putString(QQShare.SHARE_TO_QQ_IMAGE_URL, "http://y.gtimg.cn/music/photo_new/T002R300x300M000003KIU6V02sS7C.jpg?max_age=2592000");
//音樂連接
params2.putString(QQShare.SHARE_TO_QQ_AUDIO_URL, "http://ws.stream.qqmusic.qq.com/C100000kuo2H2xJqfA.m4a?fromtag=0");
params2.putString(QQShare.SHARE_TO_QQ_APP_NAME, "測(cè)試應(yīng)用222222");
params2.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_ITEM_HIDE);
mTencent.shareToQQ(QQLoginActivity.this, params2, new BaseUi());

分享應(yīng)用

final Bundle param3 = new Bundle();
//分享應(yīng)用 SHARE_TO_QQ_TYPE_APP
param3.putInt(QQShare.SHARE_TO_QQ_KEY_TYPE, QQShare.SHARE_TO_QQ_TYPE_APP);
param3.putString(QQShare.SHARE_TO_QQ_TITLE, "要分享的標(biāo)題");
param3.putString(QQShare.SHARE_TO_QQ_SUMMARY, "要分享的摘要");
param3.putString(QQShare.SHARE_TO_QQ_IMAGE_URL, "http://url.cn/424xgoi");
param3.putString(QQShare.SHARE_TO_QQ_AUDIO_URL, "http://ws.stream.qqmusic.qq.com/C100000kuo2H2xJqfA.m4a?fromtag=0");
param3.putString(QQShare.SHARE_TO_QQ_APP_NAME, "測(cè)試應(yīng)用222222");
param3.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_ITEM_HIDE);
mTencent.shareToQQ(QQLoginActivity.this, param3, new BaseUi());

分享到空間圖文分享

Bundle params4 = new Bundle();
params4.putInt(QzoneShare.SHARE_TO_QZONE_KEY_TYPE, QzoneShare.SHARE_TO_QZONE_TYPE_IMAGE_TEXT);
params4.putString(QzoneShare.SHARE_TO_QQ_TITLE, "標(biāo)題");// 標(biāo)題                params4.putString(QzoneShare.SHARE_TO_QQ_SUMMARY, "要分享的摘要");// 摘要                params4.putString(QzoneShare.SHARE_TO_QQ_TARGET_URL, "http://www.qq.com/news/1.html");
// 內(nèi)容地址
ArrayList<String> imgUrlList = new ArrayList<>();
// 圖片地址
imgUrlList.add("http://f.hiphotos.baidu.com/image/h%3D200/sign=6f05c5f929738bd4db21b531918a876c/6a600c338744ebf8affdde1bdef9d72a6059a702.jpg");             params4.putStringArrayList(QzoneShare.SHARE_TO_QQ_IMAGE_URL, imgUrlList);
mTencent.shareToQzone(QQLoginActivity.this, params4, new BaseUi());

分享到空間圖文分享

Bundle params5 = new Bundle();
params5.putInt(QzonePublish.PUBLISH_TO_QZONE_KEY_TYPE, QzonePublish.PUBLISH_TO_QZONE_TYPE_PUBLISHMOOD);
params5.putString(QzonePublish.PUBLISH_TO_QZONE_SUMMARY, "說說正文");
ArrayList<String> imgUrlList1 = new ArrayList<>();
imgUrlList1.add("http://f.hiphotos.baidu.com/image/h%3D200/sign=6f05c5f929738bd4db21b531918a876c/6a600c338744ebf8affdde1bdef9d72a6059a702.jpg");
params5.putStringArrayList(QzonePublish.PUBLISH_TO_QZONE_IMAGE_URL,
imgUrlList1);// 圖片地址ArrayList
mTencent.publishToQzone(QQLoginActivity.this, params5, new BaseUi());

遇到的問題

問題一.png

原因

這里主要是因?yàn)閼?yīng)用的沒有填寫應(yīng)用包名和應(yīng)用簽名
獲取包名和應(yīng)用簽名下載地址
流程參考

注意事項(xiàng)

1、在騰訊開放平臺(tái)創(chuàng)建自己的應(yīng)用,確保要和QQ互聯(lián)上面的應(yīng)用進(jìn)行關(guān)聯(lián)(最好創(chuàng)建一樣的應(yīng)用,避免不必要的報(bào)錯(cuò)出現(xiàn))
2、在QQ互聯(lián)上將自己的信息填寫全部,主要就是手持身份證
3、修改應(yīng)用里面的平臺(tái)信息,應(yīng)用包名 應(yīng)用簽名
將這些填寫正確,審核通過之后,可以避免很多不必要的報(bào)錯(cuò)

下一篇會(huì)通過集成友盟實(shí)現(xiàn)QQ登錄以及分享期待你的關(guān)注!??!

第三方登錄、分享相關(guān)文章閱讀

1、手把手帶你實(shí)現(xiàn)QQ登錄
2、手把手帶你實(shí)現(xiàn)QQ分享
3、手把手帶你集成友盟實(shí)現(xiàn)授權(quán)登錄、分享

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容