目前第三方分享方式有两种:
1.需要集成官方sdk包,在获得官方授权后调用其api来完成分享到微信、微博等。
优点:无缝集成,功能多
缺点:集成官方sdk包进行开发,且需要申请官方的授权
2.直接调起微信、微博等的activity来进行分享
优点:及其简单,不需要sdk和官方授权
缺点:本地需要安装微信、微博客户端
这里我介绍下第二种分享方式,这种分享方式在应用宝和android版百变相机中有应用。
典型的代码如下:
@Overridepublic 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>
即可