ErosPluginSocialShare 1.3.6

ErosPluginSocialShare 1.3.6

3491449lxy 维护。



 
依赖项
UMCShare/Social/ReducedWeChat>= 0
UMCShare/Social/Facebook>= 0
UMCShare/Social/Twitter>= 0
YYModel>= 0
WeexPluginLoader>= 0
MSAL>= 0
 

  • luke

Eros-Plugin-iOS-SocialShare

功能简介:

  1. 基于友盟ShareSDK实现:微信分享(分享到朋友圈、微信好友),微信授权登录/登出,Twitter,Facebook分享和授权登录/登出;
  2. 基于Google官方的授权登录/登出及刷新Token方法;
  3. 基于Microsoft官方的授权登录/登出。

在使用登录分享之前,还需要进行一些配置

  1. 首先请到友盟平台注册App获取AppKey;
  2. iOS平台请参考友盟的教程配置SSO白名单、及 URL Scheme等;
  3. Google登录集成请参考教程流程
  4. Microsoft登录集成请参考教程
  5. 分享的页面面板可根据产品自定义样式自行编写。

集成方式

  1. 打开iOS目录工程目录/platforms/ios/WeexEros,编辑Podfile文件,添加ErosPluginSocialShare组件的引用,添加代码如下,注意版本号改为最新的版本【查看下面Change Log】
def common
    ...忽略其他库的引用
    # 在这里添加引用 ErosPluginSocialShare
    pod 'ErosPluginSocialShare'
end

target 'WeexEros' do
    common
end
  1. 在终端中cd到此目录下执行 pod update,等待命令执行完毕,重新运行项目,如果没有报错则说明ErosPluginSocialShare组件集成成功;

使用

引用Module

var socialShare = weex.requireModule('SJSocialShare')

API

  • 初始化友盟SDK initUM('appkey')

在使用之前,请先调用此方法初始化友盟SDK

socialShare.initUM('友盟平台申请的appkey')
  • 初始化微信SDK initWechat(info)

在使用分享到微信平台功能,或者微信登录功能前,需要调用此方法来初始化微信平台;

socialShare.initWechat({
appKey: 'appkey',        // 微信开发平台申请的appkey
appSecret: 'appSecret',  // appKey对应的appSecret,
redirectURL: '回调页面'   // 授权回调页面
})
  • 初始化Facebook SDK initFacebook(info)

在使用分享到Facebook平台功能,或者Facebook登录功能前,需要调用此方法来初始化Facebook平台;

socialShare.initFacebook({
appKey: 'appkey',        // Facebook开发平台申请的appkey
appSecret: 'appSecret',  // appKey对应的appSecret,
redirectURL: '回调页面'   // 授权回调页面
})
  • 初始化Twitter SDK initTwitter(info)

在使用分享到Twitter平台功能,或者Twitter登录功能前,需要调用此方法来初始化Twitter平台;

socialShare.initTwitter({
appKey: 'appkey',        // Twitter开发平台申请的appkey
appSecret: 'appSecret',  // appKey对应的appSecret,
redirectURL: '回调页面'   // 授权回调页面
})
  • 初始化Google SDK initGoogle('clientID')

在使用Google登录功能前,需要调用此方法来初始化Google平台;

socialShare.initGoogle('Google平台申请的clientID')
  • 初始化Microsoft SDK initMicrosoft('clientID')

在使用Microsoft登录功能前,需要调用此方法来初始化Microsoft平台;

socialShare.initMicrosoft('Microsoft平台申请的clientID')
  • 分享:shareWithInfo(info,successCallback,failedCallback)
socialShare.shareWithInfo({ /* 注意:请传对应分享类型参数,没有的不传;shareType,platform为必传 */
title:'',                   // 分享的标题
content:'',                 // 分享的文字内容
url: '',                    // 分享对应的URL地址,如h5、音乐链接、视频链接、小程序的链接
thumImage: '',              // 分享类型的缩略图url
image: '',                  // 分享的图片url
path: '',                   // 分享小程序用到的页面路径
shareType: 'Webpage',       // *分享的类型 (BMShareType对应描述)
platform: 'WechatSession'   // *分享平台 朋友圈/好友(BMSharePlatformType对应描述,传字符串:@"WechatSession", @"Facebook", @"Google", @"Twitter")
},function(resData){     
// 成功回调
},function(resData){
// 失败回调
})

// 平台
platform:[
WechatSession,              // 分享至微信好友及微信登录,支持分享类型:[@"文字", @"图片", @"图文", @"音乐链接", @"视频", @"网页链接", @"微信小程序"]
WechatTimeLine,             // 分享至朋友圈,支持分享类型同上
Facebook,                   // 分享至Facebook及授权登录,支持分享类型:[@"图片", @"图文", @"本地视频", @"网页链接"]
Google,                     // Google授权登录 暂不支持分享
Twitter,                    // 分享至Twitter及授权登录,支持分享类型:[@"文字", @"图片", @"图文", @"音乐链接", @"视频", @"网页链接"]   
Microsoft                   // Microsoft授权登录 暂不支持分享
]

// 分享类型
shareType:[
Text,       // 文字
Image,      // 图片
TextImage,  // 图文
Webpage,    // 网页
Music,      // 音乐
Video,      // 视频
MiniProgram // 小程序
]
  • 授权登录:loginWithPlatformType('platformType',successCallback,failedCallback)
socialShare.loginWithPlatformType(
'平台类型',  // BMSharePlatformType对应描述,传字符串:@"WechatSession", @"Facebook", @"Google", @"Twitter", @"Microsoft"
function(resData){     
// 成功回调
},function(resData){
// 失败回调
})
  • 取消授权[登出]:logoutWithPlatformType('platformType',successCallback,failedCallback)
socialShare.logoutWithPlatformType(
'平台类型',  // BMSharePlatformType对应描述,传字符串:@"WechatSession", @"Facebook", @"Google", @"Twitter", @"Microsoft"
function(resData){     
// 成功回调
},function(resData){
// 失败回调
})
  • 刷新登录Token:refreshTokenWithPlatformType('platformType',successCallback,failedCallback)
socialShare.refreshTokenWithPlatformType(
'平台类型',  // BMSharePlatformType对应描述,传字符串:@"Google",暂时只支持Google
function(resData){     
// 成功回调
},function(resData){
// 失败回调
})

变更日志

iOS 1.3.6
[最新版]

  1. podspec 文件优化配置。

iOS 1.3.4

  1. 集成 Microsoft 第三方登录登出。

iOS 1.3.3

  1. 集成基于友盟的 Twitter 第三方登录及分享。

iOS 1.3.2

  1. 更新友盟 UMCShare 至 6.9.6;
  2. 更新 Eros 基础库 ErosPluginBaseLibrary 至 1.3.6。

iOS 1.3.1

  1. 优化:集成 Google 刷新登录 Token 方法。

iOS 1.3.0

  1. 优化:单独集成 Google 登入登出管理。

iOS 1.2.9

  1. 优化:Google 登录成功后返回数据调整。