2017-05-07 11 views
3

マイコードネーム1つのアプリケーションが約16000レコードのデータをダウンロードします(各レコードに約10フィールド)。大量のデータがコードネーム1である

私のAndroid搭載端末(OS6.0、RAM 2GB)では、8000〜9000件のレコードを読み込むことができますが、メモリ不足が表示されます。

トレースから、アプリケーションに割り当てられたヒープメモリが不足しているようです。

大量のデータを処理する理想的な方法は何ですか?

Here is the log file

答えて

2

携帯電話上のRAMの量が多くを意味するものではありません。 OSは約半分を取り、残りの部分を並列実行しているさまざまなアプリに分けます。あなたは通常、をたくさん持っています less What is the maximum amount of RAM an app can use?

あなたはコードを見直して、何がメモリを食べているかチェックする必要があります。 1kbの16kレコードはそれぞれ16Mbになるので、アプリをクラッシュさせるべきではないので、メモリはどこにあるのかという疑問があるので、performance section of the developer guideを読んでメモリ使用量を調べることをお勧めします。

2

これはあなたの状況には当てはまりませんが、一度にx個のレコードしかダウンロードできないのでしょうか?その後、ユーザーが何らかのアクション(スクロール、次のページへのヒットなど)をすると、次のバッチが読み込まれます。コードネーム1は素晴らしい無限スクロールの実装を持っています。例はここをクリック - https://www.codenameone.com/blog/property-cross-revisited.html

関連する問題