热门标签 | HotTags
当前位置:  开发笔记 > Android > 正文

Android微信分享与QQ分享功能

微信分享与QQ分享功能现在都挺常见的,可以根据一些第三方社会化分功能快速实现,不过多多少少都不怎么纯净,最好都是自己看官方文档来实现就最好了~一、微信分享微信分享功能需要先在微信开放平

微信分享与QQ分享功能现在都挺常见的,可以根据一些第三方社会化分功能快速实现,不过多多少少都不怎么纯净,最好都是自己看官方文档来实现就最好了~

一、微信分享

微信分享功能需要先在微信开放平台注册应用并获取APP ID,就可以获得微信提供的基本接口了

100, output);
if (needRecycle) {
bmp.recycle();
}
byte[] result = output.toByteArray();
try {
output.close();
} catch (Exception e) {
e.printStackTrace();
}
return result;
}

}

微信分享及收藏目前支持文字、图片、音乐、视频、网页共五种类型,可以分享至微信好友会话、朋友圈或添加到微信收藏

分享或收藏的目标场景,通过修改scene场景值实现。
发送到聊天界面——WXSceneSession
发送到朋友圈——WXSceneTimeline
添加到微信收藏——WXSceneFavorite

当中
onResp(BaseResp resp)用于分享后回调
实现IWXAPIEventHandler接口,微信发送的请求将回调到onReq方法,发送到微信请求的响应结果将回调到onResp方法
bmpToByteArray(final Bitmap bmp, final boolean needRecycle)用于解析图片
注意,在这里我使用到的分享的本地图片是R.drawable.ninja,微信对图片大小有限制,我测试时因为图片太大所以一直分享不成功,最后使用了这张9kb大小的图片才成功

此外,微信文档中声明需要为WXEntryActivity声明exported属性

<activity
android:name=".wxapi.WXEntryActivity"
android:exported="true" />

这样,微信分享功能就完成了

);
params.putString(QQShare.SHARE_TO_QQ_APP_NAME, "HiTips");
params.putInt(QQShare.SHARE_TO_QQ_EXT_INT, QQShare.SHARE_TO_QQ_FLAG_QZONE_AUTO_OPEN);
mTencent.shareToQQ(this, params, this);
}

@Override
public void onComplete(Object o) {
Toast.makeText(this, o.toString(), Toast.LENGTH_LONG).show();
}

@Override
public void onError(UiError uiError) {
Toast.makeText(this, uiError.errorMessage + "--" + uiError.errorCode + "---" + uiError.errorDetail, Toast.LENGTH_LONG).show();
}

@Override
public void onCancel() {
Toast.makeText(this, "取消", Toast.LENGTH_SHORT).show();
}


@Override
protected void onActivityResult(int requestCode, int resultCode, Intent data) {
if (mTencent != null) {
Tencent.onActivityResultData(requestCode, resultCode, data, this);
}
super.onActivityResult(requestCode, resultCode, data);
}
}

代码比较简单,思路比较容易理解

这里写图片描述

不过这里有个问题一直解决不了,可以分享到QQ空间,也可以分享到QQ收藏,就是无法发送给QQ好友,研究了很久一直无法解决,知道原因的童鞋麻烦指点下=_=

实例代码我上传到GitHub上了,https://github.com/initobject/WeiXin_QQ_Share


推荐阅读
author-avatar
单纯的猪猪zhu
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有