国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 系統 > Android > 正文

Android APP集成新浪微博分享功能

2019-10-21 21:34:14
字體:
來源:轉載
供稿:網友

本文為大家分享新浪微博分享功能集成,供大家參考,具體內容如下

下載新浪微博Android SDK

直接導入weibosdkcore.jar:適用于只需要授權、分享、網絡請求框架功能的項目。 
無論使用哪一種方式,都需要先將demo中lib目錄下的對應的全部 libweibosdkcore.so文件目錄拷貝到你的目標工程中Demo。在app–>src–>main中新建文件夾jniLibs,將demo 中lib目錄下的對應的全部 libweibosdkcore.so文件目錄拷貝到其中,不要改變任何文件和文件夾位置。

分享時參考demo中WBShareMainActivity,這里是分享的入口,主要代碼如下:

// 創建微博 SDK 接口實例    mWeiboShareAPI = WeiboShareSDK.createWeiboAPI(mContext, SysConstants.SHARE_WEIBO_APP_ID);    // 注冊到新浪微博    mWeiboShareAPI.registerApp();    Intent i = new Intent(mContext, WBShareActivity.class);    i.putExtra(WBShareActivity.KEY_SHARE_TYPE, WBShareActivity.SHARE_ALL_IN_ONE);    i.putExtra(WBShareActivity.IMAGE_URL, imgUrl);    mContext.startActivity(i);

分享之前需要將APP_KEY等參數替換成自己應用的參數,參數可以參考Demo里的Constants類。

在進行微博分享前,需要在AndroidManifest.xml中,在需要接收消息的Activity(喚起微博主程序的類)里聲明對應的Action:ACTION_SDK_REQ_ACTIVITY,如下所示:

<activity  android:name="com.sina.weibo.sdk.demo.WBShareActivity"  android:configChanges="keyboardHidden|orientation"  android:screenOrientation="portrait" >  <intent-filter>      <action android:name="com.sina.weibo.sdk.action.ACTION_SDK_REQ_ACTIVITY" />      <category android:name="android.intent.category.DEFAULT" /></intent-filter></activity><activity    android:name="com.sina.weibo.sdk.component.WeiboSdkBrowser"    android:configChanges="keyboardHidden|orientation"   android:windowSoftInputMode="adjustResize"   android:exported="false" ></activity>

分享的功能主要是由WBShareActivity實現的,包括文本、圖片、網頁、音樂、視頻、聲音,具體代碼參考Demo。

WBShareActivity里實現了IWeiboHandler#Response接口,接收分享后微博返回的數據,代碼如下所示:

/**   * 接收微客戶端博請求的數據。   * 當微博客戶端喚起當前應用并進行分享時,該方法被調用。   *    * @param baseRequest 微博請求數據對象   * @see {@link IWeiboShareAPI#handleWeiboRequest}   */  @Override  public void onResponse(BaseResponse baseResp) {    if(baseResp!= null){      switch (baseResp.errCode) {      case WBConstants.ErrorCode.ERR_OK:        Toast.makeText(this, R.string.weibosdk_demo_toast_share_success, Toast.LENGTH_LONG).show();        break;      case WBConstants.ErrorCode.ERR_CANCEL:        Toast.makeText(this, R.string.weibosdk_demo_toast_share_canceled, Toast.LENGTH_LONG).show();        break;      case WBConstants.ErrorCode.ERR_FAIL:        Toast.makeText(this,             getString(R.string.weibosdk_demo_toast_share_failed) + "Error Message: " + baseResp.errMsg,             Toast.LENGTH_LONG).show();        break;      }    }  }

需要注意的是,在WBShareActivity分享圖片的方法getImageObj中,注釋中說所設置的縮略圖,并非是分享時的圖片。我們只需要將需要分享的圖片放到imageObject里即可,沒有32K的大小限制。如果我們將縮略圖放在imageObject中,則分享的圖片為縮略圖,看不清楚。

/**   * 創建圖片消息對象。   *    * @return 圖片消息對象。   */  private ImageObject getImageObj() {    ImageObject imageObject = new ImageObject();    BitmapDrawable bitmapDrawable = (BitmapDrawable) mImageView.getDrawable();    //設置縮略圖。 注意:最終壓縮過的縮略圖大小不得超過 32kb。    /*上面的注釋是demo里的,但是其實這里并不必要設置縮略圖,只需要將我們分享的圖片直接設置到imageObjet里即可*/    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_logo);    imageObject.setImageObject(bitmap);    return imageObject;  }

其他事項可參考新浪微博sdk自帶的文檔。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持VEVB武林網。


注:相關教程知識閱讀請移步到Android開發頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 西乌珠穆沁旗| 澄迈县| 呼伦贝尔市| 哈巴河县| 文登市| 汾西县| 长岭县| 平凉市| 长治县| 边坝县| 陆丰市| 昌都县| 柞水县| 偏关县| 东乡族自治县| 酉阳| 托克托县| 阳谷县| 清原| 海阳市| 巴塘县| 临邑县| 江都市| 双城市| 织金县| 沂水县| 云阳县| 斗六市| 延庆县| 绍兴县| 新乡县| 屏东市| 靖宇县| 湘西| 双牌县| 太仆寺旗| 民乐县| 隆子县| 龙海市| 鹰潭市| 柳河县|