【问题标题】:AndroidRuntime: FATAL EXCEPTION: androidmapsapi-ZoomTableManager, java.lang.ArrayIndexOutOfBoundsException: length=1; index=12 [duplicate]AndroidRuntime:致命异常:androidmapsapi-ZoomTableManager,java.lang.ArrayIndexOutOfBoundsException:长度=1;索引=12 [重复]
【发布时间】:2020-08-07 08:34:06
【问题描述】:

我在我的应用程序中使用了 Google Maps SDK (v2),今天突然它开始崩溃并出现以下崩溃消息:

2020-04-24 02:26:40.874 22678-22758/com.**.**E/AndroidRuntime: FATAL EXCEPTION: androidmapsapi-ZoomTableManager
Process: com.**.**, PID: 22678
java.lang.ArrayIndexOutOfBoundsException: length=1; index=12
    at com.google.maps.api.android.lib6.gmm6.vector.ct.<init>(:com.google.android.gms.dynamite_mapsdynamite@201216081@20.12.16 (120400-0):9)
    at com.google.maps.api.android.lib6.gmm6.vector.cv.a(:com.google.android.gms.dynamite_mapsdynamite@201216081@20.12.16 (120400-0):23)
    at com.google.maps.api.android.lib6.gmm6.util.m.run(:com.google.android.gms.dynamite_mapsdynamite@201216081@20.12.16 (120400-0):14)
    at java.lang.Thread.run(Thread.java:919)

以前有没有人遇到过这个问题。如果获得帮助以解决此致命异常问题将非常有帮助。

【问题讨论】:

  • 我正在观察同样的问题。
  • 这是 Google Maps API 的内部错误,我们无能为力。我们应该等待。 stackoverflow.com/questions/61396588/…
  • 只需放入 Application.onCreate(): SharedPreferences googleBug = getSharedPreferences("google_bug_154855417", Context.MODE_PRIVATE); if (!googleBug.contains("fixed")) { 文件损坏ZoomTables = new File(getFilesDir(), "ZoomTables.data");损坏的ZoomTables.delete(); googleBug.edit().putBoolean("fixed", true).apply(); }

标签: android google-maps android-maps-v2


【解决方案1】:

Google 地图已发现此问题并正在努力解决 (link):

根据outage.report,谷歌地图在出现这些错误时遇到了麻烦。我怀疑这是导致这些错误的原因。

【讨论】:

    【解决方案2】:

    这是有关该问题的 Google IssueTracker 线程。

    https://issuetracker.google.com/issues/154855417

    最新状态:

    我们认为 Google Maps SDK 的崩溃问题已部分解决。完整解决方案预计将于 2020 年 4 月 23 日星期四 19:45 US/Pacific 完成。

    可能的解决方法:

    清除应用程序数据对他们来说是安全的客户可以建议他们的用户清除应用程序的数据(不仅仅是缓存)。如果对清除应用数据的安全性存在不确定性,用户可以在接下来的 3 小时内等待获取新数据(很多用户会比这更早看到问题的解决)。

    【讨论】:

      【解决方案3】:

      这是 Google Maps API 中的一个内部错误,它已意识到该问题并正在努力修复。

      参考资料:

      1. FATAL EXCEPTION: androidmapsapi-ZoomTableManager java.lang.ArrayIndexOutOfBoundsException: length=1; index=12
      2. com.google.maps.api.android has a fatal exception
      3. Google Maps SDK is crashing

      更新:

      如果您希望您的用户无需重新安装即可继续使用您的应用,为方便起见,将示例代码复制粘贴到此处。在 Application 类中:

      import android.app.Application;
      import android.content.Context;
      import android.content.SharedPreferences;
      
      import java.io.File;
      
      public class MyApp extends Application {
          @Override
          public void onCreate() {
              super.onCreate();
              SharedPreferences googleBug = getSharedPreferences("google_bug_154855417", Context.MODE_PRIVATE);
              if (!googleBug.contains("fixed")) {
                  File corruptedZoomTables = new File(getFilesDir(), "ZoomTables.data");
                  corruptedZoomTables.delete();
                  googleBug.edit().putBoolean("fixed", true).apply();
              }
          }
      
      }
      

      参考:https://issuetracker.google.com/154855417#comment179

      【讨论】:

        【解决方案4】:

        如果您清除应用存储和缓存,则工作正常。

        【讨论】:

          【解决方案5】:

          这似乎是由于谷歌地图服务,我有同样的问题,很多人也是如此。我们唯一能做的就是等待google解决问题。

          【讨论】:

            【解决方案6】:

            清除缓存数据和应用数据,应该可以解决这个问题。

            【讨论】:

            • 清除缓存数据和应用数据暂时有效,但不是解决方案,它实际上是谷歌地图问题。
            【解决方案7】:

            我设法通过清除数据并重新启动应用程序来解决问题。

            【讨论】:

              【解决方案8】:

              Google 地图正在努力解决此问题。 现在,如果您清除应用程序存储和缓存,它将起作用。(它现在对我有用,但永久解决方案必须等到谷歌地图解决此问题)。

              【讨论】:

                【解决方案9】:

                删除 com.google.android.gms.maps._m_u 和 ZoomTables.data

                我的应用程序将关键数据存储在 App Data 中。我不能要求我的用户在不放弃多年工作的情况下清除应用数据。所以我查看了我的应用程序的 Documents 目录,找到了这两个文件/目录。

                com.google.android.gms.maps._m_u

                ZoomTables.data

                我无法告诉您如何为您的应用程序执行此操作,但我在我的应用程序中所做的是编写仅在下次启动我的应用程序时运行一次的代码,并且该代码删除了这两个似乎很清晰的文件/目录问题。当我的应用稍后显示谷歌地图时,这些文件/目录会再次创建,但数据不会导致崩溃。最后,我必须构建并将我的应用程序的新版本发布到生产环境。现在我只需要让所有崩溃的用户都使用新版本。

                【讨论】:

                  猜你喜欢
                  • 2020-08-07
                  • 2015-09-17
                  • 2020-08-11
                  • 2020-08-09
                  • 1970-01-01
                  • 1970-01-01
                  • 2023-04-10
                  相关资源
                  最近更新 更多