iOS8中的NSXMLParser崩溃
以下是我的iOS应用程序的代码片段:iOS8中的NSXMLParser崩溃,xml,crash,ios8,base64,nsxmlparser,Xml,Crash,Ios8,Base64,Nsxmlparser,以下是我的iOS应用程序的代码片段: - (void)viewDidLoad { [super viewDidLoad]; NSURL *xmlURL = [NSURL URLWithString:@"http://www.example.com/image.xml"]; xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL]; [xmlParser setDelegate:self]; [xmlParser parse];
- (void)viewDidLoad {
[super viewDidLoad];
NSURL *xmlURL = [NSURL URLWithString:@"http://www.example.com/image.xml"];
xmlParser = [[NSXMLParser alloc] initWithContentsOfURL:xmlURL];
[xmlParser setDelegate:self];
[xmlParser parse];
[self loadData];
}
- (void)parser:(NSXMLParser *)parser didStartElement:(NSString *)elementName
namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName
attributes:(NSDictionary *)attributeDict{
currentElement = [elementName copy];
if ([currentElement isEqualToString:@"food"]) {
[self saveData:[attributeDict objectForKey:@"att"]];
}
}
- (void)parserDidStartDocument:(NSXMLParser *)parser {
NSLog(@"Start XML");
}
- (void)parser:(NSXMLParser *)parser parseErrorOccurred:(NSError *)parseError {
NSLog(@"XML ERRROR");
}
- (void)parser:(NSXMLParser *)parser didEndElement:(NSString *)elementName namespaceURI:(NSString *)namespaceURI qualifiedName:(NSString *)qName{
NSLog(@"[%@] Emlement Finish", elementName);
}
- (void)parser:(NSXMLParser *)parser foundCharacters:(NSString *)string{
NSLog(@"[%@]Element Found", string);
}
- (void)parserDidEndDocument:(NSXMLParser *)parser {
NSLog(@"XML Finish");
}
该程序在iOS8中的[xmlParser parse]处崩溃,但在iOS7中没有。日志仅显示“启动XML”,程序随后崩溃
XML源由另一个Java服务器程序生成,该程序包含一个XML格式的Base64编码图像。如果XML的大小为300KB或更小,XMLParser不会崩溃
我还尝试了StackOverflow上的所有XMLParser解决方案,但没有成功
提前非常感谢。也要面对这个问题:(