| Index: Application/src/main/java/org/chromium/customtabsclient/MainActivity.java | 
| diff --git a/Application/src/main/java/org/chromium/customtabsclient/MainActivity.java b/Application/src/main/java/org/chromium/customtabsclient/MainActivity.java | 
| index 35d563cf9401e080c5ef13238e45ffc734b5b449..3869244cee572333caeea51e034c1c504bc72027 100644 | 
| --- a/Application/src/main/java/org/chromium/customtabsclient/MainActivity.java | 
| +++ b/Application/src/main/java/org/chromium/customtabsclient/MainActivity.java | 
| @@ -15,6 +15,7 @@ | 
| package org.chromium.customtabsclient; | 
|  | 
| import android.app.Activity; | 
| +import android.app.ActivityManager; | 
| import android.app.ActivityOptions; | 
| import android.app.PendingIntent; | 
| import android.content.Intent; | 
| @@ -26,6 +27,8 @@ import android.graphics.Color; | 
| import android.media.MediaPlayer; | 
| import android.net.Uri; | 
| import android.os.Bundle; | 
| +import android.os.Handler; | 
| +import android.os.Looper; | 
| import android.support.customtabs.CustomTabsCallback; | 
| import android.support.customtabs.CustomTabsClient; | 
| import android.support.customtabs.CustomTabsIntent; | 
| @@ -70,6 +73,33 @@ public class MainActivity extends Activity implements OnClickListener, ServiceCo | 
| private Button mLaunchButton; | 
| private MediaPlayer mMediaPlayer; | 
|  | 
| +    /** | 
| +     * Once per second, asks the framework for the process importance, and logs any change. | 
| +     */ | 
| +    private Runnable mLogImportance = new Runnable() { | 
| +        private int mPreviousImportance = -1; | 
| +        private boolean mPreviousServiceInUse = false; | 
| +        private Handler mHandler = new Handler(Looper.getMainLooper()); | 
| + | 
| +        @Override | 
| +        public void run() { | 
| +            ActivityManager.RunningAppProcessInfo state = | 
| +                    new ActivityManager.RunningAppProcessInfo(); | 
| +            ActivityManager.getMyMemoryState(state); | 
| +            int importance = state.importance; | 
| +            boolean serviceInUse = state.importanceReasonCode | 
| +                    == ActivityManager.RunningAppProcessInfo.REASON_SERVICE_IN_USE; | 
| +            if (importance != mPreviousImportance || serviceInUse != mPreviousServiceInUse) { | 
| +                mPreviousImportance = importance; | 
| +                mPreviousServiceInUse = serviceInUse; | 
| +                String message = "New importance = " + importance; | 
| +                if (serviceInUse) message += " (Reason: Service in use)"; | 
| +                Log.w(TAG, message); | 
| +            } | 
| +            mHandler.postDelayed(this, 1000); | 
| +        } | 
| +    }; | 
| + | 
| private static class NavigationCallback extends CustomTabsCallback { | 
| @Override | 
| public void onNavigationEvent(int navigationEvent, Bundle extras) { | 
| @@ -146,6 +176,8 @@ public class MainActivity extends Activity implements OnClickListener, ServiceCo | 
| mPackageNameToBind = null; | 
| } | 
| }); | 
| + | 
| +        mLogImportance.run(); | 
| } | 
|  | 
| @Override | 
|  |