2012-02-05 10 views
3

私は基本的にニュース記事のリストを読み込み、ユーザーのクリックに応じてwebviewでそれらを開くアンドロイドアプリを開発しています。Androidアプリのデータストレージが増加し続けています

私は「設定 - >アプリケーション - >アプリケーションの管理」で私のアプリの詳細を見たときに私は疑問を抱いていますが、合計ストレージサイズが増加し続けています。特に、データ記憶容量が増加している。もちろん、アプリケーションのサイズは固定です。

私が知っていることから、sharedpreferencesは、データストレージを取ります。私は他の何がわからない。私のアプリでは、1つのチェックボックスの設定と4つの項目のlistpreferenceがあります。

onSaveInstanceState()メソッドを実装しました。ここでは、ただ1つのint値を保存し、onCreate()の間にもう一度読み込みます。

は、通常の増加、データ・ストレージ・サイズですか私は何かが足りないのですか?たぶん、私のコードで行うべきメモリ使用のクリーンアップがあるはずですか?ところで

は、私のアプリは、おそらくいくつかの画像をキャッシュするのWebViewのために非常に大きなキャッシュサイズを持っているが、私は、データストレージが増加し続けますかわかりません。

+0

線形レートで増加しますか?それとも散発的に増加しますか?つまり、ウェブサイトにアクセスしてリフレッシュするとそれが増えますか?あなたが100のウェブサイトになった場合、それは100だけ上がるか、それとも変動しますか?漏れているかどうか、またはそのクロムキャッシングがあるかどうか確認してください。キャッシングは散発的で、テストすることができます。リークはもう少し一定になるはずです。 – ntkachov

+0

私はデータサイズが私のやり方に基づいてどのように変化するかを見ています。現時点では、私が見ているのは、Webviewでページを読み込むと増加するということです。しかし、すべての時間ではありません。私はそれを試してみることができないように私のwebview上でリフレッシュオプションがありません。キャッシュは、データサイズではなくキャッシュサイズ(現在はかなり大きい)になるはずですか? –

+0

サイズの変更例を以下に示します。私は基本的に、最初の5つのデータについて同じページ(小さな簡単な記事サイト)を読み込みます。最後の1つは、私は別の記事(はるかに大きい/複雑なサイト)を開き、データの変更ははるかに大きいです。 データ\tキャッシュ 520キロバイト\t 5.53メガバイト。 536KB \t 5.58MB; 540KB \t 5.60MB; 548KB \t 5.62MB; 552KB \t 5.64MB; 568KB \t 6.16MB; –

答えて

2

私は2年以上も知っているが、それは他の誰かのために有用である可能性があります。私は問題がWebViewに存在することを発見し、SharedPreferences に、私は同じ問題を抱えていたし、このようにonPause()メソッドをオーバーライドすることで解決していない:

private WebView wv; 

@Override 
protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    wv = new WebView(this); 
    setContentView(wv); 
    wv.loadUrl("http://www.stackoverflow.com"); 
} 

@Override 
protected void onPause() { 
    // TODO Auto-generated method stub 
    super.onPause(); 
    wv.clearCache(true); 
} 

clearCache方法は、あなたがするかどうかを指定できますブール引数を取りますWebViewに格納されているディスクファイルを含める必要があります。これを有効にすると、データ使用量が大幅に減少します。それが役に立てば幸い!

関連する問題