栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 移动开发 > Android

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

Android 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

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

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

下载新浪微博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接口,接收分享后微博返回的数据,代码如下所示:


  @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中,则分享的图片为缩略图,看不清楚。


  private ImageObject getImageObj() {
    ImageObject imageObject = new ImageObject();
    BitmapDrawable bitmapDrawable = (BitmapDrawable) mImageView.getDrawable();
    //设置缩略图。 注意:最终压缩过的缩略图大小不得超过 32kb。
    
    Bitmap bitmap = BitmapFactory.decodeResource(getResources(), R.drawable.ic_logo);
    imageObject.setImageObject(bitmap);
    return imageObject;
  }

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

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

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/155280.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号