如何在Android上快速集成微信和QQ的分享(Share)能力?

简介: 目前微信和QQ已经成为App分享的主要平台,大部分开发者都会首选集成这两个平台,除了可以选择直接继承官方的的SDK外,目前市面上有不少第三方的集成商,帮助开发者打包好了一键分享的SDK能力,如:极光,友盟+,Mobtech等,这里主要以友盟+集成为例,快速实现在Android上集成两个平台的分享能力。

目前微信和QQ已经成为App分享的主要平台,大部分开发者都会首选集成这两个平台,除了可以选择直接继承官方的的SDK外,目前市面上有不少第三方的集成商,帮助开发者打包好了一键分享的SDK能力,如:极光,友盟+,Mobtech等,这里主要以友盟+集成为例,快速实现在Android上集成两个平台的分享能力。

第一步:注册友盟+账号并获取一个Appkey

这一步基本是各个平台的必要流程,在友盟+官网注册一个账号后,

选择新建Appkey ,填写必要的信息和平台,这里选择安卓

创建成果后,就可以拿到我们的Appkey信息,一般是一个常字符串

第二步:下载SDK

选择要集成的平台,我们当前选微信和QQ

下载完成后,解压会拿到这么几个文件:

将main文件夹以及platform(选择微信和QQ)文件下,对应的资源文件和jar放入你的工程

第三步:代码集成

  1. 添加回调

微信需要添加回调的Activity,在包名目录下创建wxapi文件夹,新建一个名为WXEntryActivity的activity继承WXCallbackActivity。

QQ不需要添加Activity,但需要在使用QQ分享或者授权的Activity中,添加如下代码

@Override

protected void onActivityResult(int requestCode, int resultCode, Intent data) {

super.onActivityResult(requestCode, resultCode, data);

UMShareAPI.get(this).onActivityResult(requestCode, resultCode, data);

}

  1. 配置Android Manifest XML

微信:

android:name=".wxapi.WXEntryActivity"

android:configChanges="keyboardHidden|orientation|screenSize"

android:exported="true"

android:theme="@android:style/Theme.Translucent.NoTitleBar" />

QQ:注意这里的scheme="tencent100424468",需要替换成你自己在腾讯开放平台申请的QQKey值

android:name="com.tencent.tauth.AuthActivity"

android:launchMode="singleTask"

android:noHistory="true" >

android:name="com.tencent.connect.common.AssistActivity"

android:theme="@android:style/Theme.Translucent.NoTitleBar"

android:configChanges="orientation|keyboardHidden|screenSize"/>

  1. 在AndroidManifest中添加权限

  1. 初始化

初始化需要在您的Application中调用我们的初始化接口,这里的这个5a12384aa40fa3551f0001d1 需要替换成我们刚才自己申请的那个Appkey

@Override

public void onCreate() {

super.onCreate();

UMConfigure.init(this,"5a12384aa40fa3551f0001d1"

,"umeng",UMConfigure.DEVICE_TYPE_PHONE,"");//58edcfeb310c93091c000be2 5965ee00734be40b580001a0

}

接着在application里配置微信开放平台申请的key和security

PlatformConfig.setWeixin("wxdc1e388c3822c80b", "3baf1193c85774b3fd9d18447d76cab0");

到这里我们就已经完成了集成步骤,接下来就可以设置分享的样式和内容了。

  1. 设置分享面板

可以用SDK自带的分享样式面板,也可以自己定义面板,如下是使用自带面板:

new ShareAction(MainActivity.this).withText("hello").setDisplayList(SHARE_MEDIA.SINA,SHARE_MEDIA.QQ,SHARE_MEDIA.WEIXIN)

.setCallback(umShareListener).open();

不带面板

new ShareAction(MainActivity.this)

.setPlatform(SHARE_MEDIA.QQ)//传入平台

.withText("hello")//分享内容

.setCallback(umShareListener)//回调监听器

.share();

  1. 设置分享消息类型

下面以分享链接为例:

UMWeb web = new UMWeb(Defaultcontent.url);

web.setTitle("This is music title");//标题

web.setThumb(thumb); //缩略图

web.setDescription("my description");//描述

然后调用将这个参数设置到ShareAction中:

new ShareAction(ShareActivity.this)

.withMedia(web)

.share();

到此我们的分享功能就集成完成了,其他平台或形式,大同小异。

若有收获,就点个赞吧

相关文章
|
5月前
|
Java Android开发 C++
Android Studio JNI 使用模板:c/cpp源文件的集成编译,快速上手
本文提供了一个Android Studio中JNI使用的模板,包括创建C/C++源文件、编辑CMakeLists.txt、编写JNI接口代码、配置build.gradle以及编译生成.so库的详细步骤,以帮助开发者快速上手Android平台的JNI开发和编译过程。
420 1
|
1月前
|
监控 算法 测试技术
即时通讯技术文集(第45期):微信、QQ技术精华合集(Part2) [共14篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第45 期。
43 3
|
2月前
|
存储 编解码 监控
即时通讯技术文集(第44期):微信、QQ技术精华合集(Part1) [共14篇]
为了更好地分类阅读 52im.net 总计1000多篇精编文章,我将在每周三推送新的一期技术文集,本次是第44 期。
34 2
|
3月前
|
Java 程序员 API
Android|集成 slf4j + logback 作为日志框架
做个简单改造,统一 Android APP 和 Java 后端项目打印日志的体验。
169 1
|
5月前
|
小程序 开发者
微信开发者工具如何集成SVN、同时解决集成SVN无效果的问题
这篇文章介绍了如何在微信开发者工具中集成SVN版本控制系统,并提供了解决集成后无效果问题的方法。
微信开发者工具如何集成SVN、同时解决集成SVN无效果的问题
QQ,微信 消息轰炸
QQ,微信 消息轰炸
|
4月前
|
API
电脑上控制所有软件,比如说微信自动发消息,QQ
电脑上控制所有软件,比如说微信自动发消息,QQ
|
5月前
|
存储 人工智能 API
阿里云百炼应用实践系列-10分钟在企业微信中集成一个 AI 助手
在阿里云平台上,您只需十分钟,无需任何编码,即可在企业微信上为您的组织集成一个具备大模型能力的AI助手。此助手可24小时响应用户咨询,解答各类问题,尤其擅长处理私域问题,从而成为您企业的专属助手,有效提升用户体验及业务竞争力。
|
5月前
|
开发工具 Android开发
|
4月前
|
图形学 iOS开发 Android开发
从Unity开发到移动平台制胜攻略:全面解析iOS与Android应用发布流程,助你轻松掌握跨平台发布技巧,打造爆款手游不是梦——性能优化、广告集成与内购设置全包含
【8月更文挑战第31天】本书详细介绍了如何在Unity中设置项目以适应移动设备,涵盖性能优化、集成广告及内购功能等关键步骤。通过具体示例和代码片段,指导读者完成iOS和Android应用的打包与发布,确保应用顺利上线并获得成功。无论是性能调整还是平台特定的操作,本书均提供了全面的解决方案。
183 0

热门文章

最新文章