加载地图时应用程序崩溃:尺寸为16x256的纹理大于android studio中支持的最大大小0x0

时间:2018-10-27 16:54:20

标签: android google-maps

我的应用昨天运行良好。我今天早上醒来继续,它在加载MapView时一直崩溃。 该应用程序会在用户登录后立即加载地图,但现在它只是崩溃并出现相同的错误。这是错误消息:

E/AndroidRuntime: FATAL EXCEPTION: GLThread 272
              Process: com.emyce.ridesgh.ridesgh, PID: 6448
              java.lang.IllegalArgumentException: Textures with dimensions16x256 are larger than  the maximum supported size 0x0
                  at com.google.maps.api.android.lib6.gmm6.vector.gl.ah.a(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):72)
                  at com.google.maps.api.android.lib6.gmm6.vector.gl.aj.a(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):46)
                  at com.google.maps.api.android.lib6.gmm6.vector.gl.aj.<init>(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):4)
                  at com.google.maps.api.android.lib6.gmm6.vector.gl.g.<init>(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):44)
                  at com.google.maps.api.android.lib6.gmm6.vector.bs.a(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):80)
                  at com.google.maps.api.android.lib6.gmm6.vector.bb.run(:com.google.android.gms.dynamite_mapsdynamite@14366052@14.3.66 (040700-213742215):84).

我一直在Google搜索解决方案,但没有找到。

1 个答案:

答案 0 :(得分:0)

当我发现这个完全相同的错误时,我发现了这个问题,并且是another个旧问题。非适用于我的解决方案。因此,我开始阅读地图叠加层的文档。我的图像是3175x2245,这就是问题。

来自GroundOverlayOptions的{​​{3}}

  

将图像加载为纹理(用于将图像绘制在   地图),则必须将其转换为侧面具有   两个。

因此,您必须将图像的宽度和高度转换为2的幂。在我的情况下,折衷方案是2048x2048正方形(裁剪原始图像以在顶部和底部留出空间)。而且有效。有些电话对此并不在意,而其他的则如此。