目前第三方分享方式有兩種:
1.須要集成官方sdk包,在得到官方受權後調用其api來完成分享到微信、微博等。
優勢:無縫集成,功能多
缺點:集成官方sdk包進行開發,且須要申請官方的受權
2.直接調起微信、微博等的activity來進行分享
優勢:及其簡單,不須要sdk和官方受權
缺點:本地須要安裝微信、微博客戶端
這裏我介紹下第二種分享方式,這種分享方式在應用寶和android版百變相機中有應用。
典型的代碼以下:
@Override
public void onClick(View v)
{
String pakName = "";
Intent intent = new Intent(Intent.ACTION_SEND); // 啓動分享發送的屬性
intent.setType("text/plain"); // 分享發送的數據類型
switch (v.getId())
{
case 0:
pakName = "com.qzone"; //qq空間
break;
case 1:
pakName = "com.tencent.WBlog"; //騰訊微博
break;
case 2:
pakName = "com.tencent.mm"; //微信
break;
default:
break;
}
intent.setPackage(pakName);
intent.putExtra(Intent.EXTRA_SUBJECT, "這裏是分享主題"); // 分享的主題
intent.putExtra(Intent.EXTRA_TEXT, "這裏是分享內容"); // 分享的內容
this.startActivity(Intent.createChooser(intent, ""));// 目標應用選擇對話框的標題;
}
想讓本身的activity支持這種調用方式也很簡單,只要在xml里加上
<intent-filter>
<action android:name="
android.intent.action.SEND" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
便可