public static void Measure (Activity context) { Resources resources = context.Resources; ScreenWidth = resources.DisplayMetrics.WidthPixels; RealSize = new Android.Graphics.Point (); context.Window.WindowManager.DefaultDisplay.GetRealSize (RealSize); ScreenHeight = resources.DisplayMetrics.HeightPixels; int navBarId = resources.GetIdentifier("navigation_bar_height", "dimen", "android"); int statusbarId = resources.GetIdentifier("status_bar_height", "dimen", "android"); NavigationBarHeight = resources.GetDimensionPixelSize(navBarId); StatusBarHeight = resources.GetDimensionPixelSize(statusbarId); TrueScreenHeight = ScreenHeight - NavigationBarHeight - StatusBarHeight; Density = resources.DisplayMetrics.Density; // memory const string ActivityService = global::Android.Content.Context.ActivityService; ActivityManager manager = (ActivityManager)context.GetSystemService(ActivityService); ActivityManager.MemoryInfo outInfo = new ActivityManager.MemoryInfo(); manager.GetMemoryInfo(outInfo); Memory = outInfo.TotalMem; RuntimeMemory = Java.Lang.Runtime.GetRuntime().MaxMemory(); }
public static void Log(Context context) { Context = context; ActivityManager manager = (ActivityManager)context.GetSystemService(Context.ActivityService); ActivityManager.MemoryInfo info = new ActivityManager.MemoryInfo(); manager.GetMemoryInfo(info); Console.WriteLine("Memory log (" + DateTime.Now.ToString("T") + ")"); Console.WriteLine("Available: " + info.AvailMem); Console.WriteLine("Low: " + info.LowMemory); Console.WriteLine("Threshold: " + info.Threshold); Console.WriteLine("---------------------------------"); if (timer == null) { timer = new Timer(new TimerCallback(OnTimerCallback), null, 1000, 1000); } }
private bool CheckMemoryLow() { try { var am = (ActivityManager)ctx.GetSystemService ( Context.ActivityService); var memInfo = new ActivityManager.MemoryInfo (); am.GetMemoryInfo (memInfo); return memInfo.LowMemory; } catch (Java.Lang.Throwable ex) { Log.WriteLine ("Failed to determine low memory state: {0}", ex); return false; } }
public PlatformPerformance() { _runtime = Runtime.GetRuntime(); _activityManager = (ActivityManager)Application.Context.GetSystemService("activity"); _memoryInfo = new ActivityManager.MemoryInfo(); }