Tôi đang nâng cấp từ phiên bản Parse v1.6.4 lên phiên bản mới nhất và tôi cũng đang nâng cấp facebook ios sdk lên v4.7. Vấn đề là sau khi ứng dụng được ủy quyền, nó cho thấy một màn hình trắng trống và nếu tôi nhấp vào "thực hiện", nó đóng safari và trong nhật ký nó cho thấy rằng, người dùng hủy đăng nhập.
Nó hoạt động tốt trước khi nâng cấp lên phiên bản mới.Màn hình trắng trống trên iOS-Facebook sau khi ứng dụng được ủy quyền
plist tôi
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fbxxxxxx</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string><my FacebookAppID></string>
<key>FacebookDisplayName</key>
<string>my appname</string>
trắng niêm yết FB máy chủ
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>facebook.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>fbcdn.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>akamaihd.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
AppDelegate.m
- (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];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
return [[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
}
viewController.m
-(IBAction)facebookLogin:(id)sender
{
FBSDKLoginManager *login = [[FBSDKLoginManager alloc] init];
if ([FBSDKAccessToken currentAccessToken])
{
//Do something
}
else
{
[login logInWithReadPermissions:@[@"email"] fromViewController:nil handler:^(FBSDKLoginManagerLoginResult *result, NSError *error)
{
if (error)
{
NSLog(@"Error");
}
else if (result.isCancelled)
{
NSLog(@"User cancelled login");
}
else
{
NSLog(@"Login Success");
if ([result.grantedPermissions containsObject:@"email"])
{
NSLog(@"result is:%@",result);
}
else
{
NSLog(@"FB email permission error");
}
}
}];
}
}
Dưới đây là một hình ảnh của màn hình.
Tôi đang chạy ứng dụng thử nghiệm này trong thiết bị IPhone 6 của mình.
Cảm ơn bạn! :)
Sửa 1:
Hôm nay, tôi nâng cấp dự án của tôi để SDK v4.8 mới của Facebook và lần này, nó có vẻ như nó làm việc.
Tôi không chắc chắn, những gì tôi đã làm sai tại thời điểm đó nhưng nó làm việc bây giờ cho các thiết bị arm64.
Nhưng khi tôi bật hỗ trợ cho armv7s, nó đem lại cho tôi lỗi này ...
ld: file is universal (4 slices) but does not contain a(n) armv7s slice:
Nó trỏ đến FBSDKLoginKit.framework.
Thiết bị armv7 có được hỗ trợ nữa không?
Có cách nào để loại bỏ lỗi này không?
Cảm ơn bạn! :)
Cảm ơn Dharmesh! Bây giờ tốt hơn nhiều! Bạn đã làm nó như thế nào? Tôi có nghĩa là, bằng cách sử dụng một số trang web lưu trữ hình ảnh hoặc cái gì khác? – Alex
bạn cần danh tiếng để đính kèm hình ảnh. – anhtu
Oh ok :) Cảm ơn bạn, anhtu! – Alex