Diplomat
1.0.0
Unifique as interfaces de login e compartilhamento de SDKs de terceiros. Atualmente suporta WeChat , QQ e Weibo .
PS: Exceto o Weibo, que suporta OAuth, outros terceiros suportam apenas SSO e precisam instalar o cliente correspondente para utilizá-lo.
Instale via CocoaPods.
pod 'Diplomat'
Instalação seletiva
pod 'Diplomat/Wechat'
pod 'Diplomat/QQ'
Importe o SDK de terceiros que você precisa usar.
#import <Diplomat/WechatProxy.h>
#import <Diplomat/QQProxy.h>
usar
// 在 application:didFinishLaunchingWithOptions: 添加
[[Diplomat sharedInstance ] registerWithConfigurations: @{ kDiplomatTypeWechat : @{ kDiplomatAppIdKey : @" wxd930ea5d5a258f4f " ,
kDiplomatAppSecretKey : @" db426a9829e4b49a0dcac7b4162da6b6 " },
kDiplomatTypeQQ : @{ kDiplomatAppIdKey : @" 222222 " }}];
// 授权登录。
[[Diplomat sharedInstance ] authWithName: thirdPartyName
completed: ^( id result, NSError *error) {
// ...
}];
// 分享。
// Create DTMessage message ...
[[Diplomat sharedInstance ] share: message
name: thirdPartyName
completed: ^( id result, NSError *error) {
// ...
}];
userInfo é usado para transportar informações adicionais.
Seleção de cenários de compartilhamento WeChat:
DTMessage *message = DTMessage()
// ...
message.userInfo = @{ kWechatSceneTypeKey : @(WXSceneTimeline)}
// WXSceneTimeline: 朋友圈(默认)、WXSceneSession: 好友、WXSceneFavorite: 收藏。
Compartilhe no QZone via Safari (obrigado a @hi-guy pela contribuição):
DTMessage *message = DTMessage()
// ...
message.userInfo = @{ kTencentQQSceneTypeKey : @(TencentSceneZone)}
// TencentSceneQQ: 通过 QQ 客户端分享(默认,包含了分享到 QZone 选项),
// TencentSceneZone: 通过 Safari 只分享到 QZone (有 QQ 客户端时不推荐使用)。