XML を解析しようとすると、次の例外が発生します。
org.apache.harmony.xml.ExpatParser$ParseException: At line 1, column 0: not well-formed (invalid token)
主な問題は、これが Android 2.2 または 2.3 デバイスでのみ発生したことですが、最も奇妙なことは、最初に応答を解析するときは問題ありませんが、その後のすべての試行で解析例外が発生することです。
私のコードは次のとおりです。
URL url = new URL("http://m.ideasmusik.com/rss/?ct=mx");
SAXParserFactory spf = SAXParserFactory.newInstance();
SAXParser sp = spf.newSAXParser();
//InputSource is = new InputSource("http://m.ideasmusik.com/rss/?ct=mx");
//is.setEncoding(HTTP.UTF_8);
// Parse content
MusicRSSParser parser = new MusicHandler.MusicRSSParser(); //DefaultHandler
XMLReader xr = sp.getXMLReader();
xr.setContentHandler(parser);
InputSource in = new InputSource(url.openStream());//is.getByteStream());
in.setEncoding(HTTP.UTF_8);
xr.parse(in);
XML は UTF-8 です (エンコーディングが正しくないことが一般的な問題であると読んだことがあります)。
何がうまくいかないのか推測できますか?ハンドラーに問題がある可能性があると思いましたが、ロジックが適用される前に、startDocument()メソッドの直後にクラッシュします。
同じ結果で、InputStream の代わりに Url を試しました。
編集
アプリケーション管理に移動してアプリ キャッシュを消去すると、初めて問題なく動作します。解析にどのように影響しますか??