Android java.lang.VerifyError仅适用于1.5

Android java.lang.VerifyError仅适用于1.5,android,Android,我有以下代码,它在我的主活动的onCreate方法中得到调用 public static ErrorReporter getInstance(){ if (instance == null){ instance = new ErrorReporter(); } return instance; } 只有在android 1.5上调用上述方法才会导致java.lang.VerifyError。我不知道为什么会发生这种情况。关于如何解决此问题的任何提示我在尝试为listvie

我有以下代码,它在我的主活动的onCreate方法中得到调用

 public static ErrorReporter getInstance(){
  if (instance == null){
   instance = new ErrorReporter();
  }
  return instance;
 }

只有在android 1.5上调用上述方法才会导致java.lang.VerifyError。我不知道为什么会发生这种情况。关于如何解决此问题的任何提示

我在尝试为listview设置listadatper时遇到了完全相同的问题:)

检查这个

private void setResultListListAdapter() {
    mListAdapter_ = new ListAdapter(mContext_,
            R.layout.dsg_detailed_list_row, mLstStops_);
    setListAdapter(mListAdapter_);
}
在初始化mListAdapter_uu之前获取VerifyError。。所以这件事

新的ListAdapter(mContext\ux、, R.layout.dsg\u详细清单\u行,mLstStops\u)

但在1.5中没有任何内容可用:=// 奇怪的事

在另外两个类中,此代码也可以正常工作…:=)

希望有人知道更多,谢谢! (所有内容都已初始化,所有内容都已检查…setListAdapter从未被调用)


解决方案(针对我)

这确实是一种Android 1.5不支持的方法

mConvertView_uu2;.setTag(唯一标识,视图持有者)

ViewHolder是静态类,而不是使用normal View.gettag(), 由于不同的布局,我使用了上述方法。。所以:=)


第二个是受支持的View.getTag()

我在ErrorReporter类中使用的函数在1.5中不可用。使用反射来处理不可用的函数,错误就消失了。

只需在1.5上构建,您就会看到罪魁祸首在哪里…

什么是
ErrorReporter
?当您试图使用SDK中没有的东西时,就会出现这种异常。也许,在
ErrorReporter
类中有一些可用于Android>=1.6的库。ErrorReporter是我定义的一个类,它实现了Thread.UncaughtExceptionHandler,帮助我找出是什么导致我的应用程序中出现强制关闭。上面的函数用于获取类的实例。当我在我的主要活动的onCreate()中调用这个方法时,我得到一个错误(java.lang.VerifyError),这只发生在1.5中,我已经声明在Android 1.5中看到了同样的问题。我有一个定义为类中公共静态字段的基元。在1.5中,当我试图从另一个类访问静态字段时,我得到一个java.lang.VerifyError。我使用的函数在1.5中不可用。使用反射来解决这个问题。