Firebase远程配置AsyncTask空指针异常

时间:2017-02-16 10:28:22

标签: android firebase android-asynctask crash-reports

我为很多用户带来了以下崩溃:

Fatal Exception: java.lang.NullPointerException: Attempt to invoke interface method 'java.util.Set java.util.Map.keySet()' on a null object reference

   at com.google.android.gms.internal.zzanw.zza(Unknown Source)
   at com.google.android.gms.internal.zzanw.run(Unknown Source)
   at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:234)
   at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1113)
   at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:588)
   at java.lang.Thread.run(Thread.java:818)

类似的问题在这里: 访问Firebase Remote Config NullPointer

但它没有任何答案。

任何人都可以帮忙解决此问题吗?

修改

我发现源崩溃指向来自Firebase-config库。在没有检查null的情况下为Map调用keySet()方法。有没有人对此有任何想法?

2 个答案:

答案 0 :(得分:1)

嗯,这不是一个真正的答案,但无论如何我发布它试图让我的想法更清楚。

您可以通过两种方式找到错误

FIRST(推荐)

  1. 尝试重现崩溃。
  2. 如果您可以重现它,请检查亲戚的代码 应用程序崩溃的部分/模块。你应该找到一个 AsyncTask您使用MapHashMap检查是否为空
  3. <强> SECOND

    检查您使用AsyncTaskMap的每个HashMap并构建一个控件以避免NullPointerException

答案 1 :(得分:0)

错误告诉您,您正尝试在keySet()内的空地图上调用方法AsyncTask。这应该很容易隔离。你在AsyncTask中调用了多少个地方的keySet()?