【Android】友盟社会化分享
2016-07-23 10:49
387 查看
Android应用程序想使用微信、微信朋友圈、QQ或者QQ空间分享都比较常见,但是配置非常繁琐,就算是使用友盟也一样。
需要的基本信息:包名+MD5签名
获得AppID以供使用。吐槽一下,这里的应用签名是指MD5签名,那特么的倒是写清楚啊,QQ和百度地图是要求SHA1签名,QQ和新浪微博要求的是MD5签名,这可真是无聊。
需要的基本信息:包名+sha1签名
获得APP ID以及APP KEY以供使用。这里不得不吐槽一下,申请QQ认证的时候,apk的下载地址是必须填写的,但是还没有完成QQ分享集成的话,应用如何提交应用市场?反过来,不提交应用市场如何获得下载地址?所以,这就是个逗比。
需要的基本信息:包名+MD5签名
获得APP ID以及App Secret以供使用。吐槽:呵呵
其他可以参照具体文档
一、申请微信开放平台
申请地址:https://open.weixin.qq.com需要的基本信息:包名+MD5签名
获得AppID以供使用。吐槽一下,这里的应用签名是指MD5签名,那特么的倒是写清楚啊,QQ和百度地图是要求SHA1签名,QQ和新浪微博要求的是MD5签名,这可真是无聊。
二、申请QQ开放平台
申请地址:http://connect.qq.com/需要的基本信息:包名+sha1签名
获得APP ID以及APP KEY以供使用。这里不得不吐槽一下,申请QQ认证的时候,apk的下载地址是必须填写的,但是还没有完成QQ分享集成的话,应用如何提交应用市场?反过来,不提交应用市场如何获得下载地址?所以,这就是个逗比。
三、申请新浪微博开放平台
申请地址:http://open.weibo.com/需要的基本信息:包名+MD5签名
获得APP ID以及App Secret以供使用。吐槽:呵呵
友盟网站设置
社会化分享-》设置-》自定义配置Androidmanifest.xml文件设置
<activity android:name="com.tencent.tauth.AuthActivity" android:launchMode="singleTask" android:noHistory="true" > <intent-filter> <action android:name="android.intent.action.VIEW" /> <category android:name="android.intent.category.DEFAULT" /> <category android:name="android.intent.category.BROWSABLE" /> <!-- xxxxxx,如果你使用的公用账号,则不需要修改;否则修改成你在QQ开放平台申请的 APP ID --> <data android:scheme="tencent刚刚获得的QQ appId" /> </intent-filter> </activity>
分享给微信好友
MSocialService mUMSocialService = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL); mUMSocialService.getConfig().supportWXPlatform(act, weixinAppId, contentUrl); WeiXinShareContent media = new WeiXinShareContent(new UMImage(getActivity(), drawableId)); media.setTitle(titleString); media.setShareContent(contentString); media.setTargetUrl(targetUrl); mUMSocialService.setShareMedia(media); mUMSocialService.postShare(getSelfContext(), SHARE_MEDIA.WEIXIN, new SnsPostListener() { @Override public void onStart() { } @Override public void onComplete(SHARE_MEDIA platform, int eCode, SocializeEntity entity) { } });
分享到朋友圈
UMSocialService mUMSocialService = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL); mUMSocialService.getConfig().supportWXPlatform(act, weixinAppId, contentUrl); mUMSocialService.getConfig().supportWXCirclePlatform(act, weixinAppId, contentUrl); CircleShareContent media = new CircleShareContent(new UMImage(getActivity(), drawableId)); media.setTitle(titleString); media.setShareContent(contentString); media.setTargetUrl(targetUrl); mUMSocialService.setShareMedia(media); mUMSocialService.postShare(getSelfContext(), SHARE_MEDIA.WEIXIN_CIRCLE, new SnsPostListener() { @Override public void onStart() { } @Override public void onComplete(SHARE_MEDIA platform, int eCode, SocializeEntity entity) { } });
分享给QQ好友
UMSocialService mUMSocialService = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL); mUMSocialService.getConfig().supportQQPlatform(act, QQAppId, QQAppKey, contentUrl); QQShareContent qqShareContent = new QQShareContent(); qqShareContent.setShareContent(contentString); qqShareContent.setTitle(titleString); qqShareContent.setTargetUrl(targetUrl); mUMSocialService.setShareMedia(qqShareContent); mUMSocialService.postShare(getSelfContext(), SHARE_MEDIA.QQ, new SnsPostListener() { @Override public void onStart() { } @Override public void onComplete(SHARE_MEDIA platform, int eCode, SocializeEntity entity) { } });
分享到QQ空间
UMSocialService mUMSocialService = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL); mUMSocialService.getConfig().supportQQPlatform(act, QQAppId, QQAppKey, contentUrl); QZoneShareContent qZoneShareContent = new QZoneShareContent(); qZoneShareContent.setShareContent(contentString); qZoneShareContent.setTitle(titleString); qZoneShareContent.setTargetUrl(targetUrl); mUMSocialService.setShareMedia(qZoneShareContent); mUMSocialService.postShare(getSelfContext(), SHARE_MEDIA.QZONE, new SnsPostListener() { @Override public void onStart() { } @Override public void onComplete(SHARE_MEDIA platform, int eCode, SocializeEntity entity) { } });
分享到新浪微博
UMSocialService mUMSocialService = UMServiceFactory.getUMSocialService("com.umeng.share", RequestType.SOCIAL); mUMSocialService.setShareContent(contentString); mUMSocialService.postShare(getSelfContext(), SHARE_MEDIA.SINA, new SnsPostListener() { @Override public void onStart() { } @Override public void onComplete(SHARE_MEDIA platform, int eCode, SocializeEntity entity) { } });
上面是老版本的友盟SDK用法,新的版本有更新。
主要是代码设置支持平台的代码有改变,比如:// 添加微信平台 UMWXHandler wxHandler = new UMWXHandler(getActivity(),appId,appSecret); wxHandler.addToSocialSDK(); // 添加微信朋友圈 UMWXHandler wxCircleHandler = new UMWXHandler(getActivity(),appId,appSecret); wxCircleHandler.setToCircle(true); wxCircleHandler.addToSocialSDK();
其他可以参照具体文档
相关文章推荐
- Android studio 多环境打包和多渠道打包
- Android Studio插件ADB WIFI(让调试飞起)
- android学习之ListView如何使用
- Android教育项目Bug总结
- Android 添加、移除和判断 桌面快捷方式图标
- Android通讯录RecyclerView实现--带挤压效果
- android——悬浮窗控件Toast
- Android listview与adapter用法
- Android listview与adapter用法
- Android中自定义样式与View的构造函数中的第三个参数defStyle的意义
- android中怎么在View构造的attrs中拿到android给的属性以及attrs属性介绍
- android 主题切换(换肤功能)
- android加入图片命名规则
- 安卓旧项目使用Small框架插件化改造踩坑记
- Android M CarrierService框架
- Android Studio导入项目gradle报错,解决方案
- Android--日期对话框和时间对话框
- Service服务
- Android 嵌套Fragment的使用实例代码
- Android startActivityForResult函数