因为最近刚刚进入新公司,还在熟悉业务中,所以带我的师傅让我关注关注Android的非SDK式的分享,也就是所谓的调用系统分享,不需要去申请appkey什么,简单方便,因此也跟我提了一个需求,就是直接调起具体的分享页,比如说如果分享到新浪微博,则不需要再点击微博进入,而是直接进入微博的具体分享页。为什么需要调用系统的分享,因为单纯的sdk分享并不支持多图模式的分享。

首先,我们得了解常用的分享平台,微信、微信朋友圈、新浪微博、QQ和QQ空间,这五个是最基本也是最常用的分享平台,我们也在这五个上面进行分享的操作。

另外,我们也给自己提一个需求,简单点就是在某个文件夹下面遍历里面的图片,然后将这些图片分享到各大平台。所以我们先找到一个存放图片的路径,MainActivity中的onCreate()方法中定义



1.找到存放图片的路径



找到路径之后,我们需要对这个目录进行遍历操作




2.遍历文件下的jpg图片



新建一个ShareUtils的工具类,里面封装了分享的方法

废话少说,先看代码

微信分享



3.微信朋友圈的分享



关注ComponentName这里面的两个参数,第一个参数是微信的包名,另一个是跳转到具体分享页的类路径。

接下来是QQ的分享



4.QQ的分享



QQ Zone的分享



5.QQ zone的分享



新浪微博的分享



6.新浪微博的分享



这些代码都是大同小异,只要关注包名和类名就行,新浪微博比较特殊,之前也是设置类名和包名的,但是发现没有用,后来直接通过设置包名,发现成功了,估计新浪为了安全考虑,就隐藏了跳转具体类的用法

Tips:当你找不到这些具体类的时候,可以下一个淘宝联盟,然后通过Android studio抓取系统日志,下面附上具体跳转的类名和各应用的包名,另外网上很多东西都过时了,不如自己抓取看看来的放心,可以少走很多弯路。