Tôi đang cố gắng nhận quyền đăng bài từ người dùng bằng SDK Facebook trên iOS.Yêu cầu FBSessionNewPublishPermissions không thành công trước khi phản hồi
Tôi đang gọi mã bên dưới trong phương thức được gọi nếu ứng dụng không có quyền xuất bản bắt buộc để đăng lên tường người dùng facebook.
// No permissions found in session, ask for it
[FBSession.activeSession requestNewPublishPermissions: [NSArray arrayWithObject:@"publish_actions"]
defaultAudience: FBSessionDefaultAudienceEveryone
completionHandler: ^(FBSession *session, NSError *error)
{
if(!error)
{
// Do something
}
}];
Lần đầu tiên tôi gọi mã này nó đưa người dùng đến các trang cho phép, và trước khi nó thậm chí chuyển sang Safari trên thiết bị khối được gọi và thông báo lỗi này sẽ được trả về
Error Domain=com.facebook.sdk Code=2 "The operation couldn’t be completed. (com.facebook.sdk error 2.)" UserInfo=0xc426410 {com.facebook.sdk:ErrorLoginFailedReason=com.facebook.sdk:ErrorReauthorizeFailedReasonUserCancelled,
Sau đó, ứng dụng sẽ tiếp tục hiển thị trang quyền trong safari nơi người dùng chọn ok. Sau đó, nó quay trở lại ứng dụng. Quyền đã không được thiết lập tại thời điểm này ngay cả tho người dùng đã được trình bày với các trang quyền và được chấp nhận.
Khi cố gắng đăng lần thứ hai, người dùng sẽ chuyển đến trang quyền trong safari và phương thức requestNewPublishPermissions không thành công ngay lập tức. Người dùng chọn ok và sau đó mọi thứ hoạt động như mong đợi.
Vì vậy, nó chỉ là lần đầu tiên gọi yêu cầuNewPublishPermissions rằng nó không ngay lập tức trả lại lỗi ErrorReauthorizeFailedReasonUserCancelled.
Điều này xảy ra trong trình mô phỏng và trên thiết bị.
Bất kỳ ý tưởng nào có thể gây ra điều này?
Ước gì tôi có thể thêm nhiều hơn một lần nâng cấp. Cảm ơn rất nhiều! – kpower
@Tiddly u đã cứu ngày của tôi. – Nick
Rất tiếc, cảm ơn bạn rất nhiều nhưng 'dispatch_get_current_queue' hiện không còn được dùng nữa. Tôi nghĩ bạn nên cập nhật câu trả lời của bạn. – Hemang