Android - GoogleMaps v2 API中的动态标记

时间:2016-06-30 18:22:26

标签: java android google-maps-api-2

我正在显示一个标记,用于显示用户在Android中的GoogleMaps v2 api中的位置,并且我还会显示用户正在查看的位置(有点像Google Map应用程序使用蓝点和箭头但是使用自定义绘图)。

为此,我使用了GroundOverlay项和重绘Bitmap的线程:

positionOverlayThread = new Thread()
    {
        public void run()
        {
            while(!stopPositionOverlayThread)
            {
                // We update the bitmap object by re-drawing it
                updatePositionBitmap();
                // We set it as the icon for the overlay
                activity.runOnUiThread(new Runnable()
                {
                    public void run()
                    {
                        BitmapDescriptor posDescriptor = BitmapDescriptorFactory.fromBitmap(positionBitmap);
                        _mPositionOverlay.setImage(posDescriptor);
                        try
                        {
                            Thread.sleep(200);
                        }
                        catch(InterruptedException e)
                        {
                            LogException(e);
                        }                 
                    }
                }
            });
        }
    };

这似乎会导致内存泄漏,我怀疑它是来自我每次创建的新BitmapDescritor。我不应该在每次通过时回收它吗?但我找不到任何这样做的方法。

编辑:我在gmaps-api上找到this thread但没有解决方案

0 个答案:

没有答案