android app分享功能,Android APP集成新浪微博分享功能
发布日期:2021-10-21 18:59:11 浏览次数:2 分类:技术文章

本文共 2591 字,大约阅读时间需要 8 分钟。

本文为大家分享了新浪微博分享功能集成,供大家参考,具体内容如下

直接导入weibosdkcore.jar:适用于只需要授权、分享、网络请求框架功能的项目。

无论使用哪一种方式,都需要先将demo中lib目录下的对应的全部 libweibosdkcore.so文件目录拷贝到你的目标工程中Demo。在app?>src?>main中新建文件夹jniLibs,将demo 中lib目录下的对应的全部 libweibosdkcore.so文件目录拷贝到其中,不要改变任何文件和文件夹位置。

分享时参考demo中WBShareMainActivity,这里是分享的入口,主要代码如下:

// 创建微博 SDK 接口实例

mWeiboShareAPI = WeiboShareSDK.createWeiboAPI(mContext, SysConstants.SHARE_WEIBO_APP_ID);

// 注册到新浪微博

mWeiboShareAPI.registerApp();

Intent i = new Intent(mContext, WBShareActivity.class);

i.putExtra(WBShareActivity.KEY_SHARE_TYPE, WBShareActivity.SHARE_ALL_IN_ONE);

i.putExtra(WBShareActivity.IMAGE_URL, imgUrl);

mContext.startActivity(i);

分享之前需要将APP_KEY等参数替换成自己应用的参数,参数可以参考Demo里的Constants类。

在进行微博分享前,需要在AndroidManifest.xml中,在需要接收消息的Activity(唤起微博主程序的类)里声明对应的Action:ACTION_SDK_REQ_ACTIVITY,如下所示:

android:name="com.sina.weibo.sdk.demo.WBShareActivity"

android:configChanges="keyboardHidden|orientation"

android:screenOrientation="portrait" >

android:name="com.sina.weibo.sdk.component.WeiboSdkBrowser"

android:configChanges="keyboardHidden|orientation"

android:windowSoftInputMode="adjustResize"

android:exported="false" >

分享的功能主要是由WBShareActivity实现的,包括文本、图片、网页、音乐、视频、声音,具体代码参考Demo。

WBShareActivity里实现了IWeiboHandler#Response接口,接收分享后微博返回的数据,代码如下所示:

/**

* 接收微客户端博请求的数据。

* 当微博客户端唤起当前应用并进行分享时,该方法被调用。

*

* @param baseRequest 微博请求数据对象

* @see {@link IWeiboShareAPI#handleWeiboRequest}

*/

@Override

public void onResponse(BaseResponse baseResp) {

if(baseResp!= null){

switch (baseResp.errCode) {

case WBConstants.ErrorCode.ERR_OK:

Toast.makeText(this, R.string.weibosdk_demo_toast_share_success, Toast.LENGTH_LONG).show();

break;

case WBConstants.ErrorCode.ERR_CANCEL:

Toast.makeText(this, R.string.weibosdk_demo_toast_share_canceled, Toast.LENGTH_LONG).show();

break;

case WBConstants.ErrorCode.ERR_FAIL:

Toast.makeText(this,

getString(R.string.weibosdk_demo_toast_share_failed) + "Error Message: " + baseResp.errMsg,

Toast.LENGTH_LONG).show();

break;

}

}

}

需要注意的是,在WBShareActivity分享图片的方法getImageObj中,注释中说所设置的缩略图,并非是分享时的图片。我们只需要将需要分享的图片放到imageObject里即可,没有32K的大小限制。如果我们将缩略图放在imageObject中,则分享的图片为缩略图,看不清楚。

/**

* 创建图片消息对象。

*

* @return 图片消息对象。

*/

private ImageObject getImageObj() {

ImageObject imageObject = new ImageObject();

BitmapDrawable bitmapDrawable = (BitmapDrawable) mImageView.getDrawable();

//设置缩略图。 注意:最终压缩过的缩略图大小不得超过 32kb。

/*上面的注释是demo里的,但是其实这里并不必要设置缩略图,只需要将我们分享的图片直接设置到imageObjet里即可*/

Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_logo);

imageObject.setImageObject(bitmap);

return imageObject;

}

其他事项可参考新浪微博sdk自带的文档。

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

转载地址:https://blog.csdn.net/weixin_29391349/article/details/117309417 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:barrier linux,Linux Barrier I/O
下一篇:c语言实现学籍管理系统,C语言实现学籍管理系统.doc

发表评论

最新留言

做的很好,不错不错
[***.243.131.199]2024年03月14日 10时01分52秒

关于作者

    喝酒易醉,品茶养心,人生如梦,品茶悟道,何以解忧?唯有杜康!
-- 愿君每日到此一游!

推荐文章

spring java配置_Spring Java配置要点 2019-04-21
共享内存 java_java - Java客户端-服务器编程:客户端之间的共享内存 - 堆栈内存溢出... 2019-04-21
java布局管理器空布局_Java图形化界面设计——布局管理器之null布局(空布局)... 2019-04-21
java gas station_LeetCode – 774. Minimize Max Distance to Gas Station 2019-04-21
java项目无法加载到tomcat_eclipse+tomcat添加项目进来无法启动tomcat 2019-04-21
后缀树建立 java_实用算法实现-第 8 篇后缀树和后缀数组 [2 最长公共子串] 2019-04-21
java网络编程期末试题_java网络编程面试题【其中一小部分】 2019-04-21
estore java_estore2 - WEB源码|JSP源码/Java|源代码 - 源码中国 2019-04-21
java如何做表单校验_微信小程序实现表单校验功能 2019-04-21
matlab dwt2(),MATLAB小波变换指令及其功能介绍(超级有用) 2019-04-21
php sequelize,egg.js整合数据库ORM框架Sequelize 2019-04-21
php同时打开2个数据库,thinkphp3.2同时连接两个数据库的简单方法 2019-04-21
centos 开发php扩展,centos 安装php扩展redis 2019-04-21
php+跑buth,php 中函数获取可变参数的方法, 这个语法有点像 golang 语言中的 2019-04-21
cms 单点登录 php,Yii2 中实现单点登录的方法 2019-04-21
oracle自己运行,创建Oracle自动执行Job 2019-04-21
oracle报错00020,oracle启动 ORA-00020: maximum number of processes (%s) exceeded错误 2019-04-21
chmod 赋权所有_chmod 权限 命令详细用法 2019-04-21
html代码翻译_[译]您知道 HTML 的键盘标签吗? 2019-04-21
html抽奖代码_JavaScript高手之路:封装抽奖效果 2019-04-21