2011-01-01 34 views
16

Tôi đang xây dựng một trò chơi trên iPhone hỗ trợ Trung tâm trò chơi (GC). Khi ứng dụng khởi chạy, tôi cố gắng xác thực trình phát nội bộ ...Phát triển iOS: Sự cố lạ khi xác thực người dùng Trung tâm trò chơi

if([GKLocalPlayer localPlayer].authenticated == NO) 
    { 
     [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error) 
     { 
      [self callDelegateOnMainThread: @selector(processGameCenterAuth:) withArg: NULL error: error]; 
     }]; 
    } 

Mọi thứ dường như hoạt động tốt. Nếu người dùng đã không đăng nhập vào GC khi ứng dụng khởi chạy, ứng dụng sẽ hiển thị một hộp thoại cho họ ba lựa chọn ...

  1. Đăng nhập vào tài khoản hiện
  2. Tạo một tài khoản
  3. Hủy

Đây là hành vi mong muốn, nhưng khi tôi đang thử nghiệm, tôi đã nhấp vào tùy chọn "Hủy" và bây giờ quá trình xác thực bị lỗi mỗi lần với lỗi sau "Thao tác đã yêu cầu đã bị hủy". Ngay cả khi tôi xóa các ứng dụng và cài đặt lại nó, nó vẫn còn lỗi và hộp thoại đó không bao giờ bật lên ngay bây giờ.

Có ai biết tại sao điều này đang xảy ra hoặc cách tôi có thể khắc phục sự cố không?

Cảm ơn trước sự thông thái của bạn!

Trả lời

32

Hóa ra đó là hành vi không có giấy tờ của Apple.

Sau 3 lần người dùng nhấn hủy liên tiếp, anh ấy phải truy cập ứng dụng Trung tâm trò chơi và kết nối từ đó.

Tìm hình.

+1

Cảm ơn bạn đã đăng bài này! Tôi đã gặp phải vấn đề tương tự. –

+0

Rất nhiều thông báo lỗi hữu ích. – typeoneerror

+3

Giải pháp nào nếu bạn cần đăng nhập vào tài khoản sandbox và ứng dụng Trung tâm trò chơi không cung cấp cho bạn tùy chọn đó? Tôi có thể ở trong tình huống tương tự, ngoại trừ tôi thấy lỗi 'nil' khi cố gắng xác thực trong ứng dụng. Không có hộp thoại đăng nhập phương thức, không có gì. –

Các vấn đề liên quan