0

これを Application クラスの on Create() の最初の行に入れます。

@Override
public void onCreate() {
    Log.i("test", "application oncreate");
    showMemoryStats();
    super.onCreate();
}

showMemoryStats() の場所:

public static void showMemoryStats() {

    double nativeUsage = Debug.getNativeHeapAllocatedSize(); 
    Log.i("test", "nativeUsage: " + nativeUsage);
    //current heap size 
    double heapSize =  Runtime.getRuntime().totalMemory();
    Log.i("test", "heapSize: " + heapSize);
    //amount available in heap 
    double heapRemaining = Runtime.getRuntime().freeMemory();   
    Log.i("test", "heapRemaining: " + heapRemaining);
    double memoryAvailable = Runtime.getRuntime().maxMemory() - (heapSize - heapRemaining) - nativeUsage;
    Log.i("test", "memoryAvailable: " + memoryAvailable);

}

完全にアンインストールした後、アプリを起動します。私は得る:

07-03 17:39:05.212: 私/テスト (19016): ネイティブ使用法: 5649968.0

07-03 17:39:05.212: 私/テスト (19016): ヒープサイズ: 4710384.0

07-03 17:39:05.212: 私/テスト (19016): heapRemaining: 1705056.0

07-03 17:39:05.212: 私/テスト (19016): memoryAvailable: 2.4899136E7

これはネイティブ ヒープで既に 5 mb です。なぜですか? それは正常ですか?

4

0 に答える 0