如何在Android上快速集成微信和QQ的分享(Share)能力?

目前微信和QQ已經成爲App分享的主要平臺,大部分開發者都會首選集成這兩個平臺,除了能夠選擇直接繼承官方的的SDK外,目前市面上有很多第三方的集成商,幫助開發者打包好了一鍵分享的SDK能力,如:極光,友盟+,Mobtech等,這裏主要以友盟+集成爲例,快速實如今Android上集成兩個平臺的分享能力。android

 

第一步:註冊友盟+帳號並獲取一個Appkeyweb

這一步基本是各個平臺的必要流程,在友盟+官網註冊一個帳號後,api

選擇新建Appkey ,填寫必要的信息和平臺,這裏選擇安卓微信

 

建立成果後,就能夠拿到咱們的Appkey信息,通常是一個常字符串app

 

第二步:下載SDKide

選擇要集成的平臺,咱們當前選微信和QQthis

下載完成後,解壓會拿到這麼幾個文件:url

 

將main文件夾以及platform(選擇微信和QQ)文件下,對應的資源文件和jar放入你的工程.net

第三步:代碼集成orm

1. 添加回調

微信須要添加回調的Activity,在包名目錄下建立wxapi文件夾,新建一個名爲WXEntryActivity的activity繼承WXCallbackActivity。

QQ不須要添加Activity,但須要在使用QQ分享或者受權的Activity中,添加以下代碼

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);

}

 

2. 配置Android Manifest XML

微信:

<activity

android:name=".wxapi.WXEntryActivity"

android:configChanges="keyboardHidden|orientation|screenSize"

android:exported="true"

android:theme="@android:style/Theme.Translucent.NoTitleBar" />

QQ:注意這裏的scheme="tencent100424468",須要替換成你本身在騰訊開放平臺申請的QQKey值

<activity

android:name="com.tencent.tauth.AuthActivity"

android:launchMode="singleTask"

android:noHistory="true" >

<intent-filter>

<action android:name="android.intent.action.VIEW" />

 

<category android:name="android.intent.category.DEFAULT" />

<category android:name="android.intent.category.BROWSABLE" />

 

<data android:scheme="tencent100424468" />

</intent-filter>

</activity>

<activity

android:name="com.tencent.connect.common.AssistActivity"

android:theme="@android:style/Theme.Translucent.NoTitleBar"

android:configChanges="orientation|keyboardHidden|screenSize"/>

3. 在AndroidManifest中添加權限

<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />

<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />

<uses-permission android:name="android.permission.INTERNET" />

4. 初始化

初始化須要在您的Application中調用咱們的初始化接口,這裏的這個5a12384aa40fa3551f0001d1 須要替換成咱們剛纔本身申請的那個Appkey

@Override

public void onCreate() {

super.onCreate();

UMConfigure.init(this,"5a12384aa40fa3551f0001d1"

,"umeng",UMConfigure.DEVICE_TYPE_PHONE,"");//58edcfeb310c93091c000be2 5965ee00734be40b580001a0

 

}

接着在application裏配置微信開放平臺申請的key和security

PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");

到這裏咱們就已經完成了集成步驟,接下來就能夠設置分享的樣式和內容了。

 

5. 設置分享面板

能夠用SDK自帶的分享樣式面板,也能夠本身定義面板,以下是使用自帶面板:

new ShareAction(MainActivity.this).withText("hello").setDisplayList(SHARE_MEDIA.SINA,SHARE_MEDIA.QQ,SHARE_MEDIA.WEIXIN)

.setCallback(umShareListener).open();

不帶面板

new ShareAction(MainActivity.this)

.setPlatform(SHARE_MEDIA.QQ)//傳入平臺

.withText("hello")//分享內容

.setCallback(umShareListener)//回調監聽器

.share();

6. 設置分享消息類型

下面以分享連接爲例:

UMWeb  web = new UMWeb(Defaultcontent.url);

web.setTitle("This is music title");//標題

web.setThumb(thumb);  //縮略圖

web.setDescription("my description");//描述

而後調用將這個參數設置到ShareAction中:

new ShareAction(ShareActivity.this)

.withMedia(web)

.share();

到此咱們的分享功能就集成完成了,其餘平臺或形式,大同小異。

如有收穫,就點個贊吧

相關文章
相關標籤/搜索