使用PreferenceFragmentCompat验证VerifyError

时间:2015-12-12 13:37:32

标签: android verifyerror support-preference

我正在尝试使用支持v7 PreferenceFragmentCompat,但是当我启动应用时,我会在创建对象实例时获得此VerifyError

E/AndroidRuntime(21575): java.lang.VerifyError: android/support/v7/preference/PreferenceFragmentCompat

我尝试使用的代码就像这样简单:

new PreferenceFragmentCompat() {
    @Override
    public void onCreatePreferences(Bundle savedInstanceState, String rootKey) {
    }
};

这只发生在PreferenceFragmentCompat,(例如我没有遇到任何问题:new android.support.v7.preference.EditTextPreference();)。

在使用支持库之前,使用android API PreferenceFragment一切正常。 支持库正确链接到项目中(我正在使用支持片段和工具栏而没有任何问题)。

此时我完全陷入困境,我真的不知道在哪里寻找。

1 个答案:

答案 0 :(得分:0)

我做了一些更深入的调试,我发现尽管VerifyError堆栈跟踪并没有在Logcat中指示任何内容,但是这个错误有一些信息可以逐步调试调试中的错误类,即:

没有找到课程" android.support.v7.widget.RecyclerView" on path:DexPathList [[zip file" /data/app/com.myapp-59.apk"],nativeLibraryDirectories = [/ data / app-lib / com.myapp-59,/ vendor / lib, /系统/ lib中]]

在我正在使用的API支持v7中,这个类位于自己的子库中,名为recyclerview,我忘了将其包含在项目中(目前我正在使用appcompat和首选项)。编译器没有看到这个,不知道为什么。