私はいくつかのcaを配置するMapViewを持っています。200枚のオーバーレイ、すべて同じ絵。Restlet で位置データを取得します。しかし、それは問題ではありません。データを十分に速く取得できるからです。
問題は、MapView が非常に遅いことです。オーバーレイの数に応じてパフォーマンスが低下しますが、そうではありません。iPad には、これを簡単に実行できるアプリがあります。私のタブレットはさらに多くの Ghz を持っています。スクロールしなくても、タブレットはマップの一部を何度も読み込んでいます。
だから私は何か間違ったことをしていると思います。だから私はいくつかの質問があります:
LogCat は次のように述べています。
GC_CONCURRENT freed 287K, 6% free 7222K/7623K, paused 1ms+2ms
これを繰り返し、継続的にスペースを取得しようとします。これが問題で、キャッシュがいっぱいになっている可能性はありますか?オーバーレイの影がかなりのパフォーマンスを犠牲にする可能性はありますか? どうすれば削除できますか?
戻るボタンを押してすべてのデータを削除するにはどうすればよいですか?
onStop()
andに何を挿入する必要がありonDestroy()
ますか? 私が知っているように、ガベージ コレクターはこれらすべてを自動的に行っています。他に何ができますか?オーバーレイを削除しますか?私は次のようなケースを使用します:
minLatitude = (minLatitude > partnerLatitude) ? partnerLatitude : minLatitude;
そしてfor-each:
for(BrunnerPartner partner: query) { partnerAL.add(partner); }
これらはパフォーマンスに悪いですか?
ズーム スパンが小さいときにオーバーレイを非表示にすると役に立ちますか? どうすればこれを行うことができますか?