简体   繁体   English

无法在Xcode8上为iOS构建Facebook SDK

[英]Unable to build Facebook SDK for iOS on Xcode8

I'm trying to add Facebook analytics for my first time but getting this error on Objective C project 我正在尝试首次添加Facebook分析,但是在Objective C项目中遇到此错误

use of undeclared identifier 'applicationDidBecomeaAtive" 使用未声明的标识符“ applicationDidBecomeaAtive” 在此处输入图片说明

My steps: 1- copy Bolts.framework and FBSDKCoreKit.framework 我的步骤:1-复制Bolts.framework和FBSDKCoreKit.framework

2- copy to AppDelegate.m 2-复制到AppDelegate.m

#import <FBSDKCoreKit/FBSDKCoreKit.h>

3- but the error in these lines 3-但这些行中的错误

    - (void)applicationDidBecomeActive:(UIApplication *)application {
        [FBSDKAppEvents activateApp];
    }

    - (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
        [[FBSDKApplicationDelegate sharedInstance] application:application
                                 didFinishLaunchingWithOptions:launchOptions];
        return YES;
    }

    - (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
    return [[FBSDKApplicationDelegate sharedInstance] application:application
                                                          openURL:url
                                                sourceApplication:sourceApplication
                                                       annotation:annotation];
}
//
//  AppDelegate.m
//  myappgames
//
//  Created by Vishal on 9/10/15.
//  Copyright (c) 2015 Vishal. All rights reserved.
//

#import "AppDelegate.h"
#import "UIDevice+Res.h"
#import <FBSDKCoreKit/FBSDKCoreKit.h>



@interface AppDelegate ()

@end

@implementation AppDelegate
@synthesize navigationObj;
@synthesize bannerViewAdUnitID,InterstitialAdUnitID;

- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
    self.window = [[UIWindow alloc] initWithFrame:[[UIScreen mainScreen] bounds]];
    [[FBSDKApplicationDelegate sharedInstance] application:application
                             didFinishLaunchingWithOptions:launchOptions];
    //--------Admob Ids---------
    bannerViewAdUnitID = @"ca-app-pub-00000";

    //--------InterstitialAd Ids---------
    InterstitialAdUnitID = @"ca-app-pub-00000000";


    if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPad) {
        self.viewcontroller = [[ViewController alloc] initWithNibName:@"ViewController_IPad" bundle:nil];
        navigationObj = [[UINavigationController alloc]initWithRootViewController:self.viewcontroller];
        self.window.rootViewController = navigationObj;
    } else {
        self.viewcontroller = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
        navigationObj = [[UINavigationController alloc]initWithRootViewController:self.viewcontroller];
        self.window.rootViewController = navigationObj;
    }
    [self.window makeKeyAndVisible];
    return YES;
}



- (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];
}


- (void)applicationWillResignActive:(UIApplication *)application
{
    // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state.
    // Use this method to pause ongoing tasks, disable timers, and throttle down OpenGL ES frame rates. Games should use this method to pause the game.
}

- (void)applicationDidEnterBackground:(UIApplication *)application
{
    // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later.
    // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits.
}

- (void)applicationWillEnterForeground:(UIApplication *)application
{
    // Called as part of the transition from the background to the inactive state; here you can undo many of the changes made on entering the background.
}



- (void)applicationWillTerminate:(UIApplication *)application
{
    // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:.
}

@end

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM