| 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
|
|
|