Adds a BigPicAmbient flag to WearableExtender

This adds the BigPicAmbient flag to WearableExtender, demonstrating that
a BigPictureStyle on a Notification (pimary page or content page)
should be converted to low-bit black and white on entering ambient,
and should stick around during ambient instead of being closed. This
is mostly for QR and barcodes for situations akin to flights.

Bug:28042177
Change-Id: I84065ab3966301c063d393b8fa6451ec527944b9
diff --git a/core/java/android/app/Notification.java b/core/java/android/app/Notification.java
index 052874f..25c098c 100644
--- a/core/java/android/app/Notification.java
+++ b/core/java/android/app/Notification.java
@@ -5394,6 +5394,7 @@
         private static final int FLAG_HINT_SHOW_BACKGROUND_ONLY = 1 << 2;
         private static final int FLAG_START_SCROLL_BOTTOM = 1 << 3;
         private static final int FLAG_HINT_AVOID_BACKGROUND_CLIPPING = 1 << 4;
+        private static final int FLAG_BIG_PICTURE_AMBIENT = 1 << 5;
         private static final int FLAG_HINT_CONTENT_INTENT_LAUNCHES_ACTIVITY = 1 << 6;
 
         // Default value for flags integer
@@ -5962,6 +5963,29 @@
         }
 
         /**
+         * Set a hint that this notification's {@link BigPictureStyle} (if present) should be
+         * converted to low-bit and displayed in ambient mode, especially useful for barcodes and
+         * qr codes, as well as other simple black-and-white tickets.
+         * @param hintAmbientBigPicture {@code true} to enable converstion and ambient.
+         * @return this object for method chaining
+         */
+        public WearableExtender setHintAmbientBigPicture(boolean hintAmbientBigPicture) {
+            setFlag(FLAG_BIG_PICTURE_AMBIENT, hintAmbientBigPicture);
+            return this;
+        }
+
+        /**
+         * Get a hint that this notification's {@link BigPictureStyle} (if present) should be
+         * converted to low-bit and displayed in ambient mode, especially useful for barcodes and
+         * qr codes, as well as other simple black-and-white tickets.
+         * @return {@code true} if it should be displayed in ambient, false otherwise
+         * otherwise. The default value is {@code false} if this was never set.
+         */
+        public boolean getHintAmbientBigPicture() {
+            return (mFlags & FLAG_BIG_PICTURE_AMBIENT) != 0;
+        }
+
+        /**
          * Set a hint that this notification's content intent will launch an {@link Activity}
          * directly, telling the platform that it can generate the appropriate transitions.
          * @param hintContentIntentLaunchesActivity {@code true} if the content intent will launch