am 05ee74dc: Log memory consumption at end of onCreate (Camera2). Bug: 13280671
* commit '05ee74dcf3b1c8e65229f43441d282fcf89744a6':
Log memory consumption at end of onCreate (Camera2). Bug: 13280671
diff --git a/src/com/android/camera/CameraActivity.java b/src/com/android/camera/CameraActivity.java
index dcd582c..52c584c 100644
--- a/src/com/android/camera/CameraActivity.java
+++ b/src/com/android/camera/CameraActivity.java
@@ -79,6 +79,7 @@
import com.android.camera.app.CameraServices;
import com.android.camera.app.LocationManager;
import com.android.camera.app.MemoryManager;
+import com.android.camera.app.MemoryQuery;
import com.android.camera.app.ModuleManagerImpl;
import com.android.camera.app.OrientationManager;
import com.android.camera.app.OrientationManagerImpl;
@@ -1322,7 +1323,14 @@
mFeedbackHelper = new FeedbackHelper(mAppContext);
}
mMemoryManager = getServices().getMemoryManager();
- HashMap memoryData = mMemoryManager.queryMemory();
+
+ AsyncTask.THREAD_POOL_EXECUTOR.execute(new Runnable() {
+ public void run() {
+ HashMap memoryData = mMemoryManager.queryMemory();
+ UsageStatistics.instance().reportMemoryConsumed(memoryData,
+ MemoryQuery.REPORT_LABEL_LAUNCH);
+ }
+ });
}
/**
diff --git a/src/com/android/camera/app/MemoryQuery.java b/src/com/android/camera/app/MemoryQuery.java
index 3628907..ba41243 100644
--- a/src/com/android/camera/app/MemoryQuery.java
+++ b/src/com/android/camera/app/MemoryQuery.java
@@ -33,6 +33,23 @@
private final long BYTES_IN_KILOBYTE = 1024;
private final long BYTES_IN_MEGABYTE = BYTES_IN_KILOBYTE * BYTES_IN_KILOBYTE;
+ public static final String KEY_TIMESTAMP = "timestamp";
+ public static final String KEY_MEMORY_AVAILABLE = "availMem";
+ public static final String KEY_TOTAL_MEMORY = "totalMem";
+ public static final String KEY_TOTAL_PSS = "totalPSS";
+ public static final String KEY_NATIVE_PSS = "nativePSS";
+ public static final String KEY_DALVIK_PSS = "dalvikPSS";
+ public static final String KEY_OTHER_PSS = "otherPSS";
+ public static final String KEY_THRESHOLD = "threshold";
+ public static final String KEY_LOW_MEMORY = "lowMemory";
+ public static final String KEY_LAST_TRIM_LEVEL = "lastTrimLevel";
+ public static final String KEY_TOTAL_PRIVATE_DIRTY = "totalPrivateDirty";
+ public static final String KEY_TOTAL_SHARED_DIRTY = "totalSharedDirty";
+ public static final String KEY_MEMORY_CLASS = "memoryClass";
+ public static final String KEY_LARGE_MEMORY_CLASS = "largeMemoryClass";
+
+ public static final String REPORT_LABEL_LAUNCH = "launch";
+
private ActivityManager mActivityManager;
public MemoryQuery(ActivityManager activityManager) {
@@ -85,20 +102,20 @@
}
HashMap outputData = new HashMap();
- outputData.put("timestamp", new Long(timestamp));
- outputData.put("availMem", new Long(availMem));
- outputData.put("totalMem", new Long(totalMem));
- outputData.put("totalPSS", new Long(totalPSS));
- outputData.put("lastTrimLevel", new Integer(info.lastTrimLevel));
- outputData.put("totalPrivateDirty", new Long(totalPrivateDirty));
- outputData.put("totalSharedDirty", new Long(totalSharedDirty));
- outputData.put("memoryClass", new Long(memoryClass));
- outputData.put("largeMemoryClass", new Long(largeMemoryClass));
- outputData.put("nativePSS", new Long(nativePSS));
- outputData.put("dalvikPSS", new Long(dalvikPSS));
- outputData.put("otherPSS", new Long(otherPSS));
- outputData.put("threshold", new Long(threshold));
- outputData.put("lowMemory", new Boolean(lowMemory));
+ outputData.put(KEY_TIMESTAMP, new Long(timestamp));
+ outputData.put(KEY_MEMORY_AVAILABLE, new Long(availMem));
+ outputData.put(KEY_TOTAL_MEMORY, new Long(totalMem));
+ outputData.put(KEY_TOTAL_PSS, new Long(totalPSS));
+ outputData.put(KEY_LAST_TRIM_LEVEL, new Integer(info.lastTrimLevel));
+ outputData.put(KEY_TOTAL_PRIVATE_DIRTY, new Long(totalPrivateDirty));
+ outputData.put(KEY_TOTAL_SHARED_DIRTY, new Long(totalSharedDirty));
+ outputData.put(KEY_MEMORY_CLASS, new Long(memoryClass));
+ outputData.put(KEY_LARGE_MEMORY_CLASS, new Long(largeMemoryClass));
+ outputData.put(KEY_NATIVE_PSS, new Long(nativePSS));
+ outputData.put(KEY_DALVIK_PSS, new Long(dalvikPSS));
+ outputData.put(KEY_OTHER_PSS, new Long(otherPSS));
+ outputData.put(KEY_THRESHOLD, new Long(threshold));
+ outputData.put(KEY_LOW_MEMORY, new Boolean(lowMemory));
Log.d(TAG, String.format("timestamp=%d, availMem=%d, totalMem=%d, totalPSS=%d, " +
"lastTrimLevel=%d, largeMemoryClass=%d, nativePSS=%d, dalvikPSS=%d, otherPSS=%d," +
diff --git a/src_pd/com/android/camera/util/UsageStatistics.java b/src_pd/com/android/camera/util/UsageStatistics.java
index bb4e5cc..2598b0e 100644
--- a/src_pd/com/android/camera/util/UsageStatistics.java
+++ b/src_pd/com/android/camera/util/UsageStatistics.java
@@ -20,6 +20,8 @@
import android.content.Context;
import com.android.camera.exif.ExifInterface;
+import java.util.HashMap;
+
public class UsageStatistics {
private static UsageStatistics sInstance;
@@ -55,4 +57,7 @@
public void controlUsed(int control) {
}
+
+ public void reportMemoryConsumed(HashMap memoryData, String reportType) {
+ }
}