diff options
| -rw-r--r-- | core/java/android/app/Service.java | 30 | ||||
| -rw-r--r-- | core/res/res/values/strings.xml | 11 | ||||
| -rw-r--r-- | packages/SystemUI/res/values/strings.xml | 4 | ||||
| -rw-r--r-- | packages/SystemUI/src/com/android/systemui/ForegroundServicesDialog.java | 2 | 
4 files changed, 28 insertions, 19 deletions
| diff --git a/core/java/android/app/Service.java b/core/java/android/app/Service.java index 0265ea52064b..10d6a7b02377 100644 --- a/core/java/android/app/Service.java +++ b/core/java/android/app/Service.java @@ -671,22 +671,22 @@ public abstract class Service extends ContextWrapper implements ComponentCallbac      }      /** -     * Make this service run in the foreground, supplying the ongoing +     * If your service is started (running through {@link Context#startService(Intent)}), then +     * also make this service run in the foreground, supplying the ongoing       * notification to be shown to the user while in this state. -     * By default services are background, meaning that if the system needs to -     * kill them to reclaim more memory (such as to display a large page in a -     * web browser), they can be killed without too much harm.  You can set this -     * flag if killing your service would be disruptive to the user, such as +     * By default started services are background, meaning that their process won't be given +     * foreground CPU scheduling (unless something else in that process is foreground) and, +     * if the system needs to kill them to reclaim more memory (such as to display a large page in a +     * web browser), they can be killed without too much harm.  You use +     * {@link #startForeground} if killing your service would be disruptive to the user, such as       * if your service is performing background music playback, so the user       * would notice if their music stopped playing. -     *  -     * <p>If you need your application to run on platform versions prior to API -     * level 5, you can use the following model to call the the older setForeground() -     * or this modern method as appropriate: -     *  -     * {@sample development/samples/ApiDemos/src/com/example/android/apis/app/ForegroundService.java -     *   foreground_compatibility} -     *  +     * +     * <p>Note that calling this method does <em>not</em> put the service in the started state +     * itself, even though the name sounds like it.  You must always call +     * {@link #startService(Intent)} first to tell the system it should keep the service running, +     * and then use this method to tell it to keep it running harder.</p> +     *       * @param id The identifier for this notification as per       * {@link NotificationManager#notify(int, Notification)       * NotificationManager.notify(int, Notification)}; must not be 0. @@ -716,7 +716,9 @@ public abstract class Service extends ContextWrapper implements ComponentCallbac      /**       * Remove this service from foreground state, allowing it to be killed if -     * more memory is needed. +     * more memory is needed.  This does not stop the service from running (for that +     * you use {@link #stopSelf()} or related methods), just takes it out of the +     * foreground state.       *       * @param flags additional behavior options.       * @see #startForeground(int, Notification) diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml index e633d66514cc..31acd0f47172 100644 --- a/core/res/res/values/strings.xml +++ b/core/res/res/values/strings.xml @@ -644,8 +644,10 @@      <!-- Text shown when viewing channel settings for notifications related to a usb connection -->      <string name="notification_channel_usb">USB connection</string> -    <!-- Text shown when viewing channel settings for notifications related to running foreground -        services [CHAR LIMIT=NONE] --> +    <!-- This is the label for the notification channel settings that controls the behavior +        of the notification about applications that are running in the background (that is, +        perhaps confusingly, running foreground services but not the foreground UI on the screen). +        [CHAR LIMIT=NONE] -->      <string name="notification_channel_foreground_service">Apps running in background</string>      <!-- Label for foreground service notification when one app is running. [CHAR LIMIT=NONE] --> @@ -663,7 +665,10 @@          data usage</string>      <!-- Separator for foreground service notification content listing all apps when there -        are multiple apps running [CHAR LIMIT=NONE] --> +        are multiple apps running.  The left and right side may both already be compound +        (constructed using this separator).  Should be kept as short as possible, this is +        for summary text in the notification where there is not a lot of space. +        [CHAR LIMIT=NONE] -->      <string name="foreground_service_multiple_separator"><xliff:g id="left_side">%1$s</xliff:g>,          <xliff:g id="right_side">%2$s</xliff:g></string> diff --git a/packages/SystemUI/res/values/strings.xml b/packages/SystemUI/res/values/strings.xml index bf70c5a2fc49..d15fcaec2b28 100644 --- a/packages/SystemUI/res/values/strings.xml +++ b/packages/SystemUI/res/values/strings.xml @@ -2033,7 +2033,9 @@      <!-- Title of the "running foreground services" dialog. [CHAR LIMIT=NONE] -->      <string name="running_foreground_services_title">Apps running in background</string> -    <!-- Title of the "running foreground services" dialog. [CHAR LIMIT=NONE] --> +    <!-- Descriptive text of an item in the "running foreground services" dialog, telling the +        user what will happen when they tap on that item (which is an application that has +        been identified for them as running). [CHAR LIMIT=NONE] -->      <string name="running_foreground_services_msg">Tap for details on battery and data usage</string>  </resources> diff --git a/packages/SystemUI/src/com/android/systemui/ForegroundServicesDialog.java b/packages/SystemUI/src/com/android/systemui/ForegroundServicesDialog.java index 49e780cfa9e6..9d286cf7e6d5 100644 --- a/packages/SystemUI/src/com/android/systemui/ForegroundServicesDialog.java +++ b/packages/SystemUI/src/com/android/systemui/ForegroundServicesDialog.java @@ -66,7 +66,7 @@ public final class ForegroundServicesDialog extends AlertActivity implements      private DialogInterface.OnClickListener mAppClickListener =              new DialogInterface.OnClickListener() {                  public void onClick(DialogInterface dialog, int which) { -                    String pkg = mPackages[which]; +                    String pkg = mAdapter.getItem(which).packageName;                      Intent intent = new Intent(Settings.ACTION_APPLICATION_DETAILS_SETTINGS);                      intent.setData(Uri.fromParts("package", pkg, null));                      startActivity(intent); |