友盟分享

友盟分享

模块名称

  • umengShare

模块引入

  • Weex

const umengShare = app.requireModule("umengShare");

  • H5

let umengShare = requireModuleJs('umengShare');

模块方法

  • initKey (iOSJson, androidJson)
    • 友盟和第三方平台的授权码

      入参说明:iOSJson :iOS的授权key,json格式字符串,格式如下:

{
    "UMKey": "友盟key",
    "WeiXinID": "微信ID",
    "WeiXinKey": "微信授权key",
    "QQID": "QQid",
    "QQKey": "QQ授权key",
    "SINAID": "新浪id",
    "SINAKey": "新浪授权key",
    "SINAUrl": "http://sns.whalecloud.com"
}

androidJson :android的授权key,json格式字符串,格式内容与iOSJson格式相同

  • shareText (shareContent,share_media,callBack)

    • 分享文本

      入参说明:shareContent:分享文本内容;

      share_media 分享平台
      SMS 短信
      SINA 新浪微博
      QZONE QQ空间
      QQ QQ好友
      WEIXIN 微信好友
      WEIXIN_CIRCLE 微信朋友圈
      WEIXIN_FAVORITE 微信收藏
      回调返回结果为json字符串
      成功返回字段:
      status : success
      msg : 分享成功
      失败返回字段:
      status : fail
      errMsg : 分享失败
  • shareTextShow (shareContent,share_media,callBack)

    • 分享文本(使用友盟自带弹窗展示)

      入参说明:shareContent:分享文本内容; share_media:分享平台,多个平台”,”隔开,如: “SMS,SINA,QZONE,QQ,WEIXIN,WEIXIN_CIRCLE,WEIXIN_FAVORITE”

      回调返回结果为json字符串 成功返回字段: status : success msg : 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareImg (ref,share_media,callBack)

    • 分享页面截图图片**(仅Weex)**

      入参说明:ref:weex页面所需生成图片的ref对象字符串; share_media:分享平台(详情参考shareText)

      回调返回结果为json字符串 成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareImgShow (ref,share_media,callBack)

    • 分享页面截图图片(使用友盟自带弹窗展示)(仅Weex)

      入参说明:ref:weex页面所需生成图片的ref对象字符串; share_media:分享平台,多个平台”,”隔开,如: “SMS,SINA,QZONE,QQ,WEIXIN,WEIXIN_CIRCLE,WEIXIN_FAVORITE”

      回调返回结果为json字符串 成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareImgData (img64,share_media,callBack)

    • 分享图片

      入参说明:img64:分享图片的base64字符串; share_media:分享平台(详情参考shareText)

      回调返回结果为json字符串 成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareImgDataShow (img64,share_media,callBack)

    • 分享图片(使用友盟自带弹窗展示)

      入参说明:img64:分享图片的base64字符串; share_media:分享平台,多个平台”,”隔开,如: “SMS,SINA,QZONE,QQ,WEIXIN,WEIXIN_CIRCLE,WEIXIN_FAVORITE”

      回调返回结果为json字符串 成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareWeb (json,share_media,callBack)

    • 分享链接

      入参说明:json字符串分享内容,格式为: { “title”: “标题”, “content”: “内容”, “url”: “分享链接”, “img64”: “缩略图的base64(不设置缩略图,会使用桌面启动图标作为缩略图)” }; share_media:分享平台(详情参考shareText)

      回调返回结果为json字符串 成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • shareWebShow (json,share_media,callBack)

    • 分享链接(使用友盟自带弹窗展示)

      入参说明:json字符串分享内容,格式为:

      {
          "title": "标题",
          "content": "内容",
          "url": "分享链接",
          "img64": "缩略图的base64(不设置缩略图,会使用桌面启动图标作为缩略图)"
      }
      

share_media:分享平台,多个平台”,”隔开,如: “SMS,SINA,QZONE,QQ,WEIXIN,WEIXIN_CIRCLE,WEIXIN_FAVORITE”

    回调返回结果为json字符串

成功返回字段: status : success msg: 分享成功 失败返回字段: status : fail errMsg : 分享失败

  • loginWX(callBack)
    • 微信登录

      回调返回结果为json字符

      成功返回字段:

      {
          "status": "success",
          "msg": {
              "name": "名称",
              "gender": "性别",
              "iconurl": "头像"
          }
      }
      

      失败返回字段:

      {
          "status": "fail",
          "errMsg": "授权失败或取消"
      }
      

Android调用友盟分享注意事项

Key申请网站:

QQ回调配置

  • 在AndroidManifest.xml的application节点中添加以下内容:
<activity
    android:name="com.tencent.tauth.AuthActivity"
    android:launchMode="singleTask"
    android:noHistory="true">
    <intent-filter>
        <action android:name="android.intent.action.VIEW" />
        <category android:name="android.intent.category.DEFAULT" />
        <category android:name="android.intent.category.BROWSABLE" />
        <data android:scheme="tencent100424468" />
    </intent-filter>
</activity>

scheme的格式为tencent+(QQ开发者平台申请的ID),如tencent123456789

签名文件配置

  • 在app的build.gradle文件中配置签名 如:
android{
        signingConfigs {
            debug {
                storeFile file('debug.keystore')
                storePassword "android"
                keyAlias "androiddebugkey"
                keyPassword "android"
            }
        }

        buildTypes {
          debug {
                signingConfig signingConfigs. debug
                   }
        }
}

使用在线依赖需在工程的build.gradle中配置友盟的仓库

iOS调用友盟分享注意事项:

需要在应用层配置跳转应用的schemes
https://developer.umeng.com/docs/66632/detail/66825#h3--url-scheme

还需要在应用层配置白名单
https://developer.umeng.com/docs/66632/detail/66825-h3--sso-