2013-04-15 35 views
9

Tôi đang tạo một ứng dụng dựa trên Khuôn khổ xã hội iOS6 ... nó hoạt động tốt nhưng bây giờ sau vài tháng có lỗi lạ.Mã truy cập Facebook đã hết hạn - Khung công tác xã hội iOS 6

My NSLog dữ liệu JSON Facebook để nhập khẩu một NSDictionary là:

profiledictionary: { 
error = { 
code = 190; 
"error_subcode" = 463; 
message = "Error validating access token: Session has expired at unix time 1365610034. The current unix time is 1366032783."; 
type = OAuthException; 

Dường thẻ truy cập của tôi đã hết hạn, nhưng không phải là iOS6 Khung xã hội phải chăm sóc nó tự động?

Bất kỳ ý tưởng nào về cách tôi có thể giải quyết và cũng tránh các sự cố trong tương lai như vậy, vì vậy tôi có thể xuất bản ứng dụng thực một cách an toàn?

Trả lời

13

cuối cùng đã nhận nó ... là cần thiết để kiểm tra xem NSDictionary có một đối tượng có tên là "lỗi" (trong trường hợp này Facebook lỗi về thẻ đã hết hạn), và nếu như vậy gọi một phương thức để làm mới ACAccount:

if([self.profileDictionary objectForKey:@"error"]!=nil) 
{ 
[self attemptRenewCredentials]; 
} 

-(void)attemptRenewCredentials{ 
    [self.accountStore renewCredentialsForAccount:(ACAccount *)self.facebookAccount completion:^(ACAccountCredentialRenewResult renewResult, NSError *error){ 
     if(!error) 
     { 
      switch (renewResult) { 
       case ACAccountCredentialRenewResultRenewed: 
        NSLog(@"Good to go"); 
        [self getFacebookAccount]; 
        break; 
       case ACAccountCredentialRenewResultRejected: 
        NSLog(@"User declined permission"); 
        break; 
       case ACAccountCredentialRenewResultFailed: 
        NSLog(@"non-user-initiated cancel, you may attempt to retry"); 
        break; 
       default: 
        break; 
      } 

     } 
     else{ 
      //handle error 
      NSLog(@"error from renew credentials%@",error); 
     } 
    }]; 
} 
+1

Tôi đã bình chọn câu hỏi và câu trả lời của bạn hôm nay. Bạn vừa mới cứu làn da của tôi !!! Bạn tìm thấy cái này ở đâu trên trái đất? Cám ơn rất nhiều. – Douglas

+0

vui lòng trợ giúp;) –

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