gpt4 book ai didi

ios - Facebook SDK IOS xcode

转载 作者:可可西里 更新时间:2023-11-01 04:07:23 24 4
gpt4 key购买 nike

大家好,我正在使用 Xcode 制作一个 iOS 应用程序。我想实现 Facebook 登录并获取用户名和 facebookid 并将其发送到 webview 链接,这可能吗?

第一个问题是,即使按照此链接中的 Facebook 指南进行操作也是如此:https://developers.facebook.com/docs/ios/getting-started我不能让 Facebook 登录运行,iOS 模拟器启动但它以以下输出消息结束:

2015-04-21 19:51:20.069 DONAT[3899:96245] +[FBSDKButton defaultIcon]: unrecognized selector sent to class 0x103800908
2015-04-21 19:51:20.073 DONAT[3899:96245] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '+[FBSDKButton defaultIcon]: unrecognized selector sent to class 0x103800908'
*** First throw call stack:
(
0 CoreFoundation 0x00000001040e9f35 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x0000000103d82bb7 objc_exception_throw + 45
2 CoreFoundation 0x00000001040f0f4d +[NSObject(NSObject) doesNotRecognizeSelector:] + 205
3 CoreFoundation 0x000000010404927c ___forwarding___ + 988
4 CoreFoundation 0x0000000104048e18 _CF_forwarding_prep_0 + 120
5 DONAT 0x00000001037b6207 -[FBSDKButton configureButton] + 47
6 DONAT 0x00000001037b5509 -[FBSDKButton awakeFromNib] + 73
7 UIKit 0x00000001049dee75 -[UINib instantiateWithOwner:options:] + 2010
8 UIKit 0x000000010483df98 -[UIViewController _loadViewFromNibNamed:bundle:] + 242
9 UIKit 0x000000010483e588 -[UIViewController loadView] + 109
10 UIKit 0x000000010483e7f9 -[UIViewController loadViewIfRequired] + 75
11 UIKit 0x000000010483ec8e -[UIViewController view] + 27
12 UIKit 0x000000010475dca9 -[UIWindow addRootViewControllerViewIfPossible] + 58
13 UIKit 0x000000010475e041 -[UIWindow _setHidden:forced:] + 247
14 UIKit 0x000000010476a72c -[UIWindow makeKeyAndVisible] + 42
15 UIKit 0x0000000104715061 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 2628
16 UIKit 0x0000000104717d2c -[UIApplication _runWithMainScene:transitionContext:completion:] + 1350
17 UIKit 0x0000000104716bf2 -[UIApplication workspaceDidEndTransaction:] + 179
18 FrontBoardServices 0x0000000107bc42a3 __31-[FBSSerialQueue performAsync:]_block_invoke + 16
19 CoreFoundation 0x000000010401f53c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
20 CoreFoundation 0x0000000104015285 __CFRunLoopDoBlocks + 341
21 CoreFoundation 0x0000000104015045 __CFRunLoopRun + 2389
22 CoreFoundation 0x0000000104014486 CFRunLoopRunSpecific + 470
23 UIKit 0x0000000104716669 -[UIApplication _run] + 413
24 UIKit 0x0000000104719420 UIApplicationMain + 1282
25 DONAT 0x000000010378d743 main + 115
26 libdyld.dylib 0x00000001068bc145 start + 1
27 ??? 0x0000000000000001 0x0 + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
(lldb)

这是我的应用委托(delegate).h

#import <UIKit/UIKit.h>



@interface AppDelegate : UIResponder <UIApplicationDelegate>

@property (strong, nonatomic) UIWindow *window;


@end

这是我的应用委托(delegate).m

#import "AppDelegate.h"
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <FBSDKLoginKit/FBSDKLoginKit.h>




@interface AppDelegate ()

@end

@implementation AppDelegate


- (BOOL)application:(UIApplication *)application
didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
// Override point for customization after application launch.
[FBSDKLoginButton class];
return YES;
} //AGGIUNTO DA FB DEVELPER

- (void)applicationWillResignActive:(UIApplication *)application {

}

- (void)applicationDidEnterBackground:(UIApplication *)application {

}

- (void)applicationWillEnterForeground:(UIApplication *)application {

}

- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp]; //AGGIUNTO DA FACEBOOK DEVELOPER GUIDE
}

- (void)applicationWillTerminate:(UIApplication *)application {
}

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
}//AGGIUNTO DA fbdeveloper


@end

在我的 Main.storyboard 中,我有一个名为 Login 的 View Controller 及其相关的 Login.h 和 Login.m 以及使用 FBSDKButton 类告诉 Facebook 的 View

编辑

登录正常,但登录后我无法显示另一个 View Controller

- (void)loginViewFetchedUserInfo:(FBLoginView *)loginView
user:(id<FBGraphUser>)user {

NSString * storyboardName = @"dashBoardViewController";
UIStoryboard *storyboard = [UIStoryboard storyboardWithName:storyboardName bundle: nil];
UIViewController * vc = [storyboard instantiateViewControllerWithIdentifier:@"dashBoardViewController"];
[self presentViewController:vc animated:YES completion:nil];
}

现在这是我的方法, View Controller 有一个 Storyboard id = dashBoardViewController 但它仍然不起作用

最佳答案

这可能与您的问题不太相关,但至少是相关的。虽然 Facebook 的说明说将按钮的类设置为 FBSDKButton,但这不起作用并且会像您上面描述的那样崩溃。将按钮的类设置为 FBSDKLoginButton 似乎可行。

关于ios - Facebook SDK IOS xcode,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29779821/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com