Ios Facebook Connect即使在按下OK时也会触发isCancelled事件
我正在使用Ios Facebook Connect即使在按下OK时也会触发isCancelled事件,ios,objective-c,facebook,Ios,Objective C,Facebook,我正在使用React native构建一个小应用程序(我认为这与此无关) 该应用程序最终进入Facebook请求授权 但是当我点击ok时,我被发送到一个isCancelled回调 下面是“FacebookLoginManager.m”: #导入 #导入“FacebookLoginManager.h” #导入“FBSDKCoreKit/FBSDKCoreKit.h” #导入“FBSDKLoginKit/FBSDKLoginKit.h” @FacebookLoginManager的实现 RCT_导出
React native
构建一个小应用程序(我认为这与此无关)
该应用程序最终进入Facebook请求授权
但是当我点击ok时,我被发送到一个isCancelled
回调
下面是“FacebookLoginManager.m”:
#导入
#导入“FacebookLoginManager.h”
#导入“FBSDKCoreKit/FBSDKCoreKit.h”
#导入“FBSDKLoginKit/FBSDKLoginKit.h”
@FacebookLoginManager的实现
RCT_导出_模块();
RCT_导出_方法(newSession:(rctreponseSenderBlock)回调){
FBSDKLoginManager*login=[[FBSDKLoginManager alloc]init];
[login logInWithReadPermissions:@[@“public_profile”]处理程序:^(FBSDKLoginManagerLoginResult*结果,NSError*错误){
如果(错误){
回调(@[@“Error”,[NSNull]];
}否则如果(结果被取消){
回调(@[@“已取消”,[NSNull null]];//我在单击“确定”后到达这里!
}否则{
FBSDKAccessToken*token=result.token;
NSString*tokenString=token.tokenString;
NSString*userId=token.userId;
NSDictionary*credentials=@{@“token”:tokenString,@“userId”:userId};
回调(@[[NSNull],凭据]);
}
}];
};
@结束
发现我的
AppDelegate.m
配置错误:
在这里,它是在修复之后
#import "AppDelegate.h"
#import "FBSDKCoreKit/FBSDKCoreKit.h"
#import "RCTRootView.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSURL *jsCodeLocation;
jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"];
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
moduleName:@"TourChampIOs"
launchOptions:launchOptions];
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
UIViewController *rootViewController = [[UIViewController alloc] init];
rootViewController.view = rootView;
self.window.rootViewController = rootViewController;
[self.window makeKeyAndVisible];
return [[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
}
@end
希望这能帮助别人
#import "AppDelegate.h"
#import "FBSDKCoreKit/FBSDKCoreKit.h"
#import "RCTRootView.h"
@implementation AppDelegate
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
NSURL *jsCodeLocation;
jsCodeLocation = [NSURL URLWithString:@"http://localhost:8081/index.ios.bundle"];
RCTRootView *rootView = [[RCTRootView alloc] initWithBundleURL:jsCodeLocation
moduleName:@"TourChampIOs"
launchOptions:launchOptions];
self.window = [[UIWindow alloc] initWithFrame:[UIScreen mainScreen].bounds];
UIViewController *rootViewController = [[UIViewController alloc] init];
rootViewController.view = rootView;
self.window.rootViewController = rootViewController;
[self.window makeKeyAndVisible];
return [[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
}
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
}
@end