Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/opengl/4.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
Ios Facebook SDK 3.0 HelloFaceBook示例生成错误_Ios_Facebook Ios Sdk - Fatal编程技术网

Ios Facebook SDK 3.0 HelloFaceBook示例生成错误

Ios Facebook SDK 3.0 HelloFaceBook示例生成错误,ios,facebook-ios-sdk,Ios,Facebook Ios Sdk,我在编译Facebook SDK 3.0附带的HelloFacebookSample应用程序时遇到问题 首先,我应该说我使用的是Xcode 4.0.2、iOS SDK 4.3和OS X 10.6.8。(我正在努力寻找一种不升级到Lion或Mountain Lion就下载Xcode 4.2的方法,我不愿意这么做。) 当我尝试构建示例项目时,会出现以下构建错误: 1) 程序中出现意外的“@” int main(int argc, char *argv[]) { @autoreleasepoo

我在编译Facebook SDK 3.0附带的HelloFacebookSample应用程序时遇到问题

首先,我应该说我使用的是Xcode 4.0.2、iOS SDK 4.3和OS X 10.6.8。(我正在努力寻找一种不升级到Lion或Mountain Lion就下载Xcode 4.2的方法,我不愿意这么做。)

当我尝试构建示例项目时,会出现以下构建错误:

1) 程序中出现意外的“@”

int main(int argc, char *argv[])
{
    @autoreleasepool {    // error on this line
        return UIApplicationMain(argc, argv, nil, NSStringFromClass([HFAppDelegate class]));
    }
}
2) 预期标识符

- (BOOL)application:(UIApplication *)application 
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
    // attempt to extract a token from the url
    return [FBSession.activeSession handleOpenURL:url];    // error on this line
}

- (void)applicationWillTerminate:(UIApplication *)application {
    // FBSample logic
    // if the app is going away, we close the session object
    [FBSession.activeSession close];                       // error on this line
}
我可以“解决”这些问题(不确定我是否正确解决了它们),但随后会出现以下链接错误:

未找到框架帐户

命令/Developer/Platforms/iPhoneSimulator.platform/Developer/usr/bin/clang失败,退出代码为1


有人能帮我吗?如果我甚至不能构建示例项目,那么我将不会有太多的运气将Facebook集成到我的应用程序中

我不是专家,但我会尽力的

第一个错误是因为您正在使用
@autoreleasepool
。我认为这对于自动发布池来说是非常新的语法。 以前是这样的:

NSAutoreleasePool *pool;
pool = [[NSAutoreleasePool alloc] init];
NSString *string;
string = [[[NSString alloc] init] autorelease]; // NSString or any other allocated objects
                                                // With autorelease tag
/* use the string */
[pool drain];
您应该查看X-code 4.0.2和iOS SDK的项目,以了解其主要功能是如何实现的

我正在查看另一个错误,我相信它与您正在使用的iOS SDK有关。难道不能只更新SDK吗?不更新xcode


如果我能找到什么,我会告诉你我解决了所有问题。该示例似乎无法立即与iOS 4.3或Xcode 4.0.2兼容。以下是我所做的:

1) 计划中的意外@;改为:

int main(int argc, char *argv[])
{
    NSAutoreleasePool *pool = [NSAutoreleasePool new];
    return UIApplicationMain(argc, argv, nil, NSStringFromClass([HFAppDelegate class]));
}
2) 期望标识符;取代

    return [FBSession.activeSession handleOpenURL:url];    // error on this line
...
    [FBSession.activeSession close];                       // error on this line

3) 框架未找到帐户;事实证明它不是必需的,所以我只是从ProjectNavigator中的Frameworks组中删除了这个框架

4) 我忘了在我的原始帖子中说:关键字
strong
未知,所以我将其宏化为
retain
,放在文件FacebookSDK/FacebookSDK.h的顶部,如下所示:

#define strong retain
现在HelloFacebookSample应用程序编译时没有错误或警告,而且运行良好。所有与Facebook的互动都有效


希望这对以后的其他人有帮助!如果它对你有帮助,请投赞成票

你有什么项目吗?转到文件->新建项目。它可以构建吗?嗨,是的,我可以构建我所有的其他项目,所有我在下载Facebook SDK之前构建的项目。我做了广泛的研究,解决了前两个构建错误,只是链接错误仍然是个问题。但是Facebook SDK 3.0说它与iOS 4.0及更高版本兼容,所以我认为构建示例测试不会有任何问题。嗨,谢谢你。实际上我已经解决了构建错误-我只是不明白为什么我必须对示例代码进行任何更改,因为Facebook SDK 3.0说它与iOS 4.0及更高版本兼容,而我现在使用的是4.3!这只是链接错误,这是因为找不到Accounts.framework。有人知道我在哪里能找到吗?我查了一下,它似乎与iOS 5.0配套,那么为什么Facebook SDK 3.0说它与iOS 4.0及更高版本兼容呢?
#define strong retain