Asynctask导致NullPointerException

时间:2013-08-31 10:26:54

标签: java android android-asynctask google-play

我在Google Play上有一款应用。我从开发者页面收到了一些错误报告,很难找出问题所在。

这就是我所拥有的:

 java.lang.NullPointerException
at com.seb.example.free.MainActivity$ApplyFilter.onPostExecute(MainActivity.java:828)
at com.seb.example.free.MainActivity$ApplyFilter.onPostExecute(v.java:1)
at android.os.AsyncTask.finish(AsyncTask.java:631)
at android.os.AsyncTask.access$600(AsyncTask.java:177)
at android.os.AsyncTask$InternalHandler.handleMessage(AsyncTask.java:644)
at android.os.Handler.dispatchMessage(Handler.java:99)
at android.os.Looper.loop(Looper.java:153)
at android.app.ActivityThread.main(ActivityThread.java:4987)
at java.lang.reflect.Method.invokeNative(Native Method)
at java.lang.reflect.Method.invoke(Method.java:511)
at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:821)
at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:584)
at dalvik.system.NativeStart.main(Native Method)

正如你所看到的,我有一个asynctask内部类,错误似乎在postexecute上。 我已经在eclipse中检查了我的项目,并且正如stacktrace所说,错误在828行:

(iV.getVisibility() == ImageView.INVISIBLE)

我的imageView,iV在Ma​​inActivity中声明为私有,我在oncreate中启动它。 我不能像我测试的那样在我的三部手机上重现这个问题,所以很难理解导致它的原因。

有想法的人吗?谢谢!

3 个答案:

答案 0 :(得分:0)

它可能在某些其他地方被解除引用,在onresume中初始化并查看是否仍然存在。

答案 1 :(得分:0)

我认为imageview对象在代码中的某些位置变为空。检查它是否已初始化..如果初始化检查它在项目中的使用位置。

答案 2 :(得分:0)

请检查您是否已初始化iv 尝试:

if(iv != null)
(iV.getVisibility() == View.INVISIBLE)
else
Log.e("CHECK","iv Null");

如果您尚未初始化iv,请先执行此操作。