我一直在2.3操作系统上测试我的Android应用程序,直到最近我在4.1上测试它都完美无缺。我的问题是我从资产文件夹中加载了一些XML,在2.3上所有文件都加载完全正常,但在4.1上它没有加载任何文件(也没有错误)。我的问题是,加载是否与操作系统不同。
这是我的加载代码:
String xmlString = null;
AssetManager am = context.getAssets();
try
{
InputStream is = am.open(path);
int length = is.available();
byte[] data = new byte[length];
is.read(data);
xmlString = new String(data);
}
catch (IOException e1)
{
e1.printStackTrace();
}
return xmlString;
对于xml加载我使用DOM,这是它的一部分:
DocumentBuilderFactory dbf = DocumentBuilderFactory.newInstance();
DocumentBuilder db = dbf.newDocumentBuilder();
String theXML = getXml();
Document doc = db.parse(new InputSource(new ByteArrayInputStream(theXML.getBytes("utf-8"))));
doc.getDocumentElement().normalize();
NodeList nodeListHeadNode = doc.getElementsByTagName(headNode);
for (int i = 0; i < nodeListHeadNode.getLength(); i++)
{
//introduce the nodes into a list
}
项目构建目标是Android 4.2.2