重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
这篇文章主要介绍Android APP集成新浪微博分享功能的示例分析,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!
十载的仓山网站建设经验,针对设计、前端、开发、售后、文案、推广等六对一服务,响应快,48小时及时工作处理。成都全网营销的优势是能够根据用户设备显示端的尺寸不同,自动调整仓山建站的显示方式,使网站能够适用不同显示终端,在浏览器中调整网站的宽度,无论在任何一种浏览器上浏览网站,都能展现优雅布局与设计,从而大程度地提升浏览体验。成都创新互联从事“仓山网站设计”,“仓山网站推广”以来,每个客户项目都认真落实执行。
具体内容如下
下载新浪微博Android SDK
直接导入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,如下所示:
分享的功能主要是由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自带的文档。
以上是“Android APP集成新浪微博分享功能的示例分析”这篇文章的所有内容,感谢各位的阅读!希望分享的内容对大家有帮助,更多相关知识,欢迎关注创新互联行业资讯频道!