Android編程實(shí)現(xiàn)微信分享信息的方法
本文實(shí)例講述了Android編程實(shí)現(xiàn)微信分享信息的方法。分享給大家供大家參考,具體如下:
隨著微信越來(lái)越火,越來(lái)越多的應(yīng)用要求有分享到微信的功能。雖然有很多平臺(tái)都幫集成有分享功能,比如友盟。但是個(gè)人覺(jué)得友盟集成的東西太多了,自己封裝得太過(guò)分了,很多資源文件也要帶進(jìn)去,所以感覺(jué)不是怎么好,所以自己也研究了一下微信的調(diào)用其SDK分享。下面說(shuō)說(shuō)步驟。
第一:下載官方的sdk demo。
下載地址:http://open.weixin.qq.com/download/?lang=zh_CN
第二:解壓,并將工程導(dǎo)入到eclipse
解壓出來(lái)的時(shí)候,發(fā)現(xiàn)根目錄下有一個(gè)debug.keystore文件,這個(gè)文件很關(guān)鍵的哦。
然后我們運(yùn)行看看,你會(huì)發(fā)現(xiàn)分享根本就不成功,是微信原因嗎,當(dāng)然不是。
第三:在上面說(shuō)到項(xiàng)目的根目錄下有一個(gè)debug.keystore文件,因?yàn)槲覀兙幾g、簽名apk的時(shí)候,用的是我們自帶的那個(gè)debug.keystore,每臺(tái)電腦都是不一樣的簽名文件,而且微信那個(gè)APP_ID已經(jīng)簽名文件debug.keystore綁定了的,所以為什么我們直接運(yùn)行時(shí)候是不成功的。
解決方法就是將微信的那個(gè)debug.keystore拷貝到我們電腦默認(rèn)的那個(gè)debug.keystore位置,將其覆蓋(建議先備份)。
在window系統(tǒng),這個(gè)簽名文件在c:\用戶\你的用戶名\.android目錄下(注意.android文件夾默認(rèn)是隱藏的)。
再次運(yùn)行,分享就成功了。
如果是我們的應(yīng)用,將APP_ID替換成我們?cè)诠倬W(wǎng)上面申請(qǐng)的APP_ID就行了。
其實(shí)我們分享信息到微信,還有一種更簡(jiǎn)單的方法,不用其提供的SDK API,直接調(diào)用微信相關(guān)的Activity,這樣更加省事,例如:
/** * 分享信息到朋友 * * @param file,假如圖片的路徑為path,那么file = new File(path); */ private void shareToFriend(File file) { Intent intent = new Intent(); ComponentName componentName = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareImgUI"); intent.setComponent(componentName); intent.setAction(Intent.ACTION_SEND); intent.setType("image/*"); intent.putExtra(Intent.EXTRA_TEXT, "測(cè)試微信"); intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file)); startActivity(intent); }
/** * 分享信息到朋友圈 * * @param file,假如圖片的路徑為path,那么file = new File(path); */ private void shareToTimeLine(File file) { Intent intent = new Intent(); ComponentName componentName = new ComponentName("com.tencent.mm", "com.tencent.mm.ui.tools.ShareToTimeLineUI"); intent.setComponent(componentName); intent.setAction(Intent.ACTION_SEND); intent.putExtra(Intent.EXTRA_STREAM, Uri.fromFile(file)); // intent.setAction(android.content.Intent.ACTION_SEND_MULTIPLE); // ArrayList<Uri> uris = new ArrayList<Uri>(); // for (int i = 0; i < images.size(); i++) { // Uri data = Uri.fromFile(new File(thumbPaths.get(i))); // uris.add(data); // } // intent.putParcelableArrayListExtra(Intent.EXTRA_STREAM, uris); intent.setType("image/*"); startActivity(intent); }
希望本文所述對(duì)大家Android程序設(shè)計(jì)有所幫助。
相關(guān)文章
Android studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器App功能
這篇文章主要為大家詳細(xì)介紹了Android studio實(shí)現(xiàn)簡(jiǎn)易計(jì)算器App功能,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-05-05Android之Notification的多種用法實(shí)例
本篇文章主要介紹了Android之Notification的多種用法實(shí)例,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-12-12Android手勢(shì)操作簡(jiǎn)單實(shí)例講解
這篇文章主要為大家詳細(xì)介紹了Android手勢(shì)操作簡(jiǎn)單實(shí)例,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2016-09-09Android RecyclerView實(shí)現(xiàn)點(diǎn)擊條目刪除
這篇文章主要為大家詳細(xì)介紹了Android RecyclerView實(shí)現(xiàn)點(diǎn)擊條目刪除,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-11-11Android10自動(dòng)連接WiFi問(wèn)題的解決
這篇文章主要介紹了Android10自動(dòng)連接WiFi問(wèn)題的解決,文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧2020-03-03詳解dex優(yōu)化對(duì)Arouter查找路徑的影響
dex簡(jiǎn)單說(shuō)就是優(yōu)化后的android版.exe。每個(gè)apk安裝包里都有。相對(duì)于PC上的java虛擬機(jī)能運(yùn)行.class,android上的Davlik虛擬機(jī)能運(yùn)行.dex。本文將著重介紹dex優(yōu)化對(duì)Arouter查找路徑的影響2021-06-06Android實(shí)現(xiàn)Tab切換界面功能詳解
這篇文章主要為大家詳細(xì)介紹了Android如何實(shí)現(xiàn)Tab切換界面的功能,以及對(duì)Tab變化事件進(jìn)行監(jiān)聽(tīng)。文中示例代碼講解詳細(xì),感興趣的可以了解一下2022-05-05android RecycleView實(shí)現(xiàn)下拉刷新和上拉加載
這篇文章主要為大家詳細(xì)介紹了android RecycleView實(shí)現(xiàn)下拉刷新和上拉加載,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-06-06