Nếu chúng tôi gọi openWithBehavior sau cuộc gọi đến closeAndClearTokenInformation, nó gây ra EXC_BAD_ACCESS. Bất kể nó đang sử dụng hộp thoại tích hợp iOS gốc hay một trong những hộp thoại chuyển đổi nhanh.Facebook iOS SDK 3.1 gặp sự cố khi gọi tới FBSession openWithBehavior
Mã của chúng tôi để đăng nhập vào FB, lần đầu tiên thông qua các tác phẩm:
if (![FBSession activeSession]) {
#ifdef FREE_APP
NSString* suffix = @"free";
#else
NSString* suffix = @"paid";
#endif
FBSession *session = [[[FBSession alloc] initWithAppID:@"111111111111111"
permissions:permissions
urlSchemeSuffix:suffix
tokenCacheStrategy:nil] autorelease];
[FBSession setActiveSession:session];
}
else if ([FBSession activeSession].isOpen)
[[FBSession activeSession] close];
[[FBSession activeSession] openWithBehavior:FBSessionLoginBehaviorUseSystemAccountIfPresent
completionHandler:^(FBSession *session, FBSessionState state, NSError *error) {
[self sessionStateChanged:session state:state error:error];
}];
Mã của chúng tôi để đăng xuất, sau đó mã trên thất bại sau khi openWithBehavior:
[[FBSession activeSession] closeAndClearTokenInformation];
tôi ban đầu được sử dụng openActiveSessionWithReadPermissions thay của openWithBehavior, như được quy định trong tài liệu 3.1, không bị lỗi nhưng ứng dụng chuyển đổi từ ứng dụng FB/Safari không hoạt động. Có lẽ vì cần phải có hậu tố? Nếu nó sẽ dễ dàng nhất để sửa lỗi chuyển đổi ứng dụng và quay lại điều đó, vui lòng thông báo.
Cảm ơn.
, tôi đã không nhận đâu và tại sao viết mã này . và tôi đã viết nó trước khi openWithBehaviour vẫn bị rơi trong openWithBehaviour – Heena
Đoạn đầu tiên ở trên là từ lớp facebook đã ném lỗi. Tôi chỉ bao gồm nó để thêm bối cảnh cho những gì đang xảy ra. Tôi đã tiếp tục và thêm mã của mình sau khi thêm kiểm tra cho một phiên hoạt động và đóng mã đó trước khi luôn tạo phiên mới. – leontx