1. 程式人生 > >Android 使用第三方SDK—友盟實現分享功能

Android 使用第三方SDK—友盟實現分享功能

今天給大家寫一下友盟的分享,這段時間在專案有用到,這裡簡單給大家介紹一下。

首先,到微信,QQ,微博開放平臺新增應用,獲取key,下面列出連結:

到友盟官網註冊,新增應用獲取唯一的key, 下載友盟分享的SDK,需要引入到自己專案當中。我這隻用到了微信,QQ,微博,就只選了一部分功能。


新增相應的res資原始檔到你的專案中,到這裡,準備工作就完成了。

接下來,開始實現分享功能。友盟分享有它自己給的分享介面,可以直接使用,程式碼在SDK整合文件中有,這裡重點講一下只使用分享提供的API,自己專案繪製分享介面。

效果圖:


點選分享按鈕,螢幕底部出現分享dialog。

佈局很簡單,就不貼程式碼了,寫一個ShareDIalog類繼承Dialog,引入佈局檔案,背景設定透明,新增一個出現與消失的動畫

[java] view plain copy  print?
  1. publicclass ShareDialog extends Dialog {  
  2.     private onClickback callback;  
  3.     public ShareDialog(Context context, onClickback callback) {  
  4.         this(context, R.layout.share_dialog, R.style.my_dialog_style,  
  5.                 LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT);  
  6.         this.callback = callback;  
  7.     }  
  8.     public ShareDialog(final Context context, int layout, int style, int width,  
  9.             int height) {  
  10.         super(context, style);  
  11.         setContentView(layout);  
  12.         setCanceledOnTouchOutside(true);  
  13.         // 設定屬性值
  14.         WindowManager.LayoutParams lp = getWindow().getAttributes();  
  15.         lp.width = width;  
  16.         lp.height = height;  
  17.         getWindow().setAttributes(lp);  
  18.         setListener();  
  19.     }  
  20.     // 設定點選事件
  21.     privatevoid setListener() {  
  22.         findViewById(R.id.tv_wx).setOnClickListener(  
  23.                 new android.view.View.OnClickListener() {  
  24.                     @Override
  25.                     publicvoid onClick(View v) {  
  26.                         callback.onShare(1);  
  27.                         dismiss();  
  28.                     }  
  29.                 });  
  30.         findViewById(R.id.tv_wxp).setOnClickListener(  
  31.                 new android.view.View.OnClickListener() {  
  32.                     @Override
  33.                     publicvoid onClick(View v) {  
  34.                         callback.onShare(2);  
  35.                         dismiss();  
  36.                     }  
  37.                 });  
  38.         findViewById(R.id.tv_wb).setOnClickListener(  
  39.                 new android.view.View.OnClickListener() {  
  40.                     @Override
  41.                     publicvoid onClick(View v) {  
  42.                         callback.onShare(3);  
  43.                         dismiss();  
  44.                     }  
  45.                 });  
  46.         findViewById(R.id.tv_qq).setOnClickListener(  
  47.                 new android.view.View.OnClickListener() {  
  48.                     @Override
  49.                     publicvoid onClick(View v) {  
  50.                         callback.onShare(4);  
  51.                         dismiss();  
  52.                     }  
  53.                 });  
  54.         findViewById(R.id.tv_qqz).setOnClickListener(  
  55.                 new android.view.View.OnClickListener() {  
  56.                     @Override
  57.                     publicvoid onClick(View v) {  
  58.                         callback.onShare(5);  
  59.                         dismiss();  
  60.                     }  
  61.                 });  
  62.         findViewById(R.id.tv_cancal).setOnClickListener(  
  63.                 new android.view.View.OnClickListener() {  
  64.                     @Override
  65.                     publicvoid onClick(View v) {  
  66.                         dismiss();  
  67.                     }  
  68.                 });  
  69.     }  
  70.     @Override
  71.     publicvoid show() {  
  72.         super.show();  
  73.         / 設定dialog顯示動畫  
  74.         getWindow().setWindowAnimations(R.style.dialogWindowAnim);  
  75.         // 設定顯示位置為底部
  76.         getWindow().setGravity(Gravity.BOTTOM);  
  77.     }  
  78.     publicinterface onClickback {  
  79.         abstractvoid onShare(int id);  
  80.     }  
  81. }  
anim 動畫檔案可以直接用友盟的:

styles:

[html] view plain copy  print?
  1. <resources>
  2.     <stylename="dialogWindowAnim"parent="android:Animation"mce_bogus="1">
  3.         <itemname="android:windowEnterAnimation">@anim/umeng_socialize_slide_in_from_bottom</item>
  4.         <itemname="android:windowExitAnimation">@anim/umeng_socialize_slide_out_from_bottom</item>
  5.     </style>
  6. </resources>
視窗進入動畫umeng_socialize_slide_in_from_bottom.xml[html] view plain copy  print

相關推薦

Android 使用第三方SDK實現分享功能

今天給大家寫一下友盟的分享,這段時間在專案有用到,這裡簡單給大家介紹一下。 首先,到微信,QQ,微博開放平臺新增應用,獲取key,下面列出連結: 到友盟官網註冊,新增應用獲取唯一的key, 下載友盟分享的SDK,需要引入到自己專案當中。我這隻用到了微信,QQ,微博,就只選了一部分功

Android整合社會化分享功能----關鍵在微信分享(MD5的處理)

Android整合友盟社會化分享功能----關鍵在微信分享(MD5的處理:Window---》Preference---Android---》build:去掉冒號,大寫轉小寫) MD5:B8:DB:FB:89:F0:F0:FC:7A:DB:10:D7:B4:AB:D6:0

Android開發——整合社會化分享遇到的坑(二)

前言 從工作到現在遇到了整合友盟社會化分享第二個坑,整合最新的版的友盟社會化分享SDK遇見了一個之前沒有遇到過的程式錯誤 java.lang.NoClassDeFoundError:Failed r

Android開發——整合社會化分享遇到的坑(一)

前言 在很多App開發當中都有社會化分享,我一般都是整合友盟的社會化分享功能。這次開發公司的App需要整合微信、朋友圈、QQ和QQ空間。我是整合第三方成功了,但是在QQ分享的時候出現了意外,第一次出現“Error該平臺不支援純文字分享”,讓我最鬱悶的是我分享的

android使用實現第三方登錄、分享以及微信回調無反應問題解決辦法

nta 社會 四大 線程池 down 混合app value int ring Leaning_wk每一次的進步都會拉近與成功的距離! 帳號設置退出 關閉

android使用實現第三方登入、分享以及微信回撥無反應問題解決辦法

這裡介紹微信和新浪登入。微信登入和新浪登入都需要申請第三方賬號。可以參考官方文件http://dev.umeng.com/social/android/operation#2還是很清晰的。 新浪微博開放平臺http://open.weibo.com/有賬號就可以,經常刷微

使用社會化分享元件實現第三方登入

產品概述 Android U-share 6.0sdk是在5.0+的基礎上做了進一步的優化,降低了包的大小,對於三方的jar提供了更多選擇(精簡版,原生版),並提供了更多實用的介面,方便了使用者的整合和升級。同時6.0的版本相容5.0+的版本,老使用者,只

使用社會化分享安卓androidSDK分享純圖片到微信

本人使用的其實是友盟的Cocos2d-x安卓版。普通安卓版使用方式稍有不同,但是設定分享內容的介面是一樣的。友盟官方文件中提到過他們支援微信純圖片分享,就是分享一張純圖片,而非一條圖文連結,到微信朋友圈,點選之後變大圖的那種。但是他們並未說明如何設定,預設設定是分享一條圖文

Android 社會化分享的整合與封裝

Android 友盟社會化分享的整合與封裝 分享是APP中非常高頻的操作之一,在Android的開發環境中,第三方分享框架也有很多。比較流行的包括 極光社會化分享(sharesdk)、友盟社會化分享(Ushare)、Mob社會化分享以及在githut上比較流行的 ShareSDK、Share

使用實現第三方登入

      配置清單 App public class App extends Application { @Override public void onCreate() { super.onCre

使用+實現第三方登入

最近專案中有使用到友盟第三方登入:下面我就把使用友盟第三方登入的步驟分享給大家: 1.第一步:去友盟+官網建立應用,申請獲取到appkey。有賬號的話直接登入建立即可,無賬號註冊一個建立應用。 2.第二步:確定可以使用第三方登入的平臺。(我這裡實現Q

Android QQ分享_At_Swim

按著步驟走絕對不會錯 1.友盟下載 SDK 2.點選資料夾找到 3. 匯入libs 架包 4.匯入res架包 5.匯入許可權  <uses-permission android:name="android.permission.ACCESS_NETWO

Android微博,微信,QQ分享功能實現

最近專案要求實現微博,微信,QQ的分享功能,並且要求有分享回撥,提示使用者分享成功還是失敗.當用戶從三方應用點選分享的連線的時候,通過h5頁面可以下載安裝app或者直接進入app的對應頁面. 首先說以下我遇到的幾個問題吧 QQ無法進行回撥,但是確實已經

Android中統計分析的SDK ,統計,百度統計,騰訊統計

APP統計分析 使用者畫像 對程式設計師來說,使用者畫像就是使用者的屬性和行為;通俗地說,使用者畫像是包括了個人資訊、興趣愛好、日常行為等血肉豐滿的客戶實體。使用者畫像是精準營銷的產物,企業通過收集使用者的行為,然後分析出使用者的特徵與偏好,進而挖掘潛在的商業價值,實現企業

Android填坑之旅(第二十二篇)使用社會化分享的碰到的坑

最近有個專案又要使用分享功能模組,況且之前也整合過,於是乎趁現在專案沒有啟動,就提前預熱了一把,本想著兩個鐘頭搞定,然而儘管之前整合過一次,筆者發現過段時間之後還是像剛剛整合一樣,故寫下這篇博文加以記錄。 1.在使用友盟分享面板的時候出現面板無法彈出,只是

android之ShareSDK實現分享功能

現在隨著科技的發達,人們交友的方式也越來越廣泛,用到的app也越來越多,那麼每當我們發現了好玩的好吃的好看的文章之類的,想分享到朋友圈.QQ空間.微博等如何做呢?由於這個需求越來越被需要,所以ShareSDK,友盟分享啊之類的分享的第三方出現了,省了開發者的開發時間,只需要

Android社會化分享 自定義分享頁面

因為專案需要,找了很多資料,也走了不少彎路,現在把友盟分享demo貼出,供大家參考。 原始碼下載:下載原始碼 1.MyApplication.java //初始化引數 public class MyApplication extends Applic

Android 8.0 登入,分享閃回,失敗原因

1.qq失敗 注意tencent一定不能丟 2.Android 8.0 微信和QQ登入會閃退 報錯——Only fullscreen opaque activities can request orientation 容易看出我麼只要將android:scre

Android輕鬆實現分享功能

在Android開發中,要實現分享功能,可能首先想到第三方的ShareSDK,其實,想要分享一些圖片,文字之類的完全沒必要在App中整合第三方SDK,利用原生的SDK就可以輕鬆實現分享功能。 Activity的跳轉方式   眾所周知,Activi

實現分享功能插件2---jiathis分享插件應用

itl 分享功能 count www scrip get renren color csdn 博主原創:未經博主允許,不得轉載 在上一篇的博文中分享了如何用百度分享插件實現分享功能,現在展示用jiathis進行實現分享功能: 主要代碼如下: <body>