diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java index 60e76603fdf4b..1d664644bdb59 100644 --- a/core/java/android/app/Notification.java +++ b/core/java/android/app/Notification.java @@ -918,10 +918,9 @@ public class Notification implements Parcelable *
          * Notification.Action action = new Notification.Action.Builder(
          *         R.drawable.archive_all, "Archive all", actionIntent)
-         *         .apply(new Notification.Action.WearableExtender()
+         *         .extend(new Notification.Action.WearableExtender()
          *                 .setAvailableOffline(false))
-         *         .build();
-         * 
+ * .build(); */ public static final class WearableExtender implements Extender { /** Notification action extra which contains wearable extensions */ @@ -2837,8 +2836,7 @@ public class Notification implements Parcelable *
      * Notification.WearableExtender wearableExtender = new Notification.WearableExtender(
      *         notification);
-     * List<Notification> pages = wearableExtender.getPages();
-     * 
+ * List<Notification> pages = wearableExtender.getPages(); */ public static final class WearableExtender implements Extender { /** @@ -3083,7 +3081,27 @@ public class Notification implements Parcelable /** * Set an intent to launch inside of an activity view when displaying - * this notification. This {@link PendingIntent} should be for an activity. + * this notification. The {@link PendingIntent} provided should be for an activity. + * + *
+         * Intent displayIntent = new Intent(context, MyDisplayActivity.class);
+         * PendingIntent displayPendingIntent = PendingIntent.getActivity(context,
+         *         0, displayIntent, PendingIntent.FLAG_UPDATE_CURRENT);
+         * Notification notif = new Notification.Builder(context)
+         *         .extend(new Notification.WearableExtender()
+         *                 .setDisplayIntent(displayPendingIntent)
+         *                 .setCustomSizePreset(Notification.WearableExtender.SIZE_MEDIUM))
+         *         .build();
+ * + *

The activity to launch needs to allow embedding, must be exported, and + * should have an empty task affinity. + * + *

Example AndroidManifest.xml entry: + *

+         * <activity android:name="com.example.MyDisplayActivity"
+         *     android:exported="true"
+         *     android:allowEmbedded="true"
+         *     android:taskAffinity="" />
* * @param intent the {@link PendingIntent} for an activity * @return this object for method chaining @@ -3217,12 +3235,17 @@ public class Notification implements Parcelable /** * Set an action from this notification's actions to be clickable with the content of - * this notification page. This action will no longer display separately from the - * notification content. This action's icon will display with optional subtext provided - * by the action's title. - * @param actionIndex The index of the action to hoist on the current notification page. - * If wearable actions are present, this index will apply to that list, - * otherwise it will apply to the main notification's actions list. + * this notification. This action will no longer display separately from the + * notification's content. + * + *

For notifications with multiple pages, child pages can also have content action's + * set, although the list of available actions comes from the main notification and not + * from the child page's notification. + * + * @param actionIndex The index of the action to hoist onto the current notification page. + * If wearable actions were added to the main notification, this index + * will apply to that list, otherwise it will apply to the regular + * actions list. */ public WearableExtender setContentAction(int actionIndex) { mContentActionIndex = actionIndex; @@ -3230,14 +3253,16 @@ public class Notification implements Parcelable } /** - * Get the action index of an action from this notification to show as clickable with - * the content of this notification page. When the user clicks this notification page, - * this action will trigger. This action will no longer display separately from the - * notification content. The action's icon will display with optional subtext provided - * by the action's title. + * Get the action index from this notification's actions to be clickable with the + * content of this notification. This action will no longer display separately + * from the notification's content. * - *

If wearable specific actions are present, this index will apply to that list, - * otherwise it will apply to the main notification's actions list. + *

For notifications with multiple pages, child pages can also have content action's + * set, although the list of available actions comes from the main notification and not + * from the child page's notification. + * + *

If wearable specific actions were added to the main notification, this index will + * apply to that list, otherwise it will apply to the regular actions list. */ public int getContentAction() { return mContentActionIndex;