rss читать приложение для iphone / ipad - PullRequest
6 голосов
/ 19 декабря 2011

У меня ошибка при чтении файлов XML для моего приложения для iPhone. У меня есть новая функция в приложении для iPhone, которая читает мой канал RSS. Все выглядит хорошо, но у меня есть эта проблема:

Ошибка при загрузке rss. Пожалуйста, проверьте ваше интернет-соединение

Вот мой код:

- (BOOL) readRSS {
    NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
    [UIApplication sharedApplication].networkActivityIndicatorVisible = YES;
    [[NSURLCache sharedURLCache] setMemoryCapacity:0];
    [[NSURLCache sharedURLCache] setDiskCapacity:0];
    BOOL success = NO;
    NSXMLParser *parser = nil;
    NSURL *url = [NSURL URLWithString:[NSString stringWithFormat:@"http://rss.domain.com/%@.xml", self.currentPage]];
    parser = [[NSXMLParser alloc] initWithContentsOfURL:url];
    [parser setDelegate:self];
    [parser setShouldProcessNamespaces:NO];
    [parser setShouldReportNamespacePrefixes:NO];
    [parser setShouldResolveExternalEntities:NO];
    success = [parser parse];
    [parser release];
    [pool drain];
    return success;
}

Тогда у меня есть этот код:

- (void) cleartbl:(NSInteger)type {
    [[[self rssParser] rssItems] removeAllObjects];
    [_tableView reloadData];
    if(type == 1) {
        UIAlertView *alert = [[UIAlertView alloc] 
                          initWithTitle:@"RSS Feed" 
                          message:@"Error while loading rss. Please check your Internet connection."
                          delegate:nil 
                          cancelButtonTitle:@"OK" 
                          otherButtonTitles: nil];
        [alert show];   
        [alert release];
    }

Тогда я назначу:

if([elementName isEqualToString:@"title"]){
    self.currentItem.title = self.currentItemValue;
}

В чем моя проблема, я что-то упустил?

1 Ответ

12 голосов
/ 19 декабря 2011

Приведенный код выглядит хорошо для меня, что я сделал бы в первую очередь, чтобы проверить, является ли ваш RSS действительным. Я думаю, что у вас есть проблема RSS здесь. Вы можете использовать Проверка RSS , чтобы убедиться, что все выглядит хорошо.

Я бы порекомендовал дезинфицировать ваш RSS, сделайте его очень простым, если вы хотите отображать новости или статьи, использовать буквы и цифры в тексте и использовать оптимизированные для SEO URL.

Это упростит загрузку данных из вашего приложения и позволит избежать ошибок, таких как специальные символы.

Попробуйте начать с простого RSS с одной записью, и вы увидите, есть ли в вашем коде ошибки.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...