Android APP集成新浪微博分享功能

家电维修 2023-07-16 19:17www.caominkang.com家电维修技术

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

下载新浪微博Android SDK

直接导入eibosdkcore.jar适用于只需要授权、分享、网络请求框架功能的项目。
无论使用哪一种方式,都需要先将demo中lib目录下的对应的全部 libeibosdkcore.so文件目录拷贝到你的目标工程中Demo。在app–>src–>main中新建文件夹jniLibs,将demo 中lib目录下的对应的全部 libeibosdkcore.so文件目录拷贝到其中,不要改变任何文件和文件夹位置。

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

// 创建微博 SDK 接口实例
 mWeiboShareAPI = WeiboShareSDK.createWeiboAPI(mContext, SysConstants.SHARE_WEIBO_APP_ID);

 // 注册到新浪微博
 mWeiboShareAPI.registerApp();
 Intent i = ne 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(唤起微博主程序的类)里声明对应的ActionACTION_SDK_REQ_ACTIVITY,如下所示


  
   
   



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

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


  @Override
  public void onResponse(baseResponse baseResp) {
 if(baseResp!= null){
   sitch (baseResp.errCode) {
   case WBConstants.ErrorCode.ERR_OK:
 Toast.makeText(this, R.string.eibosdk_demo_toast_share_suess, Toast.LENGTH_LONG).sho();
 break;
   case WBConstants.ErrorCode.ERR_CANCEL:
 Toast.makeText(this, R.string.eibosdk_demo_toast_share_canceled, Toast.LENGTH_LONG).sho();
 break;
   case WBConstants.ErrorCode.ERR_FAIL:
 Toast.makeText(this, 
  getString(R.string.eibosdk_demo_toast_share_failed) + "Error Message: " + baseResp.errMsg, 
  Toast.LENGTH_LONG).sho();
 break;
   }
 }
  }

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


  private ImageObject getImageObj() {
 ImageObject imageObject = ne ImageObject();
 BitmapDraable bitmapDraable = (BitmapDraable) mImageVie.getDraable();
 //设置缩略图。 注意最终压缩过的缩略图大小不得超过 32kb。
 
 Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.draable.ic_logo);
 imageObject.setImageObject(bitmap);
 return imageObject;
  }

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

Copyright © 2016-2025 www.jianfeikang.com 建飞家电维修 版权所有 Power by