2012-02-07 47 views
1

我正在使用GDataServiceGoogleCalendar從公開網址匿名獲取GDataFeedCalendarEvent。但我絕對無法從任何產生的GDataEntryCalendarEvent對象中檢索時間。我可以閱讀標題,所以我相信這個API可以工作,但不知何故時代陣列會丟失某處。爲什麼我的GDataEntryCalendarEvent中沒有任何時間?

該服務實例如下:

- (GDataServiceGoogleCalendar *)calendarService { 

    static GDataServiceGoogleCalendar* service = nil; 

    if (!service) { 
     service = [[GDataServiceGoogleCalendar alloc] init]; 

     [service setShouldCacheResponseData:YES]; 
     [service setServiceShouldFollowNextLinks:YES]; 
     [service setIsServiceRetryEnabled:YES]; 
    } 

    return service; 
} 

這是檢索數據的代碼:

for (GDataEntryCalendarEvent *event in eventEntries) { 
    NSString *title = [[event title] stringValue]; 

    GDataDateTime *startTime = nil; 
    GDataDateTime *endTime = nil; 

    NSArray *times = [event times]; 
    GDataWhen *when = nil; 
    if ([times count] > 0) { 
     when = [times objectAtIndex:0]; 
     startTime = [when startTime]; 
     endTime = [when endTime]; 
    } 
} 

什麼是錯我的代碼或我的聯繫方式?示例應用程序成功檢索日期。

回答

0

Google API甚至需要使用實際標識的用戶才能訪問公共數據。 因此,只有在使用經過身份驗證的用戶帳戶之前,才能授予對大多數API調用的訪問權限。

0

我很抱歉,但我無法回答你的代碼有什麼問題。我有問題,該事件發生之日,那是我的解決方案,爲我的偉大工程:

希望它會幫助你:

  NSArray *events = [feed entries]; 

     [events enumerateObjectsUsingBlock:^(id obj, NSUInteger idx, BOOL *stop) { 
       GDataEntryEvent *entry = [events objectAtIndex:idx]; 

      for (NSUInteger i=0; i<[[entry times] count]; i++) { 
      NSDate * startDate = [[[[entry times] objectAtIndex:i] startTime] date]; 
      NSDate * endDate = [[[[entry times] objectAtIndex:i] endTime] date]; 
     } 
     }]; 

有可能是一個更好的辦法,但這個工程。

+0

你是否匿名檢索數據(沒有Auth)?我懷疑這可能是我的問題的原因。 – Coyote 2012-02-07 21:17:53

+0

你能解釋你的問題嗎? – shannoga 2012-02-08 05:44:03

相關問題