友盟分享
我是标题
- 首先要注册友盟账号,邮箱即可。
2.到USshare 立即使用 创建新应用 ,获取appkey.(他没有用到bundleId)
3.直接用cocoapodws 集成:(Podfile文件)
use_frameworks!
target ‘salon’ do
pod "UMengUShare/UI"
pod "UMengUShare/Social/WeChat"
pod "UMengUShare/Social/ReducedQQ"//Reduce 是精简版,我想应该是只是用于分享,估计第三 登录那些的去掉了。
pod "UMengUShare/Social/ReducedSina"
end
这样就可以了,包含了sdk ,ui 分享的平台。
4.涉及到https 图片无法分享的 设置一下这个
UMSocialGlobal.shareInstance().isUsingHttpsWhenShareContent = false//可以用非https的图片
5.预设平台, 分享前设置
UMSocialUIManager.setPreDefinePlatforms(
[NSNumber(integerLiteral:UMSocialPlatformType.wechatSession.rawValue)
,NSNumber(integerLiteral:UMSocialPlatformType.wechatTimeLine.rawValue)
,NSNumber(integerLiteral:UMSocialPlatformType.sina.rawValue)
,NSNumber(integerLiteral:UMSocialPlatformType.QQ.rawValue)
,NSNumber(integerLiteral:UMSocialPlatformType.qzone.rawValue)
])
写在appdelegate 那里好像不行
6.设置http链接图片也可分享,设置分享平台(写在appdelegate)
UMSocialGlobal.shareInstance().isUsingHttpsWhenShareContent = false//可以用非https的图片
UMSocialManager.default().setPlaform(.wechatSession, appKey: AppConfiguration.SDKs.WXKey, appSecret: AppConfiguration.SDKs.WXSecret, redirectURL: AppConfiguration.SDKs.RedirectURL)
UMSocialManager.default().setPlaform(.wechatTimeLine, appKey: AppConfiguration.SDKs.WXKey, appSecret: AppConfiguration.SDKs.WXSecret, redirectURL: AppConfiguration.SDKs.RedirectURL)
UMSocialManager.default().setPlaform(.QQ, appKey: AppConfiguration.SDKs.QQKey, appSecret: nil, redirectURL: AppConfiguration.SDKs.RedirectURL)
UMSocialManager.default().setPlaform(.sina, appKey: AppConfiguration.SDKs.SinaKey, appSecret: AppConfiguration.SDKs.SinaSecret, redirectURL: AppConfiguration.SDKs.RedirectURL)
7.设置白名单,在info.plist 用 sourcecode 方式打开直接张贴 ,(这里只有微信,QQ和微博的分享,需要另行添加)
<key>LSApplicationQueriesSchemes</key>
<array>
<string>wechat</string>
<string>weixin</string>
<string>sinaweibohd</string>
<string>sinaweibo</string>
<string>sinaweibosso</string>
<string>weibosdk</string>
<string>weibosdk2.5</string>
<string>mqqapi</string>
<string>mqq</string>
<string>mqqOpensdkSSoLogin</string>
<string>mqqconnect</string>
<string>mqqopensdkdataline</string>
<string>mqqopensdkgrouptribeshare</string>
<string>mqqopensdkfriend</string>
<string>mqqopensdkapi</string>
<string>mqqopensdkapiV2</string>
<string>mqqopensdkapiV3</string>
<string>mqqopensdkapiV4</string>
<string>mqzoneopensdk</string>
<string>wtloginmqq</string>
<string>wtloginmqq2</string>
<string>mqqwpa</string>
<string>mqzone</string>
<string>mqzonev2</string>
<string>mqzoneshare</string>
<string>wtloginqzone</string>
<string>mqzonewx</string>
<string>mqzoneopensdkapiV2</string>
<string>mqzoneopensdkapi19</string>
<string>mqzoneopensdkapi</string>
<string>mqqbrowser</string>
<string>mttbrowser</string>
</array>
8.分享面板位置可配置
[UMSocialShareUIConfig shareInstance].sharePageGroupViewConfig.sharePageGroupViewPostionType = UMSocialSharePageGroupViewPositionType_Middle;中间显示
- 坑 ,如果分享的平台相应的app 没安装,可能会被拒,需要在预设的时候先判断一下有没有安装
Class: UMSocialManager
/**
- 平台是否安装
- @param platformType 平台类型 @see UMSocialPlatformType
- @return YES 代表安装,NO 代表未安装
- @note 调用前请检查是否配置好平台相关白名单: http://dev.umeng.com/social/ios/quick-integration#1_3
- 在判断QQ空间的App的时候,QQApi判断会出问题
*/
-(BOOL) isInstall:(UMSocialPlatformType)platformType;
10.可分享平台
当前可用的分享平台 UMSocialManager.default().platformTypeArray
纳尼 !我的可分享平台为0! 分享面板啥都没,还是用pod 吧,然后就好了,wtf!
- 分享面板没出来 UMSocialManager.default().umSocialAppkey = AppConfiguration.SDKs.UMShareKey 这个可以没有设定