ShareUtil
介绍:
ShareUtil是一个综合性的分享及登录工具库,支持微信分享,微博分享,QQ分享,QQ空间分享以及Android系统默认分享,支持微信登录,微博登录以及QQ登录并获取用户信息。
运行效果:
使用说明:
Feature
-
多种分享方式:
-
支持分享图片本地链接,网络链接或者Bitmap, 不需要考虑各个平台的不一致性。
-
支持微信、QQ、微博登录并获取登录用户信息
添加依赖
免第三方Jar包配置
compile 'me.shaohui:shareutil:1.3.4'
手动添加第三方jar
compile 'me.shaohui:shareutil:1.3.4.no_jar'
使用配置
build.gradle 配置 在defaultConfig节点下增加你的qq id信息
defaultConfig {
...
manifestPlaceholders = \[
// 替换成你的qq_id
qq_id: "123456789"
\]
}
在使用之前设置在各个平台申请的Id,以及分享的回调(推荐放在Application的onCreate方法中)
// init
ShareConfig config = ShareConfig.instance()
.qqId(QQ_ID)
.wxId(WX_ID)
.weiboId(WEIBO_ID)
// 下面两个,如果不需要登录功能,可不填写
.weiboRedirectUrl(REDIRECT_URL)
.wxSecret(WX_ID);
ShareManager.init(config)
分享使用
ShareUtil.shareImage(this, SharePlatform.QQ, "http://image.com", shareListener);
ShareUtil.shareText(this, SharePlatform.WX, "分享文字", shareListener);
ShareUtil.shareMedia(this, SharePlatform.QZONE, "title", "summary", "targetUrl", "thumb", shareListener);
登录使用
// LoginPlatform.WEIBO 微博登录
// LoginPlatform.WX 微信登录
// LoginPlatform.QQ QQ登录
final LoginListener listener = new LoginListener() {
@Override
public void loginSuccess(LoginResult result) {
//登录成功, 如果你选择了获取用户信息,可以通过
}
@Override
public void loginFailure(Exception e) {
Log.i("TAG", "登录失败");
}
@Override
public void loginCancel() {
Log.i("TAG", "登录取消");
}
};
LoginUtil.login(MainActivity.this, LoginPlatform.WEIBO, mLoginListener, isFetchUserInfo);
使用说明
-
QQ不支持纯文字分享,会直接分享失败
-
使用Jar文件的版本如下:
微信版本:3.1.1 QQ版本:3.1.0 lite版 微博版本: 3.1.4
-
分享的bitmap,会在分享之后被回收掉,所以分享之后最好不要再对该bitmap做任何操作。
-
example 中的代码可以参考,但是不可运行,因为需要保证包名以及签名文件和你申请各个平台id所填写信息保持一致
已下载
0