Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/facebook-graph-api/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/regex/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Facebook -(void)请求:(FBRequest*)请求didLoad:(id)未调用结果_Facebook_Facebook Graph Api - Fatal编程技术网

Facebook -(void)请求:(FBRequest*)请求didLoad:(id)未调用结果

Facebook -(void)请求:(FBRequest*)请求didLoad:(id)未调用结果,facebook,facebook-graph-api,Facebook,Facebook Graph Api,为什么这个方法从未调用过?谁能帮我检查代码,我是新手 这是我的*.h文件 @interface LoginViewController : UIViewController <FBSessionDelegate,FBRequestDelegate,FBDialogDelegate> { Facebook *facebook; IBOutlet UITextField *_txt; NSString *facebookUserID; 我知道下面的方法将获得用

为什么这个方法从未调用过?谁能帮我检查代码,我是新手

这是我的*.h文件

@interface LoginViewController : UIViewController <FBSessionDelegate,FBRequestDelegate,FBDialogDelegate> {

    Facebook *facebook;
    IBOutlet UITextField *_txt;
    NSString *facebookUserID;
我知道下面的方法将获得用户ID,但它从未调用

- (void)request:(FBRequest *)request didLoad:(id)result 
{
    NSLog(@"Inside didLoad");     
    if ([result isKindOfClass:[NSArray class]])
    {
        result = [result objectAtIndex:0];
    }
    // When we ask for user infor this will happen.
    if ([result isKindOfClass:[NSDictionary class]])
    {
        //NSDictionary *hash = result;         
        NSLog(@"Name: %@", [result objectForKey:@"name"]);

        self.facebookUserID = [result objectForKey:@"id"];
        NSLog(@"ID: %@", [result objectForKey:@"id"]);
    }
}

您需要实现openURL或handleOpenURL(后者在ios 4.2之前)。它需要在应用程序代理中实现,而不是在视图控制器中实现

看。openURL将导致调用fbDidLogin

- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    NSLog(@"============HANDLE OPEN URL");
    ViewController *v =(ViewController *) vc;
    return [[v facebook] handleOpenURL:url]; 
}
- (BOOL)application:(UIApplication *)application openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication annotation:(id)annotation {
    NSLog(@"============HANDLE OPEN URL");
    ViewController *v =(ViewController *) vc;
    return [[v facebook] handleOpenURL:url]; 
}