1. 程式人生 > >Android整合shareSdk進行微信和微信朋友圈的分享

Android整合shareSdk進行微信和微信朋友圈的分享

①去官網下載SDK
我沒有下文件,故下載下來只有一個
這裡寫圖片描述

解壓後進入會看到這樣一個資料夾
這裡寫圖片描述

這個資料夾裡面就是兩個核心model,因為想偷懶所以就沒有按照官網上的選擇自已只需要的平臺,把所有的平臺都整合進來了.那些jar包自動全有 放在該目錄下

這裡寫圖片描述

③此時需要吧SDK匯入我們的專案,此時需要在我們的專案裡新建兩個model,將之前解壓出來的兩個lib當做model依賴到我們專案
這裡寫圖片描述
依賴方法如下,新建兩個model,(要是當做library的model)然後將main下面的所有檔案刪除,將上述兩個資料夾裡面的對應的內容複製到main下面,在這注意將OneKeyShare這個檔案下面的src檔名字改成java即可.
這裡寫圖片描述


在這我是將MainLibs這個資料夾下的內容放到了sharesdk下面.sharesdk的專案結構與onekeyshare下的一樣,不過不同的是sharesdk下的java資料夾不用刪除,因為MainLibs下面並沒有java資料夾.然後要注意依賴關係,onekeyshare依賴於sharesdk,而我們的專案APP檔案依賴於onekeyshare.另外要將
這裡寫圖片描述
將該ShareSDK檔案放到自已專案的asset檔案下.再次一定要注意修改ShareSDK的屬性.Enable屬性表示你點選後是否顯示分享到該平臺,BypassApproval屬性表示是否繞過AppId和AppSecret的檢查,如果設定為true則繞過不檢查,但此時只能分享文字和圖片
這裡寫圖片描述

④此時將自已的application繼承與第三方的MobApplication.然後在需要分享的時候定義方法

private void showShare() {
        OnekeyShare oks = new OnekeyShare();
        //關閉sso授權
        oks.disableSSOWhenAuthorize();
        // 分享時Notification的圖示和文字  2.5.9以後的版本不     呼叫此方法
        //oks.setNotification(R.drawable.ic_launcher, getString(R.string
.app_name)); // title標題,印象筆記、郵箱、資訊、微信、人人網和QQ空間使用 //oks.setTitle("盒子錢包"); // titleUrl是標題的網路連結,僅在人人網和QQ空間使用 //oks.setTitleUrl("http://www.heziqb.com/"); // text是分享文字,所有平臺都需要這個欄位 oks.setText("盒子錢包 你的錢包"); // imagePath是圖片的本地路徑,Linked-In以外的平臺都支援此引數 //oks.setImagePath("/sdcard/test.jpg");//確保SDcard下面存在此張圖片 // url僅在微信(包括好友和朋友圈)中使用 //oks.setUrl("http://www.heziqb.com/"); // comment是我對這條分享的評論,僅在人人網和QQ空間使用 //oks.setComment("我是測試評論文字"); // site是分享此內容的網站名稱,僅在QQ空間使用 //oks.setSite("盒子錢包"); // siteUrl是分享此內容的網站地址,僅在QQ空間使用 //oks.setSiteUrl("http://www.heziqb.com/"); // 啟動分享GUI oks.setShareContentCustomizeCallback(new ShareContentCustomizeCallback() { @Override public void onShare(Platform platform, Platform.ShareParams paramsToShare) { if ("Wechat".equals(platform.getName())) { paramsToShare.setShareType(Platform.SHARE_WEBPAGE); paramsToShare.setImageUrl("http://www.heziqb.com/download/weixin-front.png"); paramsToShare.setTitle("王八蛋老闆黃鶴帶著他的小姨子跑了,我們沒有辦法沒有辦法,統統二十塊," + "統統二十塊"); paramsToShare.setUrl("http://www.heziqb.com/"); } if ("WechatMoments".equals(platform.getName())){ paramsToShare.setShareType(Platform.SHARE_WEBPAGE); paramsToShare.setTitleUrl("http://www.heziqb.com/"); paramsToShare.setImageUrl("http://www.heziqb.com/download/weixin-front.png"); paramsToShare.setTitle("我是標題"); paramsToShare.setUrl("http://www.heziqb.com/"); } } }); oks.show(this); }