我一直在 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