Commit c0140de4 by suolong

提交facebook bug处理

parent 5209902e
...@@ -124,6 +124,20 @@ import FBSDKLoginKit ...@@ -124,6 +124,20 @@ import FBSDKLoginKit
var shareSuccessHandle: (() -> Void)? var shareSuccessHandle: (() -> Void)?
var shareFailureHandle: ((_ isCancel: Bool) -> Void)? var shareFailureHandle: ((_ isCancel: Bool) -> Void)?
/// 判断当前设备是否安装了 Facebook App
private func fus_hasFacebookAppInstalled() -> Bool {
guard let facebookURL = URL(string: "fbapi://") else {
return false
}
return UIApplication.shared.canOpenURL(facebookURL)
}
/// 优先使用 Facebook 原生分享,未安装 Facebook 时直接降级到浏览器分享
private func fus_showFacebookDialog(_ dialog: ShareDialog) {
dialog.mode = fus_hasFacebookAppInstalled() ? .native : .browser
dialog.show()
}
/// 分享 /// 分享
public func fus_facebookShare(type: FUSFacebookHelperShareType, controller: UIViewController?, contentURL: String, image: UIImage?, imageUrl: String?, success: (() -> Void)?, failure: ((_ isCancel: Bool) -> Void)?){ public func fus_facebookShare(type: FUSFacebookHelperShareType, controller: UIViewController?, contentURL: String, image: UIImage?, imageUrl: String?, success: (() -> Void)?, failure: ((_ isCancel: Bool) -> Void)?){
...@@ -144,7 +158,7 @@ import FBSDKLoginKit ...@@ -144,7 +158,7 @@ import FBSDKLoginKit
shareContent.ref = "FusiYa" shareContent.ref = "FusiYa"
let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self) let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self)
dialog.show() fus_showFacebookDialog(dialog)
} }
else if type == .image, else if type == .image,
let image = image{ let image = image{
...@@ -154,7 +168,7 @@ import FBSDKLoginKit ...@@ -154,7 +168,7 @@ import FBSDKLoginKit
shareContent.photos = [photo] shareContent.photos = [photo]
let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self) let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self)
dialog.show() fus_showFacebookDialog(dialog)
} }
else { else {
// web // web
...@@ -164,7 +178,7 @@ import FBSDKLoginKit ...@@ -164,7 +178,7 @@ import FBSDKLoginKit
shareContent.ref = "FusiYa" shareContent.ref = "FusiYa"
let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self) let dialog = ShareDialog(viewController: vc, content: shareContent, delegate: self)
dialog.show() fus_showFacebookDialog(dialog)
} }
} }
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment