我在我的一个项目中使用 TagSoup 并对 HTMLSchema.java 进行了一些修改以处理嵌套列表标签。当我测试这些更改时,它们根本没有效果。我在 Java 独立应用程序中测试了相同的更改,它们按预期工作。
当我尝试调试应用程序时,我注意到它没有在调试器中显示正确的行号,所以我做了你在这种情况下通常会做的事情:重新构建项目,重新启动 IDE,重新启动 Android 设备和PC,创建一个新的Android项目,都无济于事。
我从一些类中删除了所有代码,应用程序仍然像以前一样运行,所以很明显,Android 使用的类与我在应用程序中部署的类不同。我做了一个 Android 测试项目,除了通常的 MainActivity、布局和可绘制对象之外,什么都没有,添加了 TagSoup 类和使用 TagSoup 解析的代码,但它仍然没有使用“我的”TagSoup 类。我用两个 4.4.2 Nexus 设备和一个运行 4.1.2 的 Note 2 对此进行了测试。
只有当我将包名从 org.ccil.cowan.tagsoup 重命名为其他名称(如 org.ccil.cowan.tagsoup2)时,它才使用随我的应用程序部署的类。
我的问题很简单:到底发生了什么?