时间:2021-02-07 14:50:56 | 栏目:Android代码 | 点击:次
目前第三方分享方式有两种:
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>
即可。