私はこの簡単なAndroidスタジオプロジェクトを使用して、小さなコードスニペットをテストしています。今日、私はいくつかのコードを操作しながら、私は自分のデバイスを回転するたびに、それは、より多くのメモリを使用するアプリケーションを引き起こすことに気づいた。次のようにグラフのスクリーンショットである。Androidスタジオ - デバイスを回転させると、使用するメモリが増えます。
Iデバイスを回転させるたびに、割り当てられたメモリが増加し、空きメモリの量が減少します。空きメモリがゼロになると、メモリのチャンクは消去されますが、すべて消去されるわけではありません。私はデバイスを前後に回転させ続けると、最終的にはアプリケーションに利用可能な空きメモリが増え、割り当てられたメモリは増加し続けます。
これは、TextViewが1つしかなく、実行コードがまったくない単純なアプリです。データベース活動なし、ネットワーク活動なし、カーソルなし、何もメモリリークを引き起こすものはありません。
はここMainActivity.javaコンテンツである:
import android.support.v7.app.AppCompatActivity;
import android.os.Bundle;
public class MainActivity extends AppCompatActivity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
}
私はJavaヒープをダンプしようとしたが、それは私にすべてjibberishを探します。
これは期待された動作ですか?実際にメモリを満たしているのは何ですか?何が起こっている?
メモリリークがあります。回転されているアクティビティのコードを投稿します。 –
私はコードを掲載しました。親クラス呼び出しとsetContentView()行を除いて実行されることはありません。 – SercioSoydanov
あなたはrestarを試してキャッシュを無効にしました、清潔でプロプライエクトを構築しましたか? –