以下代码在第四行引发异常
XmlResourceParser parser = context.getResources().getXml(R.xml.file);
parser.require(XmlPullParser.START_DOCUMENT, null, null);
parser.next();
parser.require(XmlPullParser.START_TAG, null, null);
,在添加调试打印语句后,发现在第一次调用next()
之后,解析器仍处于 START_DOCUMENT 状态。向next()
添加另一个呼叫可解决此问题。根据{{3}}的官方Android参考,这种行为是错误的:
START_DOCUMENT
通知解析器位于文档的开头,并且 什么都没读。只能通过调用来观察此事件类型 第一次调用next(),nextToken或nextTag()之前的getEvent()。