【问题标题】:how to instantiate an XmlPullParser in android-8?如何在 android-8 中实例化 XmlPullParser?
【发布时间】:2010-08-30 23:40:50
【问题描述】:

我正在尝试使用 XMLPullParser 为 android 应用程序解析一些 XML。我在 android-8 SDK 的 android.jar 中进行类路径。

唉,这段代码:

import android.util.Xml;
import org.xmlpull.v1.XmlPullParser;

class InstantiateXMLPullParser {
  public static void main( String args[] ){
    XmlPullParser xpp = Xml.newPullParser();
  }
}

失败并出现此错误:

Exception in thread "main" java.lang.RuntimeException: Stub!
        at android.util.Xml.newPullParser(Xml.java:15)
        at InstantiateXMLPullParser.main(InstantiateXMLPullParser.java:6)

我怀疑我需要在某个地方指定一个实现 - 看起来曾经 Android 使用 org.apache.harmony.xml.ExpatPullParser 作为其默认的拉解析器,但现在似乎不再是这种情况了。

【问题讨论】:

    标签: android xmlpullparser android-2.2-froyo


    【解决方案1】:

    你似乎有更根本的问题。 java.lang.RuntimeException: Stub! 只会在您尝试在 Android 之外使用 android.jar 时出现。尝试构建一个 Android 应用程序并在设备或模拟器上运行它,您将获得您的 pull 解析器。

    【讨论】:

    • 是的,问题更为根本。试图在沉重,缓慢的模拟器之外做一些我自己的存根。非常感谢您的快速回答。
    • 感谢 CommonsWare。您的回答帮助我调试了一个我整个周末都在尝试解决的问题! :)
    【解决方案2】:

    来自API docs

    XmlPullParserFactory factory = XmlPullParserFactory.newInstance();
    factory.setNamespaceAware(true);
    XmlPullParser xpp = factory.newPullParser();
    

    【讨论】:

      猜你喜欢
      • 2011-01-11
      • 1970-01-01
      • 1970-01-01
      • 2013-02-17
      • 2019-01-07
      • 1970-01-01
      • 2017-01-19
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多