Ich versuche, eine Facebook-Login-Option in meiner App zu implementieren. Ich habe alle Anweisungen auf der Parse-Website und auf der Facebook-Entwickler-Seite befolgt. Ich fügte hinzu, die Rahmenbedingungen, modifiziert, um die plist-Datei und hinzugefügt, um den richtigen Code, aber wenn ich die App starten, bekomme ich diese Ausnahme:Facebook Login Integration in Parse.com App
2015-07-14 17:50:08.939 ########[35815:2144465] -[ParseManager coreManager]: unrecognized selector sent to instance 0x7f9cdadad720
2015-07-14 17:50:08.953 ########[35815:2144465] *** Terminating app due to uncaught exception 'NSInvalidArgumentException', reason: '-[ParseManager coreManager]: unrecognized selector sent to instance 0x7f9cdadad720'
*** First throw call stack:
(
0 CoreFoundation 0x000000010a3cdc65 __exceptionPreprocess + 165
1 libobjc.A.dylib 0x000000010a066bb7 objc_exception_throw + 45
2 CoreFoundation 0x000000010a3d50ad -[NSObject(NSObject) doesNotRecognizeSelector:] + 205
3 CoreFoundation 0x000000010a32b13c ___forwarding___ + 988
4 CoreFoundation 0x000000010a32acd8 _CF_forwarding_prep_0 + 120
5 ######## 0x0000000105c822f0 +[PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:] + 151
6 ######## 0x0000000105954c6c -[SMAppDelegate application:didFinishLaunchingWithOptions:] + 1132
7 UIKit 0x00000001088ef748 -[UIApplication _handleDelegateCallbacksWithOptions:isSuspended:restoreState:] + 240
8 UIKit 0x00000001088f0357 -[UIApplication _callInitializationDelegatesForMainScene:transitionContext:] + 2540
9 UIKit 0x00000001088f319e -[UIApplication _runWithMainScene:transitionContext:completion:] + 1349
10 UIKit 0x00000001088f2095 -[UIApplication workspaceDidEndTransaction:] + 179
11 FrontBoardServices 0x000000010be2b5e5 __31-[FBSSerialQueue performAsync:]_block_invoke_2 + 21
12 CoreFoundation 0x000000010a30141c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 12
13 CoreFoundation 0x000000010a2f7165 __CFRunLoopDoBlocks + 341
14 CoreFoundation 0x000000010a2f6f25 __CFRunLoopRun + 2389
15 CoreFoundation 0x000000010a2f6366 CFRunLoopRunSpecific + 470
16 UIKit 0x00000001088f1b02 -[UIApplication _run] + 413
17 UIKit 0x00000001088f48c0 UIApplicationMain + 1282
18 ######## 0x00000001059c4a9f main + 111
19 libdyld.dylib 0x000000010a918145 start + 1
)
libc++abi.dylib: terminating with uncaught exception of type NSException
Dies sind die Frameworks und Bibliotheken, die ich eigentlich an meinem Projekt haben:
Die komische Sache ist, dass wenn ich ein neues Projekt von Null erstellen, ich überhaupt keine Probleme habe und der Login korrekt funktioniert.
Edit: Ich versuche immer noch, dieses Problem zu lösen. Ich schaffte es die App ohne Fehler zu starten, indem Sie die PFFacebookUtils
Initialisierungscode [PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:launchOptions];
-[PFFacebookUtils initialize];
ändern, aber dann, wenn ich versuche, mit dem Code über eine Schaltfläche um sich einzuloggen [PFFacebookUtils logInInBackgroundWithReadPermissions:nil block:^(PFUser *user, NSError *error) {}
weitere Ausnahme erscheint Terminating app due to uncaught exception 'NSInternalInconsistencyException', reason: 'You must initialize PFFacebookUtils with a call to +initializeFacebookWithApplicationLaunchOptions'
Ich füge den Code ich benutze wie vorgeschlagen:
in meinem AppDelegate.m
#import <FBSDKCoreKit/FBSDKCoreKit.h>
#import <ParseFacebookUtilsV4/PFFacebookUtils.h>
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions{
// PARSE
[Parse setApplicationId: SMParseApplicationId
clientKey: SMParseClientId];
// FACEBOOK
[PFFacebookUtils initializeFacebookWithApplicationLaunchOptions:launchOptions];
[PFAnalytics trackAppOpenedWithLaunchOptions:launchOptions];
//*****
// GOOGLE MAP API
[GMSServices provideAPIKey: SMGoolgeMapApiKey];
//*****
return [[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
}
- (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)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}
Haben Sie Ihre FacebookAppID und FacebookDisplayName sowie die URL-Typen ** korrekt hinzugefügt ** in Ihrem .plist? –
Ja, tat ich. Ich habe es mehr als einmal getan, um sicher zu gehen, dass alles in Ordnung war. – Diego
Ich schlage vor, Sie alle relevanten Code zu Fb anmelden, so dass wir sehen können, was falsch oder fehlt. – SanitLee