Ejemplo n.º 1
0
		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();

		}
Ejemplo n.º 2
0
        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();
 }