1. 程式人生 > >安卓新浪微博分享例項程式碼

安卓新浪微博分享例項程式碼

文章來源(石基技術網):http://www.58shiji.com/html/javaym/20150318/2941.html

  1. @Override
  2.         protectedvoid onCreate(Bundle savedInstanceState) {  
  3.                  super.onCreate(savedInstanceState);  
  4.                  setContentView(R.layout.user_center);  
  5.                  // 建立微博例項
  6.                 mWeiboAuth = new
     WeiboAuth(this, Constants.APP_KEY,  
  7.                                  Constants.REDIRECT_URL, Constants.SCOPE);  
  8.                  // 建立微博分享介面例項
  9.                 mWeiboShareAPI = WeiboShareSDK.createWeiboAPI(this, Constants.APP_KEY);  
  10.                  // 當 Activity 被重新初始化時(該 Activity 處於後臺時,可能會由於記憶體不足被殺掉了),
  11.                 // 需要呼叫 {@link IWeiboShareAPI#handleWeiboResponse} 來接收微部落格戶端返回的資料。
  12.                 // 執行成功,返回 true,並呼叫 {@link IWeiboHandler.Response#onResponse};
  13.                 // 失敗返回 false,不呼叫上述回撥
  14.                 if (savedInstanceState != null) {  
  15.                          mWeiboShareAPI.handleWeiboResponse(getIntent(), this
    );  
  16.                  }  
  17.         }  
  18.  /** 
  19.           * 檢查使用者是否安裝新浪微博 
  20.          */
  21.          publicvoid isNotInstall() {  
  22.                  try {  
  23.                          // 檢查微部落格戶端環境是否正常,如果未安裝微博,彈出對話方塊詢問使用者下載微部落格戶端
  24.                         if (mWeiboShareAPI.checkEnvironment(true)) {  
  25.                                  // 註冊第三方應用 到微部落格戶端中,註冊成功後該應用將顯示在微博的應用列表中。
  26.                                 // 但該附件欄整合分享許可權需要合作申請,詳情請檢視 Demo 提示
  27.                                 mWeiboShareAPI.registerApp();  
  28.                                 startSinaShare();  
  29.                          }  
  30.                  } catch (WeiboShareException e) {  
  31.                          e.printStackTrace();  
  32.                          Toast.makeText(UserCenter.this, e.getMessage(), Toast.LENGTH_LONG)  
  33.                                          .show();  
  34.                  }  
  35.                  if (dialog != null) {  
  36.                          dialog.dismiss();  
  37.                  }  
  38.          }  
  39.          /** 
  40.           * 微博認證授權回撥類。 1. SSO 授權時,需要在 {@link #onActivityResult} 中呼叫 
  41.          * {@link SsoHandler#authorizeCallBack} 後, 該回調才會被執行。 2. 非 SSO 
  42.           * 授權時,當授權結束後,該回調就會被執行。 當授權成功後,請儲存該 access_token、expires_in、uid 等資訊到 
  43.          * SharedPreferences 中。 
  44.          */
  45.          class AuthListener implements WeiboAuthListener {  
  46.                  @Override
  47.                  publicvoid onComplete(Bundle values) {  
  48.                          // 從 Bundle 中解析 Token
  49.                          mAccessToken = Oauth2AccessToken.parseAccessToken(values);  
  50.                          if (mAccessToken.isSessionValid()) {  
  51.                                  // 儲存 Token 到 SharedPreferences
  52.                                  AccessTokenKeeper.writeAccessToken(UserCenter.this,  
  53.                                                  mAccessToken);  
  54.                                  sendMessage();  
  55.                          }  
  56.                  }  
  57.                  @Override
  58.                  publicvoid onCancel() {  
  59.                  }  
  60.                  @Override
  61.                  publicvoid onWeiboException(WeiboException e) {  
  62.                          Toast.makeText(UserCenter.this,  
  63.                                          "Auth exception : " + e.getMessage(), Toast.LENGTH_LONG)  
  64.                                          .show();  
  65.                  }  
  66.          }  
  67.          /** 
  68.           * 新浪微博使用者授權 
  69.          */
  70.          publicvoid startSinaShare() {  
  71.                  mSsoHandler = new SsoHandler(UserCenter.this, mWeiboAuth);  
  72.                  // 從 SharedPreferences 中讀取上次已儲存好 AccessToken 等資訊,
  73.                 mAccessToken = AccessTokenKeeper.readAccessToken(this);  
  74.                  // 如果Token有效,則直接呼叫傳送微博
  75.                 if (mAccessToken.isSessionValid()) {  
  76.                          sendMessage();  
  77.                  } else {  
  78.                          mSsoHandler.authorize(new AuthListener());  
  79.                  }  
  80.          }  
  81.          /** 
  82.           * @See {@link Activity#onNewIntent} 
  83.           */
  84.          @Override
  85.          protectedvoid onNewIntent(Intent intent) {  
  86.                  super.onNewIntent(intent);  
  87.                  // 從當前應用喚起微博並進行分享後,返回到當前應用時,需要在此處呼叫該函式
  88.                 // 來接收微部落格戶端返回的資料;執行成功,返回 true,並呼叫
  89.                 // {@link IWeiboHandler.Response#onResponse};失敗返回 false,不呼叫上述回撥
  90.                 mWeiboShareAPI.handleWeiboResponse(intent, this);  
  91.          }  
  92.          /** 
  93.           * 當 SSO 授權 Activity 退出時,該函式被呼叫。 
  94.          * 
  95.           * @see {@link Activity#onActivityResult} 
  96.           */
  97.          @Override
  98.          protectedvoid onActivityResult(int requestCode, int resultCode, Intent data) {  
  99.                  super.onActivityResult(requestCode, resultCode, data);  
  100.                  // SSO 授權回撥
  101.                 // 重要:發起 SSO 登陸的 Activity 必須重寫 onActivityResult
  102.                  if (mSsoHandler != null) {  
  103.                          mSsoHandler.authorizeCallBack(requestCode, resultCode, data);  
  104.                  }  
  105.          }  
  106.          /** 
  107.           * 接收微客戶端博請求的資料。 當微部落格戶端喚起當前應用並進行分享時,該方法被呼叫。 
  108.          * 
  109.           * @param baseRequest 
  110.           *            微博請求資料物件 
  111.          * @see {@link IWeiboShareAPI#handleWeiboRequest} 
  112.           */
  113. 相關推薦

    分享例項程式碼

    文章來源(石基技術網):http://www.58shiji.com/html/javaym/20150318/2941.html @Override         protectedvoid onCreate(Bundle savedInsta

    分享錯誤程式碼列表

    微博平臺錯誤程式碼分為兩種:系統級錯誤程式碼(以數字1開頭)、:服務級錯誤程式碼(以數字2開頭),錯誤程式碼以JSON格式返回給客戶端的。如下所示: { "request" : "/statuses/update.json", "error_code" : "10006

    分享鏈接代碼

    地址 php 微博 新浪 ref http href .com targe <a href="http://service.weibo.com/share/share.php?url=分享的網址;title=標題內容&amp;pic=分享的圖片地址" targ

    [h5+api]移動app開發用到的信好友,朋友圈,qq好友,分享合集

    適用H5+環境,能夠使用plus方法的移動app中 /** * Created by HBuilder. * User: tyx * Date: 2018-11-21 * Time: 17:28:51 */ /** * 初始化分享服務 */ //---------------H5 pl

    Android APP整合分享功能

    新浪微博分享功能整合 直接匯入weibosdkcore.jar:適用於只需要授權、分享、網路請求框架功能的專案。 無論使用哪一種方式,都需要先將demo中lib目錄下的對應的全部 libweibosdkcore.so檔案目錄拷貝到你的目標工程中Demo。

    分享呼叫

    新浪微博分享 什麼都不說了,直接上程式碼 <script type="text/javascript"> $(".icon-weibo").click(function(){ w

    分享以及回撥可能會遇到的一些問題

    1.老老實實的去新浪微博的開放平臺去下sdk 2.把sdk加到你專案中的lib中,然後再清單檔案中你需要用到分享的activity中加上這幾行程式碼 <intent-filter> <action android:name="com.sin

    iOS 第三方分享坑i

    環境:蘋果機 虛擬機器 +iOS9.2 新浪分享遇見的問題 正常分享是很容易實現的,但我突然想要實現分享圖文功能的想法。 剛開始的時候,我想。shareSDK會提供介面吧,會提供吧。。然而找了半天沒找到,不過還好機智,想到看官方提供的demo,demo地址:http:/

    分享 SDK 圖片大小限制

    在使用安卓版新浪微博分享 SDK 中 WebpageObject 的分享圖片時,縮圖和大圖(均為 Bitmap 格式)的最大值分別為 32KB 和 2MB。 關於更多資料大小檢查可以閱讀 WeiboMultiMessage#checkArgs(),textOb

    解決UmengSDK社會化分享過程中信,QQ,分享不成功的問題

    按照UmengSDK的demo進行整合後,碰到的幾個問題 一、點選qq或空間分享,出現應用無響應(ANR)的情況。 解決方法:查查是否分享的圖片引數是否已經設定,沒有設定會出現ANR,設定後可以正常分享。title、url、content等引數是否設定正確 二、微信分享不成

    IOS 使用ShareSDK進行QQ,信,分享失敗經驗

      該文章轉自  http://blog.csdn.net/iosbird/article/details/50420547    非常感謝提供解決思路 問題描述:在iOS9下,系統預設會攔截對http協議介面的訪問,因此無法獲取http協議介面的資料。對ShareS

    分享按鈕介面:樣式自定義

    為了解決該問題,我們首先來看下新浪所生成的JS程式碼: <script type="text/javascript" charset="utf-8"> (function(){ var _w = 32 , _h = 32; var param = { url:locati

    android為什麼我呼叫分享圖片,分享的是一張很模糊,基本失真的圖片。。怎麼處理

    程式碼如下,用這種方式調QQ,微信就不存在這麼嚴重的失真現象。  private String imageUrl = null;     private void weiboShare(){         if (!

    android 分享不了https開頭的網路圖片問題

    這次碰到的問題很奇葩,之前的專案微博分享都正常,現在分享的圖片由http開頭改為https開頭了,結果分享圖片每次都失敗。後面問了新浪微博技術支援發現時新浪微博自身的限制,也是醉了,花了一個下午時間排查是不是自己程式碼

    909422229_API錯誤程式碼

    錯誤程式碼說明 錯誤返回值格式 JSON { "request" : "/statuses/home_timeline.json", "error_code" : "20502", "error" : "Need you follow uid."

    API錯誤程式碼說明對照表

    轉自 http://blog.unvs.cn/archives/sina-api-error-code.html 這篇文章資料是從新浪微博開發平臺分享過來,一方面是博主自己開發過程遇到問題對錯誤程式碼的快捷查詢,不用每次都得到官方找;另一方面,分享給大家學習收

    share分享接口請求奇葩錯誤

    安全 配置域名 問題 如果 sha 實時 名稱 錯誤 限制 17年6月30號,微博正式轉入牛逼狀態; 限制原來的微博發布刪除等接口;(想用就開套餐,不然別說話) 開放新的分享接口share,然而,在調用這個分享接口時候,就會出現各種各樣的奇葩錯誤; 註意事項:

    在Android中使App高速、簡單地支持信、QQ、facebook等十幾個主流社交平臺的分享功能

    分析 ont renren androidm mod 執行 xen 12px 操作 前言 在如今的APP或者遊戲中,分享功能差點兒已經成為標配。分享功能不但能夠滿足用戶的需求。也能夠為產品帶來很多其它的用戶,甚至能夠對用戶的行為、活躍度、年齡段等情況進行數據統計,使得軟

    百度分享無法分享圖片的解決方法

    偶然發現,文章分享到sina weibo竟然不能將附帶的圖片。後來查了一下,發現,不只我遇到了這個問題。 經過檢視百度分享官方的幫助文件,發現幫助文件是依照舊版的分享程式碼指導自定義使用的。而首頁獲取到的程式碼是最新版的分享程式碼, 最新版分享程式碼雖然支援微信。但是在分享到新浪微博的時候有

    一鍵分享到QQ空間、QQ好友、程式碼

       通過qq空間、qq聊天、新浪微博和微信二維碼分享平臺提供的介面,實現把網頁中對應的圖片、標題、描述的資訊引數用javascript獲取後傳進介面中,實現一鍵分享。         使用到的介面