![](/img/trans.png)
[英]Receiver '**' for class message is a forward declaration Error. Swift Static Library use in Objective-C
[英]Objective-C : “receiver FBSDKAccessToken for class message is a forward declaration”
它向我顯示了此錯誤。 我所做的就是下載帶有CocoaPods的Facebook SDK,但我正嘗試登錄,但不能因為這個錯誤=(
FBSDKAccessToken和FBSDKGraphRequest與此錯誤相同...
這是我的代碼:
#import "TestesViewController.h"
#import "FBSDKCoreKit.h"
#import "FBSDKLoginKit.h"
@implementation TestesViewController
-(void) viewDidLoad {
[super viewDidLoad];
FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc]init];
loginButton.readPermissions = @[@"public_profile", @"email", @"user_friends"];
loginButton.center = self.view.center;
[self.view addSubview:loginButton];
}
- (IBAction)loadButton:(id)sender {
if ([FBSDKAccessToken currentAccessToken]) {
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:nil]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error) {
NSLog(@"fetched user:%@", result);
}
}];
}
}
@end
是否改變
#import "FBSDKLoginKit.h"
#import "FBSDKCoreKit.h"
至
#import <FBSDKLoginKit/FBSDKLoginKit.h>
#import <FBSDKCoreKit/FBSDKCoreKit.h>
解決問題? 如果不是這樣,則您的項目/工作區中的標題搜索路徑可能存在問題。
在這里,您使用的是自定義loadButton而不是FBSDKLogin按鈕,因此,我認為為了使用自定義FB登錄按鈕,您的參數不能為nil,需要提供參數。 此外,您需要先使用登錄管理器登錄用戶才能獲得訪問令牌,如果用戶從未登錄過,訪問令牌將為零。一旦獲得訪問令牌,則需要將其存儲在某個位置(可能是用戶默認設置),因此我將其刪除現在嘗試將代碼更改為:
FBSDKLoginManager *loginManager = [[FBSDKLoginManager alloc] init];
[loginManager logInWithReadPermissions:@[@"email",@"user_birthday",@"public_profile"] fromViewController:nil handler:^(FBSDKLoginManagerLoginResult *result, NSError *error) {
// if ([FBSDKAccessToken currentAccessToken]) {
[[[FBSDKGraphRequest alloc] initWithGraphPath:@"me" parameters:@{@"fields":@"first_name, last_name, picture.type(large),email"}]
startWithCompletionHandler:^(FBSDKGraphRequestConnection *connection, id result, NSError *error) {
if (!error) {
NSLog(@"fetched user:%@", result);
}
}];
//}
}];
將此代碼插入您的加載按鈕部分。 這對我有用。 這可能對您有用。 如果您確實要創建自定義FB登錄按鈕,請考慮“ 自定義FB”按鈕
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.