任何人请帮助我如何将FBSDKLoginManager代码转换为swift编程在此提前感谢我在Objective-C中附加代码
- (IBAction)btnFacebookPressed:(id)sender {
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
login.loginBehavior = FBSDKLoginBehaviorBrowser;
[login logInWithReadPermissions:@[@"email"] handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
{
if (error)
{
// Process error
}
else if (result.isCancelled)
{
// Handle cancellations
}
else
{
if ([result.grantedPermissions containsObject:@"email"])
{
NSLog(@"result is:%@",result);
[self fetchUserInfo];
[login logOut]; // Only If you don't want to save the session for current app
}
}
}];
}
Run Code Online (Sandbox Code Playgroud)
我的观点控制器代码是:
class ViewController: UIViewController, FBSDKLoginButtonDelegate {
let facebookReadPermissions = ["public_profile", "email", "user_friends"]
override func viewDidLoad() { …Run Code Online (Sandbox Code Playgroud) 嗨,我正在使用http POST数据和图像,当wifi /互联网连接可用时,它运作良好.但是当关闭移动数据/ wifi时,它显示了一些问题如下:
error=Optional(Error Domain=NSURLErrorDomain Code=-1009 "The Internet connection appears to be offline." UserInfo={NSErrorFailingURLStringKey=http://moneymonkey.tokiiyo.com/api/policy, _kCFStreamErrorCodeKey=8, NSErrorFailingURLKey=http://moneymonkey.tokiiyo.com/api/policy, NSLocalizedDescription=The Internet connection appears to be offline., _kCFStreamErrorDomainKey=12, NSUnderlyingError=0x16ef25f0 {Error Domain=kCFErrorDomainCFNetwork Code=-1009 "(null)" UserInfo={_kCFStreamErrorDomainKey=12, _kCFStreamErrorCodeKey=8}}})
Run Code Online (Sandbox Code Playgroud)
我用HTTP post方法的代码如下:
func barButtonItemClicked(barButtonItem: UIBarButtonItem)
{
let myUrl = NSURL(string: "http://moneymonkey.tokiiyo.com/api/policy");
let typeItem: InsuranceType = InsuranceManager.sharedInstance.TypeArray[0]
//let typeItem = InsuranceManager.sharedInstance
let compItem = InsuranceManager.sharedInstance
let request = NSMutableURLRequest(URL:myUrl!);
request.HTTPMethod = "POST";
let param = [
"api_key" : "AiK58j67",
"api_secret" : "a#9rJkmbOea90-",
"phone" : "\(mobile)",
"policy_type" : "\(typeItem.name)",
"company" …Run Code Online (Sandbox Code Playgroud)