Merge "docs: studio disk space requirements typo" into lmp-docs
diff --git a/core/java/android/app/Activity.java b/core/java/android/app/Activity.java
index 4b705dd..48dd584 100644
--- a/core/java/android/app/Activity.java
+++ b/core/java/android/app/Activity.java
@@ -4751,6 +4751,10 @@
      * <p>You will receive this call immediately before onResume() when your
      * activity is re-starting.
      *
+     * <p>This method is never invoked if your activity sets
+     * {@link android.R.styleable#AndroidManifestActivity_noHistory noHistory} to
+     * <code>true</code>.
+     *
      * @param requestCode The integer request code originally supplied to
      *                    startActivityForResult(), allowing you to identify who this
      *                    result came from.
diff --git a/core/java/android/content/Intent.java b/core/java/android/content/Intent.java
index af6f181..7ce4d8d 100644
--- a/core/java/android/content/Intent.java
+++ b/core/java/android/content/Intent.java
@@ -3535,6 +3535,10 @@
      * the user navigates away from it, the activity is finished.  This may also
      * be set with the {@link android.R.styleable#AndroidManifestActivity_noHistory
      * noHistory} attribute.
+     *
+     * <p>If set, {@link android.app.Activity#onActivityResult onActivityResult()}
+     * is never invoked when the current activity starts a new activity which
+     * sets a result and finishes.
      */
     public static final int FLAG_ACTIVITY_NO_HISTORY = 0x40000000;
     /**
diff --git a/core/java/android/os/storage/IMountService.java b/core/java/android/os/storage/IMountService.java
index cf407f4..116110e 100644
--- a/core/java/android/os/storage/IMountService.java
+++ b/core/java/android/os/storage/IMountService.java
@@ -856,6 +856,38 @@
                 }
                 return _result;
             }
+
+            @Override
+            public long lastMaintenance() throws RemoteException {
+                Parcel _data = Parcel.obtain();
+                Parcel _reply = Parcel.obtain();
+                long _result;
+                try {
+                    _data.writeInterfaceToken(DESCRIPTOR);
+                    mRemote.transact(Stub.TRANSACTION_lastMaintenance, _data, _reply, 0);
+                    _reply.readException();
+                    _result = _reply.readLong();
+                } finally {
+                    _reply.recycle();
+                    _data.recycle();
+                }
+                return _result;
+            }
+
+            @Override
+            public void runMaintenance() throws RemoteException {
+                Parcel _data = Parcel.obtain();
+                Parcel _reply = Parcel.obtain();
+                try {
+                    _data.writeInterfaceToken(DESCRIPTOR);
+                    mRemote.transact(Stub.TRANSACTION_runMaintenance, _data, _reply, 0);
+                    _reply.readException();
+                } finally {
+                    _reply.recycle();
+                    _data.recycle();
+                }
+                return;
+            }
         }
 
         private static final String DESCRIPTOR = "IMountService";
@@ -942,6 +974,10 @@
 
         static final int TRANSACTION_resizeSecureContainer = IBinder.FIRST_CALL_TRANSACTION + 40;
 
+        static final int TRANSACTION_lastMaintenance = IBinder.FIRST_CALL_TRANSACTION + 41;
+
+        static final int TRANSACTION_runMaintenance = IBinder.FIRST_CALL_TRANSACTION + 42;
+
         /**
          * Cast an IBinder object into an IMountService interface, generating a
          * proxy if needed.
@@ -1347,6 +1383,19 @@
                     reply.writeInt(resultCode);
                     return true;
                 }
+                case TRANSACTION_lastMaintenance: {
+                    data.enforceInterface(DESCRIPTOR);
+                    long lastMaintenance = lastMaintenance();
+                    reply.writeNoException();
+                    reply.writeLong(lastMaintenance);
+                    return true;
+                }
+                case TRANSACTION_runMaintenance: {
+                    data.enforceInterface(DESCRIPTOR);
+                    runMaintenance();
+                    reply.writeNoException();
+                    return true;
+                }
             }
             return super.onTransact(code, data, reply, flags);
         }
@@ -1617,4 +1666,18 @@
     public String getField(String field) throws RemoteException;
 
     public int resizeSecureContainer(String id, int sizeMb, String key) throws RemoteException;
+
+    /**
+     * Report the time of the last maintenance operation such as fstrim.
+     * @return Timestamp of the last maintenance operation, in the
+     *     System.currentTimeMillis() time base
+     * @throws RemoteException
+     */
+    public long lastMaintenance() throws RemoteException;
+
+    /**
+     * Kick off an immediate maintenance operation
+     * @throws RemoteException
+     */
+    public void runMaintenance() throws RemoteException;
 }
diff --git a/core/java/android/preference/Preference.java b/core/java/android/preference/Preference.java
index 56d5617..0224c73 100644
--- a/core/java/android/preference/Preference.java
+++ b/core/java/android/preference/Preference.java
@@ -215,7 +215,7 @@
 
         final TypedArray a = context.obtainStyledAttributes(
                 attrs, com.android.internal.R.styleable.Preference, defStyleAttr, defStyleRes);
-        for (int i = a.getIndexCount(); i >= 0; i--) {
+        for (int i = a.getIndexCount() - 1; i >= 0; i--) {
             int attr = a.getIndex(i); 
             switch (attr) {
                 case com.android.internal.R.styleable.Preference_icon:
diff --git a/core/java/android/preference/PreferenceManager.java b/core/java/android/preference/PreferenceManager.java
index ad940c6..0a0e625 100644
--- a/core/java/android/preference/PreferenceManager.java
+++ b/core/java/android/preference/PreferenceManager.java
@@ -156,7 +156,7 @@
      * should be used ANY time a preference will be displayed, since some preference
      * types need an Activity for managed queries.
      */
-    private PreferenceManager(Context context) {
+    /*package*/ PreferenceManager(Context context) {
         init(context);
     }
 
diff --git a/core/java/android/provider/Settings.java b/core/java/android/provider/Settings.java
index 79e84d9..73c7cc3 100644
--- a/core/java/android/provider/Settings.java
+++ b/core/java/android/provider/Settings.java
@@ -5544,6 +5544,13 @@
        public static final String PACKAGE_VERIFIER_INCLUDE_ADB = "verifier_verify_adb_installs";
 
        /**
+        * Time since last fstrim (milliseconds) after which we force one to happen
+        * during device startup.  If unset, the default is 3 days.
+        * @hide
+        */
+       public static final String FSTRIM_MANDATORY_INTERVAL = "fstrim_mandatory_interval";
+
+       /**
         * The interval in milliseconds at which to check packet counts on the
         * mobile data interface when screen is on, to detect possible data
         * connection problems.
diff --git a/core/java/android/widget/TimePickerSpinnerDelegate.java b/core/java/android/widget/TimePickerSpinnerDelegate.java
index 73e05e8..61d3d0f 100644
--- a/core/java/android/widget/TimePickerSpinnerDelegate.java
+++ b/core/java/android/widget/TimePickerSpinnerDelegate.java
@@ -61,6 +61,8 @@
     // Also NOT a real index, just used for keyboard mode.
     private static final int ENABLE_PICKER_INDEX = 3;
 
+    // LayoutLib relies on these constants. Change TimePickerSpinnerDelegate_Delegate if
+    // modifying these.
     private static final int AM = 0;
     private static final int PM = 1;
 
diff --git a/core/res/res/values-mcc204-mnc04/config.xml b/core/res/res/values-mcc204-mnc04/config.xml
index 3c03814..c9c96de 100644
--- a/core/res/res/values-mcc204-mnc04/config.xml
+++ b/core/res/res/values-mcc204-mnc04/config.xml
@@ -31,4 +31,9 @@
         <item>"*611:+19085594899,BAE0000000000000"</item>
         <item>"*86:+1MDN,BAE0000000000000"</item>
     </string-array>
+
+    <string-array translatable="false" name="config_sms_convert_destination_number_support">
+        <item>true;BAE0000000000000</item>
+        <item>false</item>
+    </string-array>
 </resources>
diff --git a/core/res/res/values-mcc310-mnc004/config.xml b/core/res/res/values-mcc310-mnc004/config.xml
index 423e250..6a34a3d 100644
--- a/core/res/res/values-mcc310-mnc004/config.xml
+++ b/core/res/res/values-mcc310-mnc004/config.xml
@@ -34,4 +34,9 @@
     </string-array>
 
     <bool name="config_auto_attach_data_on_creation">false</bool>
+
+    <string-array translatable="false" name="config_sms_convert_destination_number_support">
+        <item>true</item>
+    </string-array>
+
 </resources>
diff --git a/core/res/res/values-mcc311-mnc480/config.xml b/core/res/res/values-mcc311-mnc480/config.xml
index c2be340..379e129 100644
--- a/core/res/res/values-mcc311-mnc480/config.xml
+++ b/core/res/res/values-mcc311-mnc480/config.xml
@@ -49,4 +49,9 @@
         <item>"*611:+19085594899,"</item>
         <item>"*86:+1MDN,"</item>
     </string-array>
+
+    <string-array translatable="false" name="config_sms_convert_destination_number_support">
+        <item>true</item>
+    </string-array>
+
 </resources>
diff --git a/core/res/res/values/config.xml b/core/res/res/values/config.xml
index 1ea37f0..8006659 100644
--- a/core/res/res/values/config.xml
+++ b/core/res/res/values/config.xml
@@ -1853,4 +1853,20 @@
     <bool name="config_switch_phone_on_voice_reg_state_change">true</bool>
 
     <bool name="config_sms_force_7bit_encoding">false</bool>
+
+    <!-- This config is used to check if the carrier requires converting destination
+         number before sending out a SMS.
+         Formats for this configuration as below:
+         [true or false][;optional gid]
+         The logic to pick up the configuration:
+         (1) If the "config_sms_convert_destination_number_support" array has no gid
+             special item, the last one will be picked
+         (2) If the "config_sms_convert_destination_number_support" array has gid special
+             item and it matches the current sim's gid, it will be picked.
+         (3) If the "config_sms_convert_destination_number_support" array has gid special
+             item but it doesn't match the current sim's gid, the last one without gid
+             will be picked -->
+    <string-array translatable="false" name="config_sms_convert_destination_number_support">
+        <item>false</item>
+    </string-array>
 </resources>
diff --git a/core/res/res/values/strings.xml b/core/res/res/values/strings.xml
index c156887..ab97e17 100644
--- a/core/res/res/values/strings.xml
+++ b/core/res/res/values/strings.xml
@@ -3508,6 +3508,9 @@
     <!-- [CHAR LIMIT=40] Title of dialog that is shown when performing a system upgrade. -->
     <string name="android_upgrading_title">Android is upgrading\u2026</string>
 
+    <!-- [CHAR LIMIT=NONE] Message shown in upgrading dialog when doing an fstrim. -->
+    <string name="android_upgrading_fstrim">Optimizing storage.</string>
+
     <!-- [CHAR LIMIT=NONE] Message shown in upgrading dialog for each .apk that is optimized. -->
     <string name="android_upgrading_apk">Optimizing app
         <xliff:g id="number" example="123">%1$d</xliff:g> of
diff --git a/core/res/res/values/symbols.xml b/core/res/res/values/symbols.xml
index 2a9e1d1..3078722 100644
--- a/core/res/res/values/symbols.xml
+++ b/core/res/res/values/symbols.xml
@@ -1644,6 +1644,7 @@
   <java-symbol type="string" name="aerr_application" />
   <java-symbol type="string" name="aerr_process" />
   <java-symbol type="string" name="aerr_title" />
+  <java-symbol type="string" name="android_upgrading_fstrim" />
   <java-symbol type="string" name="android_upgrading_apk" />
   <java-symbol type="string" name="android_upgrading_complete" />
   <java-symbol type="string" name="android_upgrading_starting_apps" />
@@ -2072,4 +2073,5 @@
   <java-symbol type="bool" name="config_switch_phone_on_voice_reg_state_change" />
   <java-symbol type="string" name="whichHomeApplicationNamed" />
   <java-symbol type="bool" name="config_sms_force_7bit_encoding" />
+  <java-symbol type="array" name="config_sms_convert_destination_number_support" />
 </resources>
diff --git a/docs/html/about/dashboards/index.jd b/docs/html/about/dashboards/index.jd
index 063084d..5265f20 100644
--- a/docs/html/about/dashboards/index.jd
+++ b/docs/html/about/dashboards/index.jd
@@ -57,7 +57,7 @@
 </div>
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on December 1, 2014.
+<p style="clear:both"><em>Data collected during a 7-day period ending on January 5, 2015.
 <br/>Any versions with less than 0.1% distribution are not shown.</em>
 </p>
 
@@ -88,7 +88,7 @@
 </div>
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on December 1, 2014.
+<p style="clear:both"><em>Data collected during a 7-day period ending on January 5, 2015.
 
 <br/>Any screen configurations with less than 0.1% distribution are not shown.</em></p>
 
@@ -108,7 +108,7 @@
 
 
 <img alt="" style="float:right"
-src="//chart.googleapis.com/chart?chl=GL%202.0%7CGL%203.0&chf=bg%2Cs%2C00000000&chd=t%3A72.2%2C27.8&chco=c4df9b%2C6fad0c&cht=p&chs=400x250" />
+src="//chart.googleapis.com/chart?chl=GL%202.0%7CGL%203.0&chf=bg%2Cs%2C00000000&chd=t%3A69.9%2C30.1&chco=c4df9b%2C6fad0c&cht=p&chs=400x250" />
 
 
 <p>To declare which version of OpenGL ES your application requires, you should use the {@code
@@ -127,17 +127,17 @@
 </tr>
 <tr>
 <td>2.0</td>
-<td>72.2%</td>
+<td>69.9%</td>
 </tr>
 <tr>
 <td>3.0</td>
-<td>27.8%</td>
+<td>30.1%</td>
 </tr>
 </table>
 
 
 
-<p style="clear:both"><em>Data collected during a 7-day period ending on December 1, 2014</em></p>
+<p style="clear:both"><em>Data collected during a 7-day period ending on January 5, 2015</em></p>
 
 
 
@@ -155,42 +155,42 @@
 var VERSION_DATA =
 [
   {
-    "chart": "//chart.googleapis.com/chart?chl=Froyo%7CGingerbread%7CIce%20Cream%20Sandwich%7CJelly%20Bean%7CKitKat&chf=bg%2Cs%2C00000000&chd=t%3A0.5%2C9.1%2C7.8%2C48.7%2C33.9&chco=c4df9b%2C6fad0c&cht=p&chs=500x250",
+    "chart": "//chart.googleapis.com/chart?cht=p&chs=500x250&chco=c4df9b%2C6fad0c&chd=t%3A0.4%2C7.8%2C6.7%2C46.0%2C39.1&chf=bg%2Cs%2C00000000&chl=Froyo%7CGingerbread%7CIce%20Cream%20Sandwich%7CJelly%20Bean%7CKitKat",
     "data": [
       {
         "api": 8,
         "name": "Froyo",
-        "perc": "0.5"
+        "perc": "0.4"
       },
       {
         "api": 10,
         "name": "Gingerbread",
-        "perc": "9.1"
+        "perc": "7.8"
       },
       {
         "api": 15,
         "name": "Ice Cream Sandwich",
-        "perc": "7.8"
+        "perc": "6.7"
       },
       {
         "api": 16,
         "name": "Jelly Bean",
-        "perc": "21.3"
+        "perc": "19.2"
       },
       {
         "api": 17,
         "name": "Jelly Bean",
-        "perc": "20.4"
+        "perc": "20.3"
       },
       {
         "api": 18,
         "name": "Jelly Bean",
-        "perc": "7.0"
+        "perc": "6.5"
       },
       {
         "api": 19,
         "name": "KitKat",
-        "perc": "33.9"
+        "perc": "39.1"
       }
     ]
   }
@@ -203,29 +203,29 @@
     "data": {
       "Large": {
         "hdpi": "0.6",
-        "ldpi": "0.5",
-        "mdpi": "4.6",
-        "tvdpi": "2.0",
+        "ldpi": "0.6",
+        "mdpi": "5.4",
+        "tvdpi": "2.3",
         "xhdpi": "0.6"
       },
       "Normal": {
-        "hdpi": "36.9",
-        "mdpi": "9.4",
-        "tvdpi": "0.2",
-        "xhdpi": "18.8",
+        "hdpi": "37.5",
+        "mdpi": "8.8",
+        "tvdpi": "0.1",
+        "xhdpi": "18.4",
         "xxhdpi": "16.3"
       },
       "Small": {
-        "ldpi": "5.4"
+        "ldpi": "4.8"
       },
       "Xlarge": {
         "hdpi": "0.3",
-        "mdpi": "3.8",
+        "mdpi": "3.7",
         "xhdpi": "0.6"
       }
     },
-    "densitychart": "//chart.googleapis.com/chart?chl=ldpi%7Cmdpi%7Ctvdpi%7Chdpi%7Cxhdpi%7Cxxhdpi&chf=bg%2Cs%2C00000000&chd=t%3A5.9%2C17.8%2C2.2%2C37.8%2C20.0%2C16.3&chco=c4df9b%2C6fad0c&cht=p&chs=400x250",
-    "layoutchart": "//chart.googleapis.com/chart?chl=Xlarge%7CLarge%7CNormal%7CSmall&chf=bg%2Cs%2C00000000&chd=t%3A4.7%2C8.3%2C81.6%2C5.4&chco=c4df9b%2C6fad0c&cht=p&chs=400x250"
+    "densitychart": "//chart.googleapis.com/chart?cht=p&chs=400x250&chco=c4df9b%2C6fad0c&chd=t%3A5.4%2C17.9%2C2.4%2C38.4%2C19.6%2C16.3&chf=bg%2Cs%2C00000000&chl=ldpi%7Cmdpi%7Ctvdpi%7Chdpi%7Cxhdpi%7Cxxhdpi",
+    "layoutchart": "//chart.googleapis.com/chart?cht=p&chs=400x250&chco=c4df9b%2C6fad0c&chd=t%3A4.6%2C9.5%2C81.1%2C4.8&chf=bg%2Cs%2C00000000&chl=Xlarge%7CLarge%7CNormal%7CSmall"
   }
 ];
 
diff --git a/docs/html/distribute/analyze/analyze_toc.cs b/docs/html/distribute/analyze/analyze_toc.cs
new file mode 100644
index 0000000..0273381
--- /dev/null
+++ b/docs/html/distribute/analyze/analyze_toc.cs
@@ -0,0 +1,46 @@
+<ul id="nav">
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/start.html">
+        <span class="en">Get Started with Analytics</span></a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/measure.html">
+        <span class="en">Measure What Matters</span></a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/understand-user-value.html">
+        <span class="en">Understand User Value</span></a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/improve-roi.html">
+        <span class="en">Improve Marketing ROI</span></a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/build-better-apps.html">
+        <span class="en">Build Better Apps</span></a>
+    </div>
+  </li>
+  <li class="nav-section">
+    <div class="nav-section-header empty" style="font-weight:normal"><a href="<?cs
+        var:toroot?>distribute/analyze/google-services.html">
+        <span class="en">Act Across Google Services</span></a>
+    </div>
+  </li>
+</ul>
+
+<script type="text/javascript">
+<!--
+    buildToggleLists();
+    changeNavLang(getLangPref());
+//-->
+</script>
+
diff --git a/docs/html/distribute/analyze/build-better-apps.jd b/docs/html/distribute/analyze/build-better-apps.jd
new file mode 100644
index 0000000..823562a
--- /dev/null
+++ b/docs/html/distribute/analyze/build-better-apps.jd
@@ -0,0 +1,116 @@
+page.title=Build Better Apps
+page.metaDescription=Get actionable insights to optimize your app and learn what works best for your business.
+page.tags="analytics, user behavior"
+
+@jd:body
+
+<p>
+  While looking at your data in beautiful reports can be fun, the real power of
+  Google Analytics is uncovered when you derive insights from your data. Having
+  Analytics in your app can help you identify where in your app users spend
+  most time; it can also help you see where users are getting stuck. You may
+  find that users who tend to take a specific action are more likely to
+  convert, so see if drawing more users to that action has an impact on your
+  conversion rate.
+</p>
+
+<h2 id="actions">What Actions Get People to Convert?</h2>
+
+<p>
+  Go beyond looking at the sheer number of actions people take in your app.
+  Combine your custom event data with conversion metrics and see what actions
+  tend to have the highest conversion rates. Build custom reports to identify
+  which events or screens have the highest conversion rate or revenue. Once you
+  know what’s successful at getting users to convert, derive a hypothesis as to
+  why an event or screen might have good results. Then, if appropriate, drive
+  more users there to see if it has an impact on conversion metrics.
+</p>
+<p>
+  In the example below, <em>Shopping in Star Shop</em> has a high conversion;
+  this result isn't surprising since users are indicating that they're
+  interested in buying by being in the shop. More interesting is seeing that if
+  someone Lost More than 10 Times, the conversion rate is low and those users
+  didn’t generate much money. It might be worth offering a promotion after 8 or
+  9 losses to keep the user interested. Also notice that users who started a
+  <em>New Game after Gameover</em> generated lots of revenue. You might
+  hypothesize that those users are determined to take another chance, so more
+  inclined to convert. Lastly, the <em>Discovered Secret Stairwell</em> is
+  particularly interesting &mdash; the conversion rate is fairly low, but it
+  generated lots of revenue, indicating that it was potentially difficult to
+  find, but those that discovered it purchased a lot. It may be worth seeing if
+  driving users to find the staircase could increase conversion.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/event-actions.png">
+</div>
+
+<h2 id="flows">Know Your Flows</h2>
+<p>
+  Your home screen is probably the most visited screen in your app. But do you
+  know what happens after that? What percentage of users navigate through which
+  flows, and where do they drop off the most? In a gaming app, it may be useful
+  to investigate which levels have the highest percentage of users leaving your
+  app, in order to see where users find it difficult to proceed. You can then
+  take action by modifying sections of your app that might need improvement.
+</p>
+
+<p>
+  Similarly if you've an e-commerce app, the behavior flow report will show you
+  at which stages of the purchase flow the highest percentage of users abandon
+  their purchase. By taking these data and improving your purchase flows, you
+  may be able to reduce your drop-off rates.
+</p>
+
+<p>
+  In the example below, users tend to click the Level Up action after they
+  consult the Sorcerer. If users tend to get stuck on a level, then you might
+  want to guide them to see the sorcerer before completing a task.
+</p>
+
+<div>
+<img itemprop="image" src="{@docRoot}distribute/analyze/images/flows.png">
+</div>
+
+
+<h2 id="test">Not Sure of the Right Approach? Test it</h2>
+
+<p>
+  Stop guessing when it comes to finding the right features for your audience.
+  Use Content Experiments in your app to run A/B tests &mdash; without needing
+  to update your app. Think a stronger call to action like “Buy Now!” will
+  drive more purchases than the more common phrase “Checkout”? Test it! Content
+  Experiments uses Google Analytics data to optimize towards your objectives
+  and Google Tag Manager to control the test from the server &mdash; so you can
+  test multiple variations of the same app at the same time. And since this is
+  a standard feature of Google Analytics, you don’t have to set up additional
+  tagging for your KPIs; you simply focus on building your variations.
+</p>
+
+<p>
+  Experiment results are displayed in Google Analytics reports that summarize
+  all of the key information about your experiment. Experiments and Variations
+  are also available as user segments, which allow you to superimpose that
+  information over all of your Google Analytics reports to gain even deeper
+  insights. However, don’t worry about keeping an eye on your reports: you can
+  set an experiment to lock-in the winning variation for all of your users
+  automatically.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/a_b_testing.png">
+</div>
+
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" 
+  data-query="collection:distribute/analyzebuild"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
diff --git a/docs/html/distribute/analyze/google-services.jd b/docs/html/distribute/analyze/google-services.jd
new file mode 100644
index 0000000..0d82c8a
--- /dev/null
+++ b/docs/html/distribute/analyze/google-services.jd
@@ -0,0 +1,117 @@
+page.title=Act Across Google Services
+page.metaDescription=Find your Analytics reports where you need them within Google Play, AdMob, and AdWords.
+page.tags="analytics, user behavior"
+
+@jd:body
+
+<p>
+  Google Analytics integrates seamlessly with a wide range of Google products.
+  You’ll find your Google Analytics data available to you in the Google Play
+  Developer Console, AdMob, AdWords, Google Tag Manager, and more. This makes
+  your Analytics data even more valuable, as it's available where you make
+  decisions in the Google products you use the most.
+</p>
+<p class="caution">
+  <strong>Tip</strong>: Make sure to link your Google Analytics account with
+  your Google Play developer account. This lets you set up an Analytics
+  property for each of your apps to track usage and behavior in the apps, all
+  in one place. For details on how to link your see <a href=
+  "https://support.google.com/analytics/answer/2956981">Link Google Analytics
+  and Google Play</a>.
+</p>
+
+<h2 id="remarket">Target and Remarket to Your Users in AdWords</h2>
+
+<p>
+  Google Analytics has one of the easiest to use yet most sophisticated
+  segmentation tools. You can slice and dice your data in tens-of-thousands of
+  different ways, by specifying the criteria you want to zoom-in on. Using
+  these segments you can create Audience Lists of app users to remarket to.
+  Perhaps you notice that certain users haven’t come back in 2 weeks, and you’d
+  like to reach out to remind them to return. Creating lists with this sort of
+  sophistication is easier than ever using Google Analytics. You can even
+  create lists directly from your reports when you find a segment that is
+  particularly interesting.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/adwords_remarketing.png">
+</div>
+
+<h2 id="strategies">No More One-Size-Fits-All Monetization Strategies</h2>
+
+<p>
+  Users are different, so why force them all to have the same experience? Using
+  Audience Lists, you can serve users experiences that are best tuned to their
+  usage patterns. In AdMob, for example, you can select a group of high value
+  users, those who have made purchases, and serve them IAP ads and experiences;
+  however, for users that are less likely to make purchases you can serve them
+  ads instead. Pairing the right users with the right experiences is a key part
+  of a modern, targeted monetization strategy. And Google Analytics’ countless
+  segmentation possibilities means unlimited monetization opportunities.
+</p>
+<div>
+<img src="{@docRoot}distribute/analyze/images/in_app_targeting.png">
+</div>
+
+<p>
+  Delivering users the best experience with Google Analytics in AdMob: past
+  purchasers (left image) see ads for special in-app purchase promotions, while
+  occasional users (right image) contribute to your revenue with monetization
+  from ads.
+</p>
+
+
+<h2 id="richreporting">Rich Reporting Where You Need It Most</h2>
+
+<div>
+<img itemprop="image" src="{@docRoot}distribute/analyze/images/admob_integration.png">
+</div>
+
+<p>
+  See your data in context. Google Analytics is available inside AdMob without
+  leaving the page; with this integration, you can now slice and dice your data
+  in the same place that you Monetize your app. Using Analytics in AdMob, you
+  can identify interesting segments and then create Audience lists based on
+  those criteria. You can then target AdMob monetization strategies to those
+  different user groups, to serve them the best experiences.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/developer_console.png">
+</div>
+
+<p>
+  By linking your Analytics account to the Google Play Developer Console, you
+  can see your in-app data in the context of the Play Store. This allows you to
+  see any differences in usage patterns by variables such as region, device,
+  time, day, and more.
+</p>
+
+<h2 id="optimize">Optimize Your App to Reach Your Objectives</h2>
+
+<p>
+  By using Content Experiments in Google Tag Manager, you can run A/B tests on
+  app elements. Are your social sharing buttons better at the top or bottom? Is
+  algorithm X or algorithm Y better for cross-selling products in your app?
+  With Content Experiments you can gather data from user to guide your
+  optimizations and take the guesswork out of the equation.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/a_b_testing.png">
+</div>
+
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" 
+  data-query="collection:distribute/analyzeact"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
diff --git a/docs/html/distribute/analyze/images/a_b_testing.png b/docs/html/distribute/analyze/images/a_b_testing.png
new file mode 100644
index 0000000..14699b9
--- /dev/null
+++ b/docs/html/distribute/analyze/images/a_b_testing.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/active_users.png b/docs/html/distribute/analyze/images/active_users.png
new file mode 100644
index 0000000..e1dfc70
--- /dev/null
+++ b/docs/html/distribute/analyze/images/active_users.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/admob_integration.png b/docs/html/distribute/analyze/images/admob_integration.png
new file mode 100644
index 0000000..0fb3889
--- /dev/null
+++ b/docs/html/distribute/analyze/images/admob_integration.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/adwords_remarketing.png b/docs/html/distribute/analyze/images/adwords_remarketing.png
new file mode 100644
index 0000000..c3072d9
--- /dev/null
+++ b/docs/html/distribute/analyze/images/adwords_remarketing.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/adwords_reporting.png b/docs/html/distribute/analyze/images/adwords_reporting.png
new file mode 100644
index 0000000..3001c749
--- /dev/null
+++ b/docs/html/distribute/analyze/images/adwords_reporting.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/cohort_reporting.png b/docs/html/distribute/analyze/images/cohort_reporting.png
new file mode 100644
index 0000000..1960d91
--- /dev/null
+++ b/docs/html/distribute/analyze/images/cohort_reporting.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/demographics.png b/docs/html/distribute/analyze/images/demographics.png
new file mode 100644
index 0000000..e837eb6
--- /dev/null
+++ b/docs/html/distribute/analyze/images/demographics.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/developer_console.png b/docs/html/distribute/analyze/images/developer_console.png
new file mode 100644
index 0000000..71be97d
--- /dev/null
+++ b/docs/html/distribute/analyze/images/developer_console.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/ecommerce.png b/docs/html/distribute/analyze/images/ecommerce.png
new file mode 100644
index 0000000..4d5e105
--- /dev/null
+++ b/docs/html/distribute/analyze/images/ecommerce.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/event-actions.png b/docs/html/distribute/analyze/images/event-actions.png
new file mode 100644
index 0000000..3c88079
--- /dev/null
+++ b/docs/html/distribute/analyze/images/event-actions.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/event_conversions.png b/docs/html/distribute/analyze/images/event_conversions.png
new file mode 100644
index 0000000..3c88079
--- /dev/null
+++ b/docs/html/distribute/analyze/images/event_conversions.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/events.png b/docs/html/distribute/analyze/images/events.png
new file mode 100644
index 0000000..ff9d9a9
--- /dev/null
+++ b/docs/html/distribute/analyze/images/events.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/flow.png b/docs/html/distribute/analyze/images/flow.png
new file mode 100644
index 0000000..97143e2
--- /dev/null
+++ b/docs/html/distribute/analyze/images/flow.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/flows.png b/docs/html/distribute/analyze/images/flows.png
new file mode 100644
index 0000000..7d2e1f2
--- /dev/null
+++ b/docs/html/distribute/analyze/images/flows.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/in_app_targeting.png b/docs/html/distribute/analyze/images/in_app_targeting.png
new file mode 100644
index 0000000..cfb2d2c
--- /dev/null
+++ b/docs/html/distribute/analyze/images/in_app_targeting.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/language-report.png b/docs/html/distribute/analyze/images/language-report.png
new file mode 100644
index 0000000..60498c0
--- /dev/null
+++ b/docs/html/distribute/analyze/images/language-report.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/realtime.png b/docs/html/distribute/analyze/images/realtime.png
new file mode 100644
index 0000000..fd7bb5d
--- /dev/null
+++ b/docs/html/distribute/analyze/images/realtime.png
Binary files differ
diff --git a/docs/html/distribute/analyze/images/segmentation.png b/docs/html/distribute/analyze/images/segmentation.png
new file mode 100644
index 0000000..bb15c9d
--- /dev/null
+++ b/docs/html/distribute/analyze/images/segmentation.png
Binary files differ
diff --git a/docs/html/distribute/analyze/improve-roi.jd b/docs/html/distribute/analyze/improve-roi.jd
new file mode 100644
index 0000000..6c05962
--- /dev/null
+++ b/docs/html/distribute/analyze/improve-roi.jd
@@ -0,0 +1,163 @@
+page.title=Improve Your Marketing ROI
+page.metaDescription=Combine the power of Analytics with other data sources to understand the performance of each of your marketing channels.
+page.tags="analytics, user behavior"
+
+@jd:body
+
+<p>
+  You want to get your apps in the hands of as many interested people as
+  possible and there are many ways of doing that. Whatever channels you use,
+  measuring their effectiveness is essential. You want to know that they're
+  not just driving installs, but acquiring users who are likely to engage or
+  convert over time &mdash; and that it's being done cost efficiently.
+</p>
+
+<h2 id="campaignattribution">Multi-Network Campaign Attribution</h2>
+
+<p>
+  Advertising campaigns are being used increasingly to drive new users to
+  download your app using different ad networks, formats, and payment methods.
+  A good campaign will bring not only downloads, but also users who are highly
+  engaged. If you want to get more visibility into which campaigns are driving
+  the highest value, measuring cost per download is only a partial view.
+</p>
+
+<p>
+  Combine the power of Google Analytics with other data you have to get an
+  unbiased view of the performance of each network: from cost per download to
+  ROI analysis for each of your marketing channels. You can tailor
+  your acquisition strategies and maximize in-app revenue. Here is an example
+  of how to approach this type of analysis:
+</p>
+
+<table>
+<tr>
+<th>Network</th>
+<th>Cost per Install (from Networks)</th>
+<th>30 day Revenue per user</th>
+<th># of downloads</th>
+<th>Total budget spent</th>
+<th>Total Revenue</th>
+<th>Profit</th>
+</tr>
+<tr>
+<td>Alpha</td>
+<td>$0.80</td>
+<td>$0.95</td>
+<td>3,500</td>
+<td>$2,800.00</td>
+<td>$3,325.00</td>
+<td>$525.00</td>
+</tr>
+<tr>
+<td>Beta</td>
+<td>$2.10</td>
+<td>$2.15</td>
+<td>2,500</td>
+<td>$5,250.00</td>
+<td>$5,375.00</td>
+<td>$125.00</td>
+</tr>
+<tr>
+<td>Gamma</td>
+<td>$5.00</td>
+<td>$6.20</td>
+<td>700</td>
+<td>$3,500.00</td>
+<td>$4,340.00</td>
+<td>$840.00</td>
+</tr>
+</table>
+
+<p>
+  When analyzing networks’ performance, it's important to take into
+  consideration more than just the cost per install. In the example, all the
+  networks are providing positive ROI, as the positive profit illustrates;
+  however, each channel has different strengths depending on the business
+  objective:
+</p>
+
+<ul>
+  <li>Network Alpha is very efficient in driving high download volumes, but
+  users are not spending as much as users from the other networks
+  </li>
+
+  <li>Network Beta is driving more revenue than any other network, but the net
+  profit is not as high
+  </li>
+
+  <li>Network Gamma has a strong profit, but it is not delivering similar
+  download volumes
+  </li>
+</ul>
+
+<p>
+  Depending on your business objectives you can approach acquisition marketing
+  in a variety of ways; for the best analytical approach capture a holistic
+  picture in order to optimize your campaigns &mdash; factoring engagement and
+  monetization data in with download statistics.
+</p>
+
+<h2 id="installs">Install and Post-Download Conversions</h2>
+
+<p>
+  Installs &mdash; or first launches &mdash; are a key type of conversion, but
+  it’s important to keep in mind that successful apps have users that return
+  regularly. Google Analytics has reports to measure post-download user
+  activities such as how often they come back, how much time they spend in the
+  app, and how much they spend. This can be sliced by acquisition channel to
+  understand which has the most impact.
+</p>
+
+<h2 id="campaigntracking">Campaign Tracking</h2>
+
+<p>
+  You can use a wide range of networks to drive installs of your apps. With
+  Google Analytics you can easily report campaign data from many networks. Once
+  you setup your URLs to pass the correct parameters, you'll see network
+  sources associated with in-app behavioral metrics. As a result, Google
+  Analytics provides a holistic view of your campaign performance from
+  downloads to purchases as well as user retention.
+</p>
+
+<h2 id="camaignreports">AdWords Campaign Reporting</h2>
+
+<p>
+  By linking your AdWords account(s) to Google Analytics you unlock the ability
+  to gain insights into acquisition campaigns, such as which keywords or ad
+  creative works best. These automatic reports show exactly how your search and
+  display campaigns are performing and offer rich insights into the kind of
+  users you’re driving to download your app.
+</p>
+
+<div>
+<img itemprop="image" src="{@docRoot}distribute/analyze/images/adwords_reporting.png">
+</div>
+
+
+<h2 id="flow">Google Play Referral Flow</h2>
+
+<p>
+  When you link your Analytics account to the Play Developer Console you'll
+  start seeing Google Play data automatically flowing into your account.
+  Without having to implement any additional code, you'll see traffic sources
+  for your Play listing page in addition to installs. Some of Google Analytics
+  active user reporting is available in the Play Developer Console as well.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/flow.png">
+</div>
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" 
+  data-query="collection:distribute/analyzeimprove"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
diff --git a/docs/html/distribute/analyze/index.jd b/docs/html/distribute/analyze/index.jd
new file mode 100644
index 0000000..d8ab59e
--- /dev/null
+++ b/docs/html/distribute/analyze/index.jd
@@ -0,0 +1,40 @@
+page.title=Analyze
+page.metaDescription=Understanding what your users do inside your app is the key to engaging and monetizing them.
+section.landing=true
+excludefromsuggestions=true
+nonavpage=true
+
+@jd:body
+
+<p>
+  Successful developers have found that understanding what users do inside
+  their app is the key to engaging and monetizing users in the long run.
+  Various analytics tools are available that let you answer different types of
+  questions. The easiest way to measure what users do in your app is to
+  integrate a single analytics tool, such as Google Analytics, that's capable
+  of answering all of your important questions.
+</p>
+
+<p style="margin-bottom:2em;">
+  With a unique Google Play Developer Console integration, Google Analytics can
+  track how users move through the <a href=
+  "{@docRoot}distribute/analyze/improve-roi.html#flow">acquisition flow</a>
+  from marketing, to a Play store listing, to launching an app. The <a href=
+  "{@docRoot}distribute/analyze/build-better-apps.html#flows">Behavior flow</a>
+  lets you easily identify roadblocks and successful features, so that you can
+  improve user engagement. By implementing <a href=
+  "{@docRoot}distribute/analyze/measure.html#retail">e-commerce tracking</a>
+  you can have a full view of the transactions, such as in-app purchases,
+  happening in your app. And, if you show ads in your app, you can <a href=
+  "{@docRoot}distribute/analyze/google-services.html">access your Analytics
+  data in AdMob</a> and have the full picture of your app revenue.
+</p>
+
+<div class="dynamic-grid">
+
+  <div class="resource-widget resource-flow-layout landing col-16"
+    data-query="collection:distribute/analyzelanding"
+    data-cardSizes="6x6"
+    data-maxResults="10">
+  </div>
+ 
\ No newline at end of file
diff --git a/docs/html/distribute/analyze/measure.jd b/docs/html/distribute/analyze/measure.jd
new file mode 100644
index 0000000..5b29e95
--- /dev/null
+++ b/docs/html/distribute/analyze/measure.jd
@@ -0,0 +1,191 @@
+page.title=Measure What Matters
+page.metaDescription=Customize Analytics to meet your business needs and get meaningful data on your app's performance.
+page.tags="analytics, user behavior"
+
+@jd:body
+
+<p>
+  Once you've implemented Google Analytics, the information you see &mdash;
+  such as how much time users spend in your app and where they are in the world
+  &mdash; will give you insights that let you improve your app experience.
+  While this data gives you an idea of how users are interacting with your app,
+  you will also want to measure the performance of your business more directly.
+  For example, you might want to know how many times your users sign up for
+  your newsletter or how much revenue your app is generating. To get the most
+  out of your Analytics reporting you first need to define your business goals
+  and ensure you've built an appropriate measurement plan.
+</p>
+
+<h2 id="metrics">Metrics & Dimensions</h2>
+
+<p>
+  Google Analytics easy-to-use reporting puts hundreds of
+  <strong>Metrics</strong> and <strong>Dimensions</strong> at your fingertips
+  &mdash; automatically.
+</p>
+
+<table>
+<tr>
+<th>Metrics</th>
+<th>Dimensions</th>
+</tr>
+<tr>
+<td>Metrics are the way that Analytics counts data &mdash; the numbers behind
+the reports. There are over 300 Metrics measured to help you quantify things like:
+<ul>
+<li>Users</li>
+<li>Screen views</li>
+<li>Sessions</li>
+<li>Time in app</li>
+<li>Events</li>
+<li>Crashes</li>
+</ul></td>
+<td>Dimensions help you slice and dice the data so that you can see subsets. Many
+reports have pre-selected dimensions listed as rows in a table. With nearly 350
+dimensions you can break down your analysis by:
+<ul>
+<li>Geography</li>
+<li>Language</li>
+<li>App version</li>
+<li>Device information</li>
+<li>Install source</li>
+<li>Network Information</li>
+</ul></td>
+</tr>
+</table>
+
+
+<h2 id="iab">In-App Purchases</h2>
+
+<p>
+  While Google Play provides reporting about purchases happening in your app,
+  you can gain more insight by seeing how those actions link to other pieces of
+  information. For example, you might want to know which acquisition channel
+  led to the most in-app purchases. Google Analytics allows you to segment your
+  audience to understand who your best customers are and what the levers are
+  that you can use to maximize revenue and turn more people into paying users.
+</p>
+
+
+<h2 id="retail">Retail Sales and Ecommerce Transactions</h2>
+
+<p>
+  When you're selling real products within your app, if you don’t have robust
+  analytics you won't be able to understand the specific purchase behavior of
+  your users and you may draw the wrong conclusions about why some products are
+  selling more than others. Google Analytics Enhanced Ecommerce offers deep
+  insights into shopper behavior, so that you can make smarter decisions. You
+  can:
+</p>
+
+<ul>
+<li>Analyze how far shoppers get in the shopping funnel and where they drop
+off</li>
+<li>Understand which products are viewed most, which are frequently abandoned
+in cart, and which ones convert well</li> 
+<li>Upload rich product metadata to slice and dice your data</li>
+<li>Create rich user segments to delve deeper into your users’ shopping
+behavior and the products they interact with</li>
+</ul>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/ecommerce.png">
+</div>
+
+<h2 id="activity-iab">Activity-Based and In-App Conversions</h2>
+
+<p>
+  Tracking downloads and purchases is an important first step to understanding
+  your app performance, but those data points may not provide the full picture
+  you expect for your business. You may want to track other important goals
+  like signups for a newsletter or achievements unlocked in your game. With
+  Google Analytics you can focus on what matters the most for your business by
+  setting specific actions in your app as goals. You can even understand how
+  these goals are related to key conversion metrics, tying it back to install
+  sources in order to have a comprehensive view of your marketing efforts.
+</p>
+
+<h2 id="customdata">Custom Data</h2>
+
+<p>
+  Activating the Google Analytics library makes many metrics available to you
+  without additional work. Included among these are global metrics and
+  dimensions that apply to many businesses — the number of users, their
+  breakdown by country, length of sessions, and more. However, you'll likely
+  have specific parts of your app or experience that are unique to your
+  business. To capture this type of information, Google Analytics has several
+  ways to send custom data that you define and incorporate into your app. That
+  way, you can really dig in and understand the specifics of how users interact
+  with your app.
+</p>
+
+<h3>Events</h3>
+
+<p>
+  One of the most common and easiest ways to track user behavior is with
+  events. Events are powerful for capturing specific actions that are relevant
+  to your business. They are often used to capture a specific moment in time;
+  an example of an event might be a <em>Level Up</em>. In this example, you'd
+  configure your code to send data to Google Analytics every time a user
+  successfully passed a level. You can send multiple properties with an event
+  so you can group your events based on the analysis you intend to do.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/events.png">
+</div>
+
+<h3>Custom Dimensions</h3>
+
+<p>
+  Custom dimensions are another way to send custom data that is specific to
+  your business. Good for capturing a state of something in your app, custom
+  dimensions can be scoped at a user, session, hit, or product level. A common
+  use case might be using a user-scoped custom dimension to capture the
+  furthest level that a player has achieved. Using this, you could do an
+  analysis to understand what the breakdown was of users in different levels.
+  An example of a hit-level custom dimension could be capturing landscape or
+  portrait orientation with every hit, so that you can better understand the
+  breakdown of orientation as users play your game. Custom dimensions can be
+  used very creatively to get at how different types of users engage with
+  your app.
+</p>
+
+<h3>User ID</h3>
+
+<p>
+  A specific custom dimension that may be of interest to your business is the
+  User ID override. Instead of using a randomly generated identifier, you may
+  send Google Analytics an identifier for a given user if you use one in your
+  own CRM systems. This enables cross-device reporting as you can track user
+  behavior across platforms. Note that your custom identifier must be an identifier
+  without any personally identifiable information; an account ID (not an email
+  address) is a good example of a common use case here.
+</p>
+
+<h2 id="realtime">Real-Time Perspective</h2>
+
+<p>
+  Google Analytics reporting is available in real-time. This powerful
+  capability helps you understand app usage as it happens. Are users updating
+  to your latest version? Is your new marketing campaign having the effect you
+  expected? Is a scheduled in-app event driving up usage? You can answer all
+  these questions and more while they're actually happening.
+</p>
+
+<div>
+<img itemprop="image" src="{@docRoot}distribute/analyze/images/realtime.png">
+</div>
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13"
+  data-query="collection:distribute/analyzemeasure"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
diff --git a/docs/html/distribute/analyze/start.jd b/docs/html/distribute/analyze/start.jd
new file mode 100644
index 0000000..2a5a9f4
--- /dev/null
+++ b/docs/html/distribute/analyze/start.jd
@@ -0,0 +1,105 @@
+page.title=Get Started with Analytics
+page.metaDescription=Unlock the power of Analytics by choosing the implementation that works best for your app.
+page.tags="analytics, user behavior"
+page.image=distribute/images/gp-analytics-logo.jpg
+
+
+@jd:body
+
+<p>
+  Getting started with Google Analytics is easy. You can usually start
+  measuring your app's use by writing one line of code — or less! Google
+  Analytics is designed around the way you work, with flexible implementation
+  options to fit your needs. Take a look at these options and choose the right
+  one for you.
+</p>
+
+<p class="note">
+  <strong>Tip</strong>: Make sure you're sending Google Analytics the data to
+  help you make the best decisions about your app, by reviewing the <a href=
+  "https://developers.google.com/analytics/solutions/mobile-implementation-guide">
+  mobile app implementation guide</a>.
+</p>
+
+
+<h2 id="playservices">Google Play services SDK</h2>
+
+<img src="/images/google/gps.png" style="width:40%;float:right;padding-left:2em;">
+
+<p>
+  If you’re a Google Play developer, it’s likely you’re already using the
+  Google Play Services SDK. If you are, unlocking the power of Google Analytics
+  is only a line of code away. Here's how:
+</p>
+
+<ul>
+<li><a href="https://accounts.google.com/SignUp?continue=https%3A%2F%2Fwww.google.com%2Fanalytics%2Fmobile%2F&hl=en">Create
+your Google Analytics account</a>.</li>
+<li>Write down your tracking ID. </li>
+<li>Initialize Google Analytics in your app to start measuring activity immediately.</li> 
+</ul>
+
+<p>
+  Read the <a href=
+  "https://developers.google.com/analytics/solutions/mobile-implementation-guide">
+  step-by-step implementation guide</a> to get Google Analytics working in your
+  app and configure advanced customizations.
+</p>
+
+
+<h2 id="unityplugin">Unity Plugin</h2>
+
+<p>
+  If you’re a developer who uses an app engine to build games for multiple
+  platforms, consider using the Google Analytics Unity Plugin. With the Unity
+  Plugin, you add Google Analytics to your app as an in-line part of your
+  development process. When you compile your app for a given platform, the
+  appropriate Google Analytics SDK is added automatically &mdash; giving you
+  Google Analytics across Android, iOS, and other platforms with a single
+  implementation.
+</p>
+
+<p>
+  Find out more about <a href=
+  "https://www.google.com/url?q=https%3A%2F%2Fgithub.com%2Fgoogleanalytics%2Fgoogle-analytics-plugin-for-unity&sa=D&sntz=1&usg=AFrqEzdznBYiRnABaqfhOkFmVWvaYKlf0w">
+  setting up the Google Analytics Plugin for Unity</a>.
+</p>
+
+
+<h2 id="tagmanager">Google Tag Manager</h2>
+
+<p>
+  Looking for a way to update and improve your in-app analytics without having
+  to release a new version of your app waiting for your users to update? Then
+  Google Tag Manager is the solution for you. With Tag Manager for Apps, you
+  instrument your app once and then use the simple web interface to customize
+  your Google Analytics implementation. Updates you make using Tag Manager get
+  pushed to the installed instances of your app on user devices &mdash; so there's no
+  need for you to release an app update!
+</p>
+
+<p>
+  Google Tag Manager can also be used to control in-app configurations and to
+  power <a href="{@docRoot}distribute/analyze/build-better-apps.html#test">A/B
+  testing</a>. And since Tag Manager is a part of the Google Play Services SDK,
+  there’s no additional resources you need to keep track of.
+</p>
+
+<p>
+  Find out more about <a href=
+  "https://developers.google.com/tag-manager/android/v4/">implementing Google
+  Tag Manager</a>.
+</p>
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" 
+  data-query="collection:distribute/analyzestart"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
\ No newline at end of file
diff --git a/docs/html/distribute/analyze/understand-user-value.jd b/docs/html/distribute/analyze/understand-user-value.jd
new file mode 100644
index 0000000..30dca9c
--- /dev/null
+++ b/docs/html/distribute/analyze/understand-user-value.jd
@@ -0,0 +1,190 @@
+page.title=Understand the Value of Your Users
+page.metaDescription=Understand what makes users come back to your app and improve retention.
+page.tags="analytics, user behavior"
+
+@jd:body
+
+<p>
+  In-App Analytics will help you understand user behavior and ultimately user
+  value over time. Fundamentally, users are people — and no two people are
+  exactly alike. You can explore what makes your different groups of users
+  unique and, in turn, how these groups respond to your app content, features,
+  and monetization strategies. The more you understand about what your users
+  respond to, the better you can tailor your apps to meet their needs.
+</p>
+
+
+<h2 id="cohort">Assign Value to User Goals</h2>
+
+<p>
+  Different types of developers value their users differently &mdash; and
+  different types of users have different values. Google Analytics gives you
+  the power to value your users in the way that makes the most sense to you.
+</p>
+
+<p>
+  By using Google Analytics goals, you can define specific actions in your app
+  that mean the most to your business: perhaps it’s important that your users
+  reach a specific screen in your app or that they spend a designated time
+  playing your game. Perhaps you define a goal based on whether or not a user
+  completed a certain event (like completing a level).
+</p>
+
+<p>
+  Whatever the method used, you can assign a monetary value to a goal in order
+  to put a dollar value on an action. Perhaps it’s worth $3 if a user completes
+  a given level or $.50 if they sign up with an account. By assigning value to
+  given behaviors, you can really dig into the data to understand your most
+  valuable users.
+</p>
+
+<p>
+  Google Analytics also lets you view Revenue per User for transactions in your
+  app (such as in-app purchases). Pair this data with segments to drill down to
+  find your most valuable users.
+</p>
+
+
+<h2 id="audiencereporting">Know your users with Audience Reporting and Demographic and Interest reports</h2>
+
+<p>
+  Google Analytics’ <strong>Audience Reporting</strong> section highlights a
+  wealth of data about your users’ characteristics: what app versions they’re
+  using, what devices they’re on, where they’re from, and what they're
+  interested in. Among these, the Active Users reports highlight how users come
+  back over time.
+</p>
+
+<div>
+<img itemprop="image" src="{@docRoot}distribute/analyze/images/active_users.png">
+</div>
+
+<p>
+  Google Analytics’ <strong>Demographics & Interest</strong> reports highlight
+  information about your users gathered using Google Analytics’ extensive reach
+  in apps. See the Gender & Age breakdown to discover the demographic
+  characteristics most common among your users, or take a look at the Interest
+  reports to see what interest categories entice your users.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/demographics.png">
+</div>
+
+<h2 id="cohort">Segment Your Data</h2>
+
+<p>
+  Looking at aggregated data helps you understand overall user behavior trends,
+  such as how their purchase patterns change over time. However, in order to
+  understand why purchase patterns changed you need to segment your data.
+</p>
+
+<p>
+  Segmentation allows you to isolate and analyze subsets of your data, based on
+  specific attributes. For example, you might segment your data by marketing
+  channel so that you can see which channel is responsible for an increase in
+  purchases.
+</p>
+
+<p>
+  Drilling down to look at segments of your data helps you understand what
+  caused a change to your aggregated data. All reports in Google Analytics
+  provide for segmentation of your traffic. For example, each row in your
+  Language report shows how a specific segment performed. This lets you compare
+  different segments and understand which languages are bringing in the highest
+  value traffic.
+</p>
+
+<div>
+<img src="{@docRoot}distribute/analyze/images/language-report.png">
+</div>
+
+<p>
+  Here are some common segments that you might want to consider when looking at
+  your own data:
+</p>
+
+<ul>
+<li>Date and time, to compare how users who visit your site on certain
+days of the week or certain hours of the day behave</li>
+<li>Device or app version, to compare user performance on different
+operating systems or app updates</li>
+<li>Marketing channel, to compare the difference in performance for
+various marketing activities</li>
+<li>Geography, to determine which countries, regions or cities
+perform the best</li>
+<li>Customer characteristics, such as repeat customers vs. first-time
+customers, to help you understand what drives users to become loyal customers.</li>
+</ul>
+
+<p>
+  To use segments, click <strong>Add Segment</strong> above the report on any
+  data set you’re interested in breaking up. See the 15 System segments that
+  come with any app profile; these are default segments that allow you to do
+  basic analysis on elements like New Users, Android/iOS Traffic, or Tablet
+  traffic. If you need to dig deeper into your data, you can build a custom
+  segment by clicking <strong>+New Segment</strong> in the top right. Using any
+  combination of dimensions and metrics, you can create segments specific to
+  your business. The combinations of criteria are so extensive, hundreds of
+  thousands of permutations are available.
+</p>
+
+<p>
+  For example, for a report across all sessions in a date range you may choose
+  to include only users whose cumulative revenue across all sessions in a date
+  range is greater than $100; or only users who viewed a specific screen, then
+  completed a specific event, but never actually made a transaction.
+</p>
+
+<p>
+  Alternatively, you could include only sessions that were the result of a
+  specific advertising campaign or only sessions that resulted from a specific
+  campaign AND resulted in a goal completion.
+</p>
+
+<p>
+  Another way to generate segments is to import from the gallery. When you
+  click Add Segment, click Import from gallery (next to +New Segment). Using
+  the Gallery you can import segments that other businesses have found useful
+  &mdash; maybe you're interested in importing segments that pertain to
+  engaged traffic or mobile commerce. Choose from hundreds of segment packs
+  to find the ones that make sense for you.
+</p>
+<div>
+<img src="{@docRoot}distribute/analyze/images/segmentation.png">
+</div>
+
+<p>
+  Segmentation is a powerful way to slice and dice your data in order to unlock
+  insights about users and their behavior. Use this information to improve your
+  app and find more people that resemble your high-value users.
+</p>
+
+<h2 id="cohort">Understand What Makes Your Users Tick with Further Analysis</h2>
+
+<p>
+  Using the power of segmentation, you can perform very sophisticated analysis
+  on the types of users using your app &mdash; are your buyers concentrated in
+  a particular geographic area? Are users who visit a certain screen getting
+  stuck and abandoning your game? Are there certain behaviors that lead to more
+  conversions? What crashes are having the most impact on your revenue?
+</p>
+
+<p>
+  Understanding what properties make up an engaged and monetized user base is
+  important for developing a strategy to find similar users and for building
+  users’ experiences based on their behavior.
+</p>
+
+  <div class="headerLine clearfloat">
+  <h2 id="related-resources">
+    Related Resources
+  </h2>
+</div>
+
+<div class="resource-widget resource-flow-layout col-13" 
+  data-query="collection:distribute/analyzeunderstand"
+  data-sortorder="-timestamp"
+  data-cardsizes="6x3"
+  data-maxresults="6">
+</div>
diff --git a/docs/html/distribute/images/gp-analytics-logo.jpg b/docs/html/distribute/images/gp-analytics-logo.jpg
new file mode 100644
index 0000000..943c7a4
--- /dev/null
+++ b/docs/html/distribute/images/gp-analytics-logo.jpg
Binary files differ
diff --git a/docs/html/google/play-services/index.jd b/docs/html/google/play-services/index.jd
index b3cd4cf..0b1bdd9 100644
--- a/docs/html/google/play-services/index.jd
+++ b/docs/html/google/play-services/index.jd
@@ -1,5 +1,6 @@
 page.title=Google Play Services
 header.hide=1
+page.metaDescription=With Google Play services, your app can take advantage of the latest Google-powered features such as Maps, Analytics, and more: platform updates are distributed automatically as an APK through the Google Play Store.
 
 @jd:body
 
diff --git a/docs/html/guide/components/intents-common.jd b/docs/html/guide/components/intents-common.jd
index adba1cd..05e3133 100644
--- a/docs/html/guide/components/intents-common.jd
+++ b/docs/html/guide/components/intents-common.jd
@@ -1754,7 +1754,7 @@
 </div>
 
 <p>To call a taxi, use the
-<a href="{@docRoot}com/google/android/gms/actions/ReserveIntents.html#ACTION_RESERVE_TAXI_RESERVATION"><code>ACTION_RESERVE_TAXI_RESERVATION</code></a>
+<a href="{@docRoot}reference/com/google/android/gms/actions/ReserveIntents.html#ACTION_RESERVE_TAXI_RESERVATION"><code>ACTION_RESERVE_TAXI_RESERVATION</code></a>
 action.</p>
 
 <p class="note"><strong>Note:</strong> Apps must ask for confirmation from the user
@@ -1762,7 +1762,7 @@
 
 <dl>
   <dt><b>Action</b></dt>
-  <dd><a href="{@docRoot}com/google/android/gms/actions/ReserveIntents.html#ACTION_RESERVE_TAXI_RESERVATION"><code>ACTION_RESERVE_TAXI_RESERVATION</code></a></dd>
+  <dd><a href="{@docRoot}reference/com/google/android/gms/actions/ReserveIntents.html#ACTION_RESERVE_TAXI_RESERVATION"><code>ACTION_RESERVE_TAXI_RESERVATION</code></a></dd>
 
   <dt><b>Data URI</b></dt>
   <dd>None</dd>
diff --git a/docs/html/guide/topics/manifest/activity-element.jd b/docs/html/guide/topics/manifest/activity-element.jd
index 7374a67..c1256f9 100644
--- a/docs/html/guide/topics/manifest/activity-element.jd
+++ b/docs/html/guide/topics/manifest/activity-element.jd
@@ -686,7 +686,9 @@
 <p>
 A value of "{@code true}" means that the activity will not leave a
 historical trace.  It will not remain in the activity stack for the task,
-so the user will not be able to return to it.
+so the user will not be able to return to it. In this case,
+{@link android.app.Activity#onActivityResult onActivityResult()} is never called if you
+start another activity for a result from this activity.
 </p>
 
 <p>
diff --git a/docs/html/jd_collections.js b/docs/html/jd_collections.js
index ab5a655..6fb906e 100644
--- a/docs/html/jd_collections.js
+++ b/docs/html/jd_collections.js
@@ -126,6 +126,72 @@
       "distribute/monetize/payments.html"
     ]
   },
+  "distribute/analyzelanding": {
+    "resources": [
+      "distribute/analyze/start.html",
+      "distribute/analyze/measure.html",
+      "distribute/analyze/understand-user-value.html",
+      "distribute/analyze/improve-roi.html",
+      "distribute/analyze/build-better-apps.html",
+      "distribute/analyze/google-services.html"
+    ]
+  },
+  "distribute/analyzestart": {
+    "resources": [
+      "https://analyticsacademy.withgoogle.com/course04",
+      "google/play-services/index.html",
+      "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+      "https://developers.google.com/analytics/devguides/collection/android/",
+      "http://www.google.com/tagmanager/",
+      "https://github.com/googleanalytics/google-analytics-plugin-for-unity"
+    ]
+  },
+  "distribute/analyzemeasure": {
+    "resources": [
+
+      "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+      "https://support.google.com/analytics/answer/1032415",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/events",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/customdimsmets",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/user-id"
+    ]
+  },
+  "distribute/analyzeunderstand": {
+    "resources": [
+      "https://developers.google.com/analytics/devguides/collection/android/v4/display-features",
+      "https://support.google.com/analytics/answer/3123906",
+      "https://support.google.com/analytics/answer/2568874?ref_topic=6012392",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+      "https://support.google.com/analytics/answer/1032415",
+    ]
+  },
+  "distribute/analyzeimprove": {
+    "resources": [
+
+      "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns",
+      "https://support.google.com/analytics/answer/2956981",
+      "https://support.google.com/analytics/answer/1033961",
+      "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder",
+      "https://developers.google.com/analytics/solutions/mobile-campaign-deep-link"
+    ]
+  },
+  "distribute/analyzebuild": {
+    "resources": [
+      "https://support.google.com/tagmanager/answer/6003007",
+      "https://support.google.com/analytics/answer/2785577",
+      "https://support.google.com/analytics/answer/1151300"
+    ]
+  },
+  "distribute/analyzeact": {
+    "resources": [
+      "https://support.google.com/analytics/answer/2611268",
+      "https://support.google.com/analytics/answer/1033961",
+      "https://support.google.com/admob/answer/3508177",
+      "https://support.google.com/analytics/answer/2956981",
+      "https://support.google.com/tagmanager/answer/6003007"
+    ]
+  },
   "distribute/tools/checklists": {
     "title": "",
     "resources": [
diff --git a/docs/html/jd_extras.js b/docs/html/jd_extras.js
index 05d0f09..e2a0539 100644
--- a/docs/html/jd_extras.js
+++ b/docs/html/jd_extras.js
@@ -1425,7 +1425,7 @@
     "timestamp": null,
     "image": "https://developers.google.com/analytics/images/home/gear-logo.png",
     "title": "Google Mobile App Analytics SDK",
-    "summary": "The Google Analytics for Mobile Apps SDKs make it easy for you to implement Google Analytics in your mobile application.",
+    "summary": "Get started with the Google Analytics SDK for Android.",
     "keywords": ["analytics, user behavior"],
     "type": "sdk",
     "titleFriendly": ""
@@ -1676,5 +1676,317 @@
     "keywords": ["design", "Auto", "Automotive"],
     "type": "PDF DOWNLOAD (779KB)",
     "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/solutions/mobile-implementation-guide",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Mobile Analytics Implementation Guide",
+    "summary": "Learn how you can implement additional Google Analytics features to better understand your users and their behavior.",
+    "keywords": ["analytics", "Play", "users"],
+    "type": "guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "http://www.google.com/tagmanager/",
+    "timestamp": null,
+    "image": "http://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "title": "Google Tag Manager",
+    "summary": "Google Tag Manager enables you to change configuration values in your mobile apps using the Google Tag Manager interface, without having to rebuild and resubmit application binaries to app marketplaces.",
+    "keywords": ["analytics", "tagmanager"],
+    "type": "guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://analyticsacademy.withgoogle.com/course04",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Mobile App Analytics Fundamentals",
+    "summary": "This self-paced online course on mobile app measurement shows you how Google Analytics data can help you make your app more discoverable and profitable.",
+    "keywords": ["analytics"],
+    "type": "Open Source Project",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://github.com/googleanalytics/google-analytics-plugin-for-unity",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Analytics Plugin for Unity",
+    "summary": "If you're building games with Unity, you can now implement Analytics once and ship it on multiple platforms automatically.",
+    "keywords": ["analytics", "unity"],
+    "type": "Open Source Project",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/enhanced-ecommerce",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "In-App Purchases & Ecommerce",
+    "summary": "If your app sells virtual or real goods, ecommerce tracking can help you understand what behaviors lead to purchases.",
+    "keywords": ["analytics, ecommerce"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1032415",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Goals",
+    "summary": "Track important actions in your app as goals and measure performance against your objectives.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2568874?ref_topic=6012392",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Active Users",
+    "summary": "The active user report displays your 1-day, 7-day, 14-day and 30-day trailing active users next to each other, to help you analyze performance over time.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/events",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Events",
+    "summary": "Events let you measure granular in-app activities and understand user journeys.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/customdimsmets",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Custom Dimensions",
+    "summary": "Custom dimensions enable the association of metadata with hits, users, and sessions in Google Analytics.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/user-id",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "User ID",
+    "summary": "The User ID feature enables Google Analytics to measure user activities that span across devices.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/display-features",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Demographic Reporting",
+    "summary": "By enabling display features, you can see just how different user segments engage and monetize.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/3123906",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "User Segmentation",
+    "summary": "Segments let you compare metrics for different subsets of users to identify trends and opportunities for your apps.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Campaign Tracking",
+    "summary": "Measuring campaigns in Google Analytics enables the attribution of campaigns and traffic sources to user activity within your app.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2956981",
+    "timestamp": null,
+    "image": "images/play_dev.jpg",
+    "title": "Google Play Integration",
+    "summary": "By linking Analytics and the Play Developer Console, you can gain additional insights into the acquisition flow.",
+    "keywords": ["play, analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1033961",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "AdWords Integration",
+    "summary": "Link Analytics and AdWords to see the entire picture of customer behavior, from ad click or impression through your site to conversion. ",
+    "keywords": ["adwords, analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/devguides/collection/android/v4/campaigns#google-play-url-builder",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Campaign URL builder for Google Play",
+    "summary": "Easily create your URLs to track install campaigns.",
+    "keywords": ["play, analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/tagmanager/answer/6003007",
+    "timestamp": null,
+    "image": "http://www.google.com/tagmanager/images/gtm-hero-illustration-small.png",
+    "title": "In-App A/B Testing",
+    "summary": "With content experiments in Google Tag Manager you can test multiple variations of your app to find which works best.",
+    "keywords": ["tagmanager"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2785577",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Behavior Flow",
+    "summary": "The Behavior Flow report visualizes the path users traveled from one Screen or Event to the next. This report can help you discover what content keeps users engaged with your app.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/1151300",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Custom Reports",
+    "summary": "Custom Reports let you create your own reports in your Google Analytics account.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2611268",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Audience Lists &amp; Remarketing",
+    "summary": "Remarketing with Google Analytics lets you deliver targeted ads to users who've already been to your site or app. You can even base those ads on the behavior those users displayed during their sessions.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/3508177",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "AdMob Integration",
+    "summary": "With Google Analytics in AdMob, you can view Google Analytics data for your linked apps from within your AdMob account.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://developers.google.com/analytics/solutions/mobile-campaign-deep-link",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Deep-Linking",
+    "summary": "Google Analytics gives you a full view of how returning users are interacting with your app, for a holistic view beyond the install.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/admob/answer/3508177",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "AdMob Integration",
+    "summary": "With Google Analytics in AdMob, you can view Google Analytics data for your linked apps from within your AdMob account.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
+  },
+  {
+    "lang": "en",
+    "group": "",
+    "tags": [],
+    "url": "https://support.google.com/analytics/answer/2568874",
+    "timestamp": null,
+    "image": "distribute/images/gp-analytics-logo.jpg",
+    "title": "Active User Report",
+    "summary": "Active user report displays your 1-day, 7-day, 14-day and 30-day trailing active users next to each other, to help you run benchmark analyses of their performance over time.",
+    "keywords": ["analytics"],
+    "type": "Guide",
+    "titleFriendly": ""
   }
 ]);
\ No newline at end of file
diff --git a/docs/html/preview/images/ActivitySceneTransitionBasic.png b/docs/html/preview/images/ActivitySceneTransitionBasic.png
deleted file mode 100644
index ea58641..0000000
--- a/docs/html/preview/images/ActivitySceneTransitionBasic.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/ActivitySceneTransitionBasic@2x.png b/docs/html/preview/images/ActivitySceneTransitionBasic@2x.png
deleted file mode 100644
index cd28ade..0000000
--- a/docs/html/preview/images/ActivitySceneTransitionBasic@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/BasicManagedProfile.png b/docs/html/preview/images/BasicManagedProfile.png
deleted file mode 100644
index 7354842..0000000
--- a/docs/html/preview/images/BasicManagedProfile.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/BasicManagedProfile@2x.png b/docs/html/preview/images/BasicManagedProfile@2x.png
deleted file mode 100644
index c232809..0000000
--- a/docs/html/preview/images/BasicManagedProfile@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/JobSchedulerSample.png b/docs/html/preview/images/JobSchedulerSample.png
deleted file mode 100644
index ee57bdb..0000000
--- a/docs/html/preview/images/JobSchedulerSample.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/JobSchedulerSample@2x.png b/docs/html/preview/images/JobSchedulerSample@2x.png
deleted file mode 100644
index 3d543db..0000000
--- a/docs/html/preview/images/JobSchedulerSample@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/art.png b/docs/html/preview/images/art.png
deleted file mode 100644
index c48f039..0000000
--- a/docs/html/preview/images/art.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/battery_historian.png b/docs/html/preview/images/battery_historian.png
deleted file mode 100644
index f1d4e40..0000000
--- a/docs/html/preview/images/battery_historian.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/battery_historian@2x.png b/docs/html/preview/images/battery_historian@2x.png
deleted file mode 100644
index 8c8a87f..0000000
--- a/docs/html/preview/images/battery_historian@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/bugs.png b/docs/html/preview/images/bugs.png
deleted file mode 100644
index 46adf05..0000000
--- a/docs/html/preview/images/bugs.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/hun-example.png b/docs/html/preview/images/hun-example.png
deleted file mode 100644
index 251b938..0000000
--- a/docs/html/preview/images/hun-example.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/hun-example@2x.png b/docs/html/preview/images/hun-example@2x.png
deleted file mode 100644
index 5b98a361..0000000
--- a/docs/html/preview/images/hun-example@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/l-dev-prev.png b/docs/html/preview/images/l-dev-prev.png
deleted file mode 100644
index eae6ede..0000000
--- a/docs/html/preview/images/l-dev-prev.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/managed_apps_launcher.png b/docs/html/preview/images/managed_apps_launcher.png
deleted file mode 100644
index b5ef407..0000000
--- a/docs/html/preview/images/managed_apps_launcher.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/managed_apps_launcher@2x.png b/docs/html/preview/images/managed_apps_launcher@2x.png
deleted file mode 100644
index 90d7d51..0000000
--- a/docs/html/preview/images/managed_apps_launcher@2x.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/material-layers.png b/docs/html/preview/images/material-layers.png
deleted file mode 100644
index 9b01ede..0000000
--- a/docs/html/preview/images/material-layers.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/AntiSample1.png b/docs/html/preview/images/notifications/AntiSample1.png
deleted file mode 100644
index b06c644..0000000
--- a/docs/html/preview/images/notifications/AntiSample1.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/AntiSample3.png b/docs/html/preview/images/notifications/AntiSample3.png
deleted file mode 100644
index df5f4e7..0000000
--- a/docs/html/preview/images/notifications/AntiSample3.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/ExpandedImage.png b/docs/html/preview/images/notifications/ExpandedImage.png
deleted file mode 100644
index 81bb1d8..0000000
--- a/docs/html/preview/images/notifications/ExpandedImage.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Headsup.png b/docs/html/preview/images/notifications/Headsup.png
deleted file mode 100644
index a6f497d..0000000
--- a/docs/html/preview/images/notifications/Headsup.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Largelogo.png b/docs/html/preview/images/notifications/Largelogo.png
deleted file mode 100644
index 90cd6bf..0000000
--- a/docs/html/preview/images/notifications/Largelogo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/LockScreen.png b/docs/html/preview/images/notifications/LockScreen.png
deleted file mode 100644
index c204a81..0000000
--- a/docs/html/preview/images/notifications/LockScreen.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/MusicPlayback.png b/docs/html/preview/images/notifications/MusicPlayback.png
deleted file mode 100644
index 9e7c98b..0000000
--- a/docs/html/preview/images/notifications/MusicPlayback.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/ProductIcons.png b/docs/html/preview/images/notifications/ProductIcons.png
deleted file mode 100644
index ae3bb03..0000000
--- a/docs/html/preview/images/notifications/ProductIcons.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Productlogos.png b/docs/html/preview/images/notifications/Productlogos.png
deleted file mode 100644
index 09169e1..0000000
--- a/docs/html/preview/images/notifications/Productlogos.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/ReplyAction.png b/docs/html/preview/images/notifications/ReplyAction.png
deleted file mode 100644
index 78fc048..0000000
--- a/docs/html/preview/images/notifications/ReplyAction.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Stack.png b/docs/html/preview/images/notifications/Stack.png
deleted file mode 100644
index c6d76b0..0000000
--- a/docs/html/preview/images/notifications/Stack.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summarise_Do.png b/docs/html/preview/images/notifications/Summarise_Do.png
deleted file mode 100644
index 0117e14..0000000
--- a/docs/html/preview/images/notifications/Summarise_Do.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summarise_Dont.png b/docs/html/preview/images/notifications/Summarise_Dont.png
deleted file mode 100644
index 6bda159..0000000
--- a/docs/html/preview/images/notifications/Summarise_Dont.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Summary_Do.png b/docs/html/preview/images/notifications/Summary_Do.png
deleted file mode 100644
index 6ba17d9..0000000
--- a/docs/html/preview/images/notifications/Summary_Do.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/TimeSensitive.png b/docs/html/preview/images/notifications/TimeSensitive.png
deleted file mode 100644
index c56487c..0000000
--- a/docs/html/preview/images/notifications/TimeSensitive.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/Triggered.png b/docs/html/preview/images/notifications/Triggered.png
deleted file mode 100644
index 8366fac..0000000
--- a/docs/html/preview/images/notifications/Triggered.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/WearBasic.png b/docs/html/preview/images/notifications/WearBasic.png
deleted file mode 100644
index 8482cd6..0000000
--- a/docs/html/preview/images/notifications/WearBasic.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/action_combo.png b/docs/html/preview/images/notifications/action_combo.png
deleted file mode 100644
index 5400218..0000000
--- a/docs/html/preview/images/notifications/action_combo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/basic_combo.png b/docs/html/preview/images/notifications/basic_combo.png
deleted file mode 100644
index 01a0239..0000000
--- a/docs/html/preview/images/notifications/basic_combo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/expandedtext_combo.png b/docs/html/preview/images/notifications/expandedtext_combo.png
deleted file mode 100644
index 1bc276f..0000000
--- a/docs/html/preview/images/notifications/expandedtext_combo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/notifications_pattern_priority.png b/docs/html/preview/images/notifications/notifications_pattern_priority.png
deleted file mode 100644
index af2d725..0000000
--- a/docs/html/preview/images/notifications/notifications_pattern_priority.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/notifications/stack_combo.png b/docs/html/preview/images/notifications/stack_combo.png
deleted file mode 100644
index ad22926..0000000
--- a/docs/html/preview/images/notifications/stack_combo.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/opt-in.png b/docs/html/preview/images/opt-in.png
deleted file mode 100644
index 7151253..0000000
--- a/docs/html/preview/images/opt-in.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/images/updates.png b/docs/html/preview/images/updates.png
deleted file mode 100644
index f165c5a..0000000
--- a/docs/html/preview/images/updates.png
+++ /dev/null
Binary files differ
diff --git a/docs/html/preview/notifications.jd b/docs/html/preview/notifications.jd
deleted file mode 100644
index 44f46ea5..0000000
--- a/docs/html/preview/notifications.jd
+++ /dev/null
@@ -1,710 +0,0 @@
-page.title=Design for Notifications
-page.tags="notifications","design","L"
-@jd:body
-
-<style>
-  .col-5, .col-6, .col-7 {
-    margin-left:0px;
-  }
-</style>
-
-<p>The notification system allows users to keep informed about relevant and timely
-events in your app, such as new chat messages from a friend or a calendar event.
-Think of notifications as a news channel that alerts the user to important events as
-they happen or a log that chronicles events while the user is not paying attention -
-and one that is synced as appropriate across all their Android devices.</p>
-
-<h4 id="New"><strong>New in L</strong></h4>
-
-<p>In L, notifications receive an important structural visual and functional update:</p>
-
-<ul>
-  <li> Visual changes to notifications as part of material design</li>
-  <li> Notifications are now available on the device lockscreen, yet sensitive content can still
-  be hidden behind it</li>
-   <li> A new presentation format called Heads-up for receiving high priority notifications while
-  using the device</li>
-  <li> Cloud-synced notifications - act on a notification on your Android tablet and it is also
-  dismissed on your phone.</li>
-  <li> And starting now (in Android 4.4W, API Level 20, the platform release for Android Wear),
-  your notifications will bridge to Android Wear devices. You can extend the functionality of
-  notifications on Wear in two different ways. First, you can add speech input and canned responses
-  to Actions on Wear, allowing users to complete tasks from their wrists. Second, you can write
-  Wear apps that hook into your notifications to go even further in terms of creating interactive
-  experiences for users.</li>
-</ul>
-
-<h2 id="Anatomy">Anatomy of a notification</h2>
-
-<p>This section goes over basic parts of a notification and how they can
-appear on different types of devices.</p>
-
-<h3 id="BaseLayout">Base Layout</h3>
-
-<p>At a minimum, all notifications consist of a base layout, including:</p>
-
-<ul>
-  <li> The notification's <strong>icon</strong>, symbolizing the originating app, and also
-  potentially the kind of notification if the app has several substantially different sorts of
-  notifications it can post</li>
-  <li> A notification <strong>title</strong> and additional <strong>text</strong></li>
-  <li> A <strong>timestamp</strong></li>
-</ul>
-
-<p>Notifications created with <code>Notification.Builder</code> for versions of Android earlier
-than L will look and work the same in L, with only minor stylistic changes that the system handles
-for you.</p>
-
-
-    <img style="margin:20px 0 0 0" src="{@docRoot}preview/images/notifications/basic_combo.png"
-      alt="" width="700px" />
-
-
-<div style="clear:both;margin-top:20px">
-      <p class="img-caption">
-      Base layout of a handheld notification and the same notification on Wear,
-      with a user photo and a notification icon
-    </p>
-  </div>
-</div>
-
-<h3 id="ExpandedLayouts">Expanded layouts</h3>
-
-
-<p>You have the option to provide more details on notifications. You can use this to show the first
-few lines of a message or show a larger image preview. This provides the user with additional
-context, and - in some cases - may allow the user to read a message in its entirety. The user can
-pinch-zoom or perform a single-finger glide in order to toggle between compact and expanded layouts.
- For single event notifications, Android provides three expanded layout templates (text, inbox, and
- image) for you to re-use in your application. The following images show you how they look on
- handhelds and wearables.</p>
-
-<img style="margin-top:30px" src="{@docRoot}preview/images/notifications/expandedtext_combo.png"
-  alt="" width="700px" height;="284px" />
-<img style="margin-top:30px" src="{@docRoot}preview/images/notifications/stack_combo.png"
-  alt="" width="700px" height;="284px" />
-<img style="margin-top:30px" src="{@docRoot}preview/images/notifications/ExpandedImage.png"
-    alt="" width="311px" height;="450px" />
-
-<h3 id="actions" style="clear:both; margin-top:40px">Actions</h3>
-
-<p>Android has supported optional actions that are displayed at the bottom of the notification, as
-far back as Jelly Bean. With actions, users can handle the most common tasks for a particular
-notification from within the notification shade without having to open the originating application.
-This speeds up interaction and, in conjunction with "swipe-to-dismiss", helps users to streamline
-their notification triaging experience.</p>
-
-
-  <img src="{@docRoot}preview/images/notifications/action_combo.png"
-    alt="" width="700px" />
-
-
-
-<p style="clear:both">Be judicious with how many actions you include with a notification. The more
-actions you include, the more cognitive complexity you create. Limit yourself to the fewest number
-of actions possible by only including the most imminently important and meaningful ones.</p>
-
-<p>Good candidates for actions on notifications are actions that:</p>
-
-<ul>
-  <li> Are essential, frequent and typical for the content type you're displaying
-  <li> Allow the user to accomplish tasks quickly
-</ul>
-
-<p>Avoid actions that are:</p>
-
-<ul>
-  <li> Ambiguous
-  <li> Duplicative of the default action of the notification (such as "Read" or "Open")
-</ul>
-
-
-
-<p>You can specify a maximum of three actions, each consisting of an action icon and an action name.
- Adding actions to a simple base layout will make the notification expandable, even if the
- notification doesn't have an expanded layout. Since actions are only shown for expanded
- notifications and are otherwise hidden, you must make sure that any action a user can invoke from
- a notification is available from within the associated application as well.</p>
-
-<h2 id="notifications_on_android_wear">Notifications on Android Wear</h2>
-
-<p>Additionally, notifications and their actions are bridged over to Wear devices by default.
-Developers have control to control which notifications from bridging from the phone to the watch
-and vice versa. And developers can control which actions bridge as well. If your app includes
-actions that can't be accomplished with a single tap, either hide these actions on your Wear
-notification or consider hooking them up to a Wear app to allow the user to finish the action on
-their watch.</p>
-
-<h4>Bridging notifications</h4>
-
-<p><strong>Notifications that should be bridged</strong></p>
-
-<ul>
-  <li> New instant messages</li>
-</ul>
-
-<img src="{@docRoot}preview/images/notifications/WearBasic.png" width="156px" height="156px"
-  alt="" />
-
-<p><strong>Don't bridge</strong></p>
-
-<ul>
-  <li> If a podcasting app has new episodes available for download,
-  keep this notification on the phone.</li>
-</ul>
-
-
-
-<h4 style="clear:both">Bridging actions</h4></p>
-
-<p><strong>Actions to bridge</strong></p>
-
-<ul>
-  <li> Single tap actions such as +1, Like, Heart</li>
-</ul>
-
-<p><strong>Actions not to bridge</strong></p>
-
-<ul>
-  <li> Actions that map to features that aren't possible on the watch</li>
-</ul>
-
-
-
-<p><b>Unique actions to define for Wear</b></p>
-
-<ul>
-  <li> Quick lists of canned responses such as "Be right back"</li>
-  <li> Open on phone</li>
-  <li> A "Comment" or "Reply" action that brings up the speech input screen</li>
-  <li> Actions that can launch Wear-specific apps</li>
-</ul>
-
-<img src="{@docRoot}preview/images/notifications/ReplyAction.png" width="156px" height="156px"
-  alt="" />
-
-
-</div>
-
-
-
-<h2 style="clear:left">Heads-up Notification</h2>
-<div class="figure" style="width:311px">
-  <img src="{@docRoot}preview/images/notifications/Headsup.png"
-    alt="" width="311px" />
-  <p class="img-caption">
-    Example of a Heads-up notification (incoming phone call, high priority) coming in on top of an
-    immersive app
-  </p>
-</div>
-
-<p>When notifications with priority set to High (see right) arrives, it is presented to users for a
-short period of time on the device with an expanded layout with its actions exposed.</p>
-<p> After this period of time, it retreats back to the Notification shade. If a notification is
-flagged as High or Max or a full-screen takeover, it gets a HUN in L.</p>
-
-<p><b>Good examples of Heads-up notifications</b></p>
-
-<ul>
-  <li> Incoming phone call when using device</li>
-  <li> Alarm when using device</li>
-  <li> New SMS message</li>
-  <li> Low battery</li>
-</ul>
-
-<h2 style="clear:both" id="guidelines">Guidelines</h2>
-
-
-<h3 id="MakeItPersonal">Make it personal</h3>
-
-<p>For notifications of items sent by another person (such as a message or status update), include
-that person's image using setLargeIcon. Also attach information about the person to the
-notification's metadata (see EXTRA_PEOPLE).</p>
-
-<p>Your notification's main icon will still be shown, so the user can associate it with the icon
-visible in the status bar.</p>
-
-
-<img src="{@docRoot}preview/images/notifications/Triggered.png"
-  alt="" width="311px"/>
-<p style="margin-top:10px" class="img-caption">
-  Notification that shows the person who triggered it and the content they are sending you
-</p>
-
-
-<h3 id="navigate_to_the_right_place">Navigate to the right place</h3>
-
-<p>When the user touches the body of a notification (outside of the action buttons), open your app
-to the place where the user can view and act upon the data referenced in the notification. In most
-cases this will be the detail view of a single data item such as a message, but it might also be a
-summary view if the notification is stacked (see <em>Stacked notifications</em> below) and
-references multiple items. If in any of those cases the user is taken to a hierarchy level below
-your app's top-level, insert navigation into your app's back stack to allow them to navigate to
-your app's top level using the system back button. For more information, see the chapter on
-<em>System-to-app navigation</em> in the <a href="/design/patterns/navigation.html">Navigation</a>
-design pattern.</p>
-
-<h3 id="correctly_set_and_manage_notification_priority">Correctly set and manage notification
-priority</h3>
-
-<p>Starting with Jelly Bean, Android supported a priority flag for notifications. It allows you to
-influence where your notification will appear in comparison to other notifications and help to make
-sure that users always see their most important notifications first. You can choose from the
-following priority levels when posting a notification:</p>
-<table>
- <tr>
-    <td class="tab0">
-<p><strong>Priority</strong></p>
-</td>
-    <td class="tab0">
-<p><strong>Use</strong></p>
-</td>
- </tr>
- <tr>
-    <td class="tab1">
-<p><code>MAX</code></p>
-</td>
-    <td class="tab1">
-<p>Use for critical and urgent notifications that alert the user to a condition that is
-time-critical or needs to be resolved before they can continue with a particular task.</p>
-</td>
- </tr>
- <tr>
-    <td class="tab1">
-<p><code>HIGH</code></p>
-</td>
-    <td class="tab1">
-<p>Use high priority notifications primarily for important communication, such as message or chat
-events with content that is particularly interesting for the user. High priority notifications will get the Heads-Up Notification display starting in L.</p>
-</td>
- </tr>
- <tr>
-    <td class="tab1">
-<p><code>DEFAULT</code></p>
-</td>
-    <td class="tab1">
-<p>The default priority. Keep all notifications that don't fall into any of the other categories at
-this priority level.</p>
-</td>
- </tr>
- <tr>
-    <td class="tab1">
-<p><code>LOW</code></p>
-</td>
-    <td class="tab1">
-<p>Use for notifications that you still want the user to be informed about, but that rate low in
-urgency. LOW notifications will tend to show up at the bottom of the list, which makes them a good
-choice for things like pubic/undirected social updates: the user has asked to be notified about
-them, but they should never take precedence over urgent or direct communication.</p>
-</td>
- </tr>
- <tr>
-    <td class="tab1">
-<p><code>MIN</code></p>
-</td>
-    <td class="tab1">
-<p>Contextual/background information (e.g. weather information, contextual location information).
-Minimum priority notifications will not show in the status bar. The user will only discover them
-when they expand the notification shade.</p>
-</td>
- </tr>
-</table>
-
-
-<h4 id="how_to_choose_an_appropriate_priority"><strong>How to choose an appropriate
-priority</strong></h4>
-
-<p>Default, High, and Max priority are interruptive priority levels and risk interrupting the user
-from what they are doing. This should not be taken lightly, so these levels should be  reserved
-for notifications that:</p>
-
-<ul>
-  <li> Involve another person</li>
-  <li> Are time-sensitive</li>
-  <li> Might immediately change the user's behavior in the real world</li>
-</ul>
-
-<p>Notifications set to <code>LOW</code> and <code>MIN</code> can still be very valuable for the
-user. Many if not most notifications just don't need to command the user's immediate attention, or
-vibrate the user's wrist, yet contain information that they will find valuable when they choose to
-look for notifications. Criteria for <code>LOW</code> and <code>MIN</code> priority notifications:</p>
-
-<ul>
-  <li> Don't involve other people</li>
-  <li> Aren't time sensitive</li>
-  <li> Is content the user might be interested in but could choose to browse at their leisure</li>
-</ul>
-
-
-  <img src="{@docRoot}preview/images/notifications/notifications_pattern_priority.png"
-    alt="" width="700"/>
-
-
-<h3 style="clear:both" id="set_a_notification_category">Set a notification category</h3>
-
-<p>If your notification falls into one of the predefined categories (see below), assign it
-accordingly.  Aspects of the system UI such as the notification shade (or any other notification
-listener) may use this information to make ranking and filtering decisions.</p>
-<table>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_CALL</code></p>
-</td>
-    <td>
-<p>Incoming call (voice or video) or similar synchronous communication request</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_MESSAGE</code></p>
-</td>
-    <td>
-<p>Incoming direct message (SMS, instant message, etc.)</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_EMAIL</code></p>
-</td>
-    <td>
-<p>Asynchronous bulk message (email)</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_EVENT</code></p>
-</td>
-    <td>
-<p>Calendar event</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_PROMO</code></p>
-</td>
-    <td>
-<p>Promotion or advertisement</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_ALARM</code></p>
-</td>
-    <td>
-<p>Alarm or timer</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_PROGRESS</code></p>
-</td>
-    <td>
-<p>Progress of a long-running background operation</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_SOCIAL</code></p>
-</td>
-    <td>
-<p>Social network or sharing update</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_ERROR</code></p>
-</td>
-    <td>
-<p>Error in background operation or authentication status</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_TRANSPORT</code></p>
-</td>
-    <td>
-<p>Media transport control for playback</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_SYSTEM</code></p>
-</td>
-    <td>
-<p>System or device status update.  Reserved for system use.</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_SERVICE</code></p>
-</td>
-    <td>
-<p>Indication of running background service</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_RECOMMENDATION</code></p>
-</td>
-    <td>
-<p>A specific, timely recommendation for a single thing.  For example, a news app might want to
-recommend a news story it believes the user will want to read next.</p>
-</td>
- </tr>
- <tr>
-    <td>
-<p><code>Notification.CATEGORY_STATUS</code></p>
-</td>
-    <td>
-<p>Ongoing information about device or contextual status</p>
-</td>
- </tr>
-</table>
-
-<h3 id="summarize_your_notifications">Summarize your notifications</h3>
-
-<p>If your app creates a notification while another of the same type is still pending, avoid
-creating an altogether new notification object. Instead, turn it into a summary notification for
-the app.</p>
-
-<p>A summary notification builds a summary description and allows the user to understand how many
-notifications of a particular kind are pending.</p>
-
-<div class="col-6">
-
-<p><strong>Don't</strong></p>
-  <img src="{@docRoot}preview/images/notifications/Summarise_Dont.png"
-    alt="" width="311px" />
-</div>
-
-<div>
-<p><strong>Do</strong></p>
-
-  <img src="{@docRoot}preview/images/notifications/Summarise_Do.png"
-    alt="" width="311px"/>
-</div>
-
-<p style="clear:left; padding-top:30px; padding-bottom:20px">You can provide more detail about the individual notifications that make up a
- summary by using the expanded digest layout. This allows users to gain a better sense of which
- notifications are pending and if they are interesting enough to be read in detail within the
- associated app.</p>
-<div class="col-6">
-  <img src="{@docRoot}preview/images/notifications/Stack.png" style="margin-bottom:20px"
-    alt="" width="311px" />
-  <p class="img-caption">
-  Expanded and contracted notification that is a summary (using InboxStyle)
-  </p>
-</div>
-
-<h3 style="clear:both" id="make_notifications_optional">Make notifications optional</h3>
-
-<p>Users should always be in control of notifications. Allow the user to disable your app's
-notifications or change their alert properties, such as alert sound and whether to use vibration,
-by adding a notification settings item to your application settings.</p>
-
-<h3 id="use_distinct_icons">Use distinct icons</h3>
-<p>By glancing at the notification area, the user should be able to discern what kinds of
-notifications are currently pending.</p>
-
-<div class="figure">
-  <img src="{@docRoot}preview/images/notifications/ProductIcons.png"
-    alt="" width="420" />
-</div>
-
-  <div><p><strong>Do</strong></p>
-    <p>Look at the notification icons Android apps already provide and create notification icons for
-    your app that are sufficiently distinct in appearance.</p>
-
-    <p><strong>Do</strong></p>
-    <p>Use the proper <a href="/design/style/iconography.html#notification">notification icon
-    style</a> for small icons, and the Material Light
-    <a href="/design/style/iconography.html#action-bar">action bar icon style</a> for your action
-    icons. Do not place any additional alpha (dimming or fading) into your small icons and action
-    icons; they can have anti-aliased edges, but because L uses these icons as masks (that is, only
-    the alpha channel is used), the image should generally be drawn at full opacity.</p>
-<p ><strong>Do</strong></p>
-<p >Keep your icons visually simple and avoid excessive detail that is hard to discern.</p>
-
-</div>
-<p style="clear:both"><strong>Don't</strong></p>
-
-<p>Use color to distinguish your app from others. Notification icons should only be a white-on-transparent background image.</p>
-
-
-<h3 id="pulse_the_notification_led_appropriately">Pulse the notification LED appropriately</h3>
-
-<p>Many Android devices contain a notification LED, which is used to keep the user informed about
-events while the screen is off. Notifications with a priority level of MAX, HIGH, or DEFAULT should
-cause the LED to glow, while those with lower priority (<code>LOW</code> and <code>MIN</code>) should not.</p>
-
-<p>The user's control over notifications should extend to the LED. When you use DEFAULT_LIGHTS, the
-LED will glow with a white color. Your notifications shouldn't use a different color unless the
-user has explicitly customized it.</p>
-
-<h2 id="building_notifications_that_users_care_about">Building notifications that users care about</h2>
-
-<p>To create an app that users love, it is important to design your notifications carefully.
-Notifications embody your app's voice, and contribute to your app's personality. Unwanted or
-unimportant notifications can annoy the user or make them resent how much attention the app wants
-from them, so use notifications judiciously.</p>
-
-<h3 id="when_to_display_a_notification">When to display a notification</h3>
-
-<p>To create an application that people enjoy using, it's important to recognize that the user's
-attention and focus is a resource that must be protected. While Android's notification system has
-been designed to minimize the impact of notifications on the user's attention, it is nonetheless
-still important to be aware of the fact that notifications are interrupting the user's task flow.
-As you plan your notifications, ask yourself if they are important enough to warrant an interruption. If you are unsure, allow the user to opt into a notification using your apps notification settings or adjust
-the notifications priority flag to <code>LOW</code> or <code>MIN</code> to avoid distracting the user while they are doing
-something else.</p>
-
-  <img src="{@docRoot}preview/images/notifications/TimeSensitive.png"
-    alt="" width="311px" />
-  <p style="margin-top:10px" class="img-caption">
-   Time sensitive notification examples
-  </p>
-
-<p>While well behaved apps generally only speak when spoken to, there are some limited cases where an app actually should interrupt the user with an unprompted notification.</p>
-
-<p>Notifications should be used primarily for <strong>time sensitive events</strong>, and especially
- if these synchronous events <strong>involve other people</strong>. For instance, an incoming chat
- is a real time and synchronous form of communication: there is another user actively waiting on you
-  to respond. Calendar events are another good example of when to use a notification and grab the
-  user's attention, because the event is imminent, and calendar events often involve other people.</p>
-
-<h3 style="clear:both" id="when_not_to_display_a_notification">When not to display a notification</h3>
-
-<div class="figure" style="margin-top:60px">
-  <img src="{@docRoot}preview/images/notifications/AntiSample1.png"
-    alt="" width="311px" />
-</div>
-
-<p>There are however many other cases where notifications should not be used:</p>
-
-<ul>
-  <li> Avoid notifying the user of information that is not directed specifically at them, or
-  information that is not truly time sensitive. For instance the asynchronous and undirected updates
-  flowing through a social network generally do not warrant a real time interruption. For the users
-  that do care about them, allow them to opt-in.</li>
-  <li> Don't create a notification if the relevant new information is currently on screen. Instead,
-  use the UI of the application itself to notify the user of new information directly in context.
-  For instance, a chat application should not create system notifications while the user is actively chatting with another user.</li>
-  <li> Don't interrupt the user for low level technical operations, like saving or syncing information, or updating an application, if it is possible for the system to simply take care of itself without involving the user.</li>
-  <li> Don't interrupt the user to inform them of an error if it is possible for the application to recover from the error on its own without the user taking any action.</li>
-  <li> Don't create notifications that have no true notification content and merely  advertise your
-  app. A notification should provide useful, timely, new information and should not be used to
-  merely launch an app.</li>
-  <li> Don't create superfluous notifications just to get your brand in front of users.
-  Such notifications will only frustrate and likely alienate your audience. The best way to provide
-  the user with a small amount of updated information and to keep them engaged with your
-  application is to develop a widget that they can choose to place on their home screen.</li>
-</ul>
-
-<h2 style="clear:left" id="interacting_with_notifications">Interacting With Notifications</h2>
-
-<p>Notifications are indicated by icons in the status bar and can be accessed by opening the
-notification drawer.</p>
-
-<p>Touching a notification opens the associated app to detailed content matching the notification.
-Swiping left or right on a notification removes it from the list.</p>
-
-<h3 id="ongoing_notifications">Ongoing notifications</h3>
-<div class="figure" style="width:311px">
-  <img src="{@docRoot}preview/images/notifications/MusicPlayback.png"
-    alt="" width="311px"  />
-      <p class="img-caption">
-    Ongoing notification due to music playback
-  </p>
-</div>
-<p>Ongoing notifications keep users informed about an ongoing process in the background.
-For example, music players announce the currently playing track in the notification system and
-continue to do so until the user stops the playback. They can also be used to show the user
-feedback for longer tasks like downloading a file, or encoding a video. Ongoing notifications
-cannot be manually removed from the notification drawer.</p>
-
-<p>The L lockscreen doesn't show transport controls for RCC (RemoteControlClient)s anymore. But the
-lockscreen <em>does</em> show notifications, so each app's playback notification is now the primary
-way for users to control playback from a locked state. This gives apps more control over which
-buttons to show and in what way, while providing a consistent experience for the user whether on
-the lockscreen or unlocked.</p>
-
-<h3 style="clear:both" id="dialogs_and_toasts_are_for_feedback_not_notification">Dialogs
-and toasts are for feedback not notifications</h3>
-
-<p>Your app should not create a dialog or toast if it is not currently on screen. Dialogs and Toasts
- should only be displayed as the immediate response to the user taking an action inside of your app.
-For further guidance on the use of dialogs and toasts, refer to
-<a href="/design/patterns/confirming-acknowledging.html">Confirming & Acknowledging</a>.</p>
-
-<h3>Ranking and Ordering</h3>
-
-<p>Notifications are "news" and so they are essentially shown in reverse-chronological order, with
-special consideration given to the app's stated notification priority.</p>
-
-<p>In L, notifications are now a key part of the lockscreen, and are featured prominently every
-time the device display comes on. Because space on the lockscreen is tight, it is more important
-than ever to identify the most urgent or relevant notifications.</p>
-
-<p>Therefore, L has a more sophisticated sorting algorithm for notifications, taking into account:</p>
-
-<ul>
-  <li> The timestamp and application's stated priority, as before.</li>
-  <li> Whether the notification has recently disturbed the user with sound or vibration. (That is,
-  if the phone just made noise, and the user wants to know "what just happened?" the lockscreen
-  should answer that at a glance.)</li>
-  <li> Any people that are attached to the notification using <code>EXTRA_PEOPLE</code>, and in
-  particular whether those are starred contacts.</li>
-</ul>
-
-<p>To best take advantage of this sorting, developers should focus on the user experience they want
-to create rather than aiming for any particular spot on the list.</p>
-
-  <img src="{@docRoot}preview/images/notifications/AntiSample3.png"
-    alt="" width="700px" />
-
-  <p class="img-caption" style="margin-top:10px">Gmail notifications are default priority, so they
-  normally sort below messages from an instant messaging app like Hangouts, but Gmail will get a
-  temporary bump when new messages come in.
-  </p>
-
-
-<h3>On the lockscreen</h3>
-
-<p>Starting in L, notifications are visible on the lockscreen, and so we must consider the user's
-privacy. Notifications often contain sensitive information, and we must take care when showing it to
-anyone who picks up the device and turns on the display.</p>
-
-<ul>
-  <li> For devices without a secure lockscreen, a simple slide gesture unlocks the whole device.
-  Therefore, Android will always show the complete contents of all notifications on insecure lockscreens.</li>
-  <li> When a device has a secure lockscreen (PIN, pattern, or password), however, it divides the
-  interface into two spheres: "public", the things that are displayed atop a secure lockscreen and
-  can therefore be seen by anyone; and "private", the world behind that lockscreen, which can only
-  be accessed by supplying the correct authentication.</li>
-</ul>
-
-<h3>The user decides what shows on the secure lockscreen</h3>
-<div class="figure" style="width:311px">
-  <img src="{@docRoot}preview/images/notifications/LockScreen.png"
-    alt="" width="311px" />
-      <p class="img-caption">
-    Notifications on the lockscreen followed by the Pattern Unlock when the user attempts to unlock the phone.
-  </p>
-</div>
-
-<p>When setting up a secure lockscreen, the user can choose to conceal sensitive details from atop the secure lockscreen. In this case the SystemUI considers the notification's <em>visibility level</em> to figure out what can safely be shown.</p>
-<p> To control the visibility level, call
-<code>Notification.Builder.setVisibility()</code> and specify one of these values:</p>
-
-<ul>
-  <li><code>Notification.VISIBILITY_PUBLIC</code>. Shows the notification's full content.
-  This is the system default if visibility is left unspecified.</li>
-  <li><code>Notification.VISIBILITY_PRIVATE</code>. The lockscreen will reveal basic information about the existence of this notification, including its icon and the name of the app that posted it. The rest of the notification's details, however, are not displayed.
-  <ul>
-    <li> If you want to provide a different public version of your notification for the system to display on a secure lockscreen, supply a replacement Notification object in the <code>Notification.publicVersion</code> field.
-    <li> This is an app's opportunity to create a redacted version of the content that is still useful but does not reveal personal information.
-    <li> <strong>Example: </strong>An SMS app whose notifications include the text of the SMS and the sender's name and contact icon. This notification should be <code>VISIBILITY_PRIVATE</code>, but the <code>publicVersion</code> could still contain useful information like "3 new messages" without any other identifying details.
-  </ul>
-  </li>
-  <li><code>Notification.VISIBILITY_SECRET</code>. Shows only the most minimal information, excluding even the notification's icon.</li>
-</ul>
\ No newline at end of file
diff --git a/docs/html/preview/preview_toc.cs b/docs/html/preview/preview_toc.cs
deleted file mode 100644
index 3564b16..0000000
--- a/docs/html/preview/preview_toc.cs
+++ /dev/null
@@ -1,111 +0,0 @@
-<ul id="nav">
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/setup-sdk.html">Set up the SDK
-      </a></div>
-  </li>
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="<?cs var:toroot ?>preview/api-overview.html">API Overview
-      </a></div>
-  </li>
-  <li class="nav-section">
-
-    <div class="nav-section-header"><a href="<?cs var:toroot ?>preview/material/index.html">Material Design
-      </a></div>
-    <ul>
-      <li><a href="<?cs var:toroot ?>preview/material/get-started.html">Get Started</a></li>
-      <li><a href="<?cs var:toroot ?>preview/material/theme.html">Material Theme</a></li>
-      <li><a href="<?cs var:toroot ?>preview/material/ui-widgets.html">UI Widgets</a></li>
-      <li><a href="<?cs var:toroot ?>preview/material/views-shadows.html">Views and Shadows</a></li>
-      <li><a href="<?cs var:toroot ?>preview/material/animations.html">Animations</a></li>
-      <li><a href="<?cs var:toroot ?>preview/material/compatibility.html">Compatibility</a></li>
-    </ul>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty">
-    <a href="<?cs var:toroot ?>preview/notifications.html">Notification Design</a></div>
-  </li>
-
-
-  <li class="nav-section">
-    <div class="nav-section-header">
-      <a href="<?cs var:toroot ?>preview/tv/index.html">TV</a>
-      </div>
-    <ul>
-      <li><a href="<?cs var:toroot ?>preview/tv/start/index.html">
-        Get Started</a></li>
-      <li class="nav-section">
-        <div class="nav-section-header">
-          <a href="<?cs var:toroot ?>preview/tv/design/index.html">
-          Design</a></div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>preview/tv/design/principles.html">
-            Creative Vision</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/design/patterns.html">
-            UI Patterns</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/design/style.html">
-            Style</a></li>
-        </ul>
-      </li>
-      <li class="nav-section">
-        <div class="nav-section-header">
-          <a href="<?cs var:toroot ?>preview/tv/ui/index.html">
-          User Interface</a></div>
-        <ul>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/layouts.html">
-            Layouts</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/navigation.html">
-            Navigation</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/browse.html">
-            BrowseFragment</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/details.html">
-            DetailsFragment</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/in-app-search.html">
-            In-App Search</a></li>
-          <li><a href="<?cs var:toroot ?>preview/tv/ui/recommendations.html">
-            Recommendations</a></li>
-        </ul>
-      </li>
-      <li><a href="<?cs var:toroot ?>preview/tv/tif/index.html">
-        TV Input Framework</a></li>
-      <li><a href="<?cs var:toroot ?>preview/tv/games/index.html">
-        Games on TV</a></li>
-      <li><a href="<?cs var:toroot ?>preview/tv/start/hardware-features.html">
-        Hardware Features</a></li>
-      <li><a href="<?cs var:toroot ?>preview/tv/adt-1/index.html">
-        ADT-1</a></li>
-      <li><a href="<?cs var:toroot ?>preview/tv/publish/index.html">
-        Publishing TV Apps</a></li>
-    </ul>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty">
-      <a href="<?cs var:toroot ?>preview/samples.html">Samples</a>
-      </div>
-  </li>
-  <li class="nav-section">
-    <div class="nav-section-header empty">
-
-      <a href="<?cs var:toroot ?>preview/reference.html">Reference</a>
-
-    </div>
-  </li>
-    <li class="nav-section">
-    <div class="nav-section-header empty">
-      <a href="<?cs var:toroot ?>preview/support.html">Support</a>
-      </div>
-  </li>
-  <li class="nav-section">
-    <div class="nav-section-header empty">
-      <a href="<?cs var:toroot ?>preview/license.html">License Agreement</a>
-      </div>
-  </li>
-  <li class="nav-section" style="margin: 20px 0 0 -10px;">
-    <div class="nav-section-header empty">
-      <a href="<?cs var:toroot ?>index.html" class="back-link">Developer Home</a>
-      </div>
-  </li>
-</ul>
diff --git a/docs/html/preview/tv/index.jd b/docs/html/preview/tv/index.jd
deleted file mode 100644
index dd35908..0000000
--- a/docs/html/preview/tv/index.jd
+++ /dev/null
@@ -1,22 +0,0 @@
-page.title=Android TV Apps
-
-@jd:body
-
-<p>Android offers a rich user experience that's optimized for apps running on large screen
-  devices, such as high-definition televisions. Apps on TV offer new opportunities to
-  delight your users from the comfort of their couch.</p>
-
-<p>This guide helps you build apps for TV devices, including:</p>
-
-<ul>
-  <li>How to set up your development environment</li>
-  <li>How to build user interfaces for TV</li>
-  <li>Guidelines for building games for TV</li>
-</ul>
-
-<p>Prepare your app for its big screen debut!</p>
-
-<p>
-  <strong><a href="{@docRoot}preview/tv/start/index.html">Get Started &gt;</a></strong>
-</p>
-
diff --git a/docs/html/preview/tv/ui/index.jd b/docs/html/preview/tv/ui/index.jd
deleted file mode 100644
index c861ec2..0000000
--- a/docs/html/preview/tv/ui/index.jd
+++ /dev/null
@@ -1,40 +0,0 @@
-page.title=User Interfaces for TV
-
-@jd:body
-
-
-<p>
-  Building an effective and engaging user interface for TV devices requires a firm understanding of what works well
-  in the context of a living room. Imagine a large screen that can be seen by many people at the
-  same time, controlled with a few buttons by users with limited attention, and you start to see the
-  challenges and opportunities of building an app for TV. Building apps for this environment
-  requires a different approach and different tools.</p>
-
-<p>This section discusses how to build a living room experience with your app, including
-  implementation instructions and creating user interface widgets built for TV. Also check out
-  <a href="{@docRoot}design/tv/index.html">Design for TV</a> for information and inspiration
-  on creating engaging user interfaces for TV devices.</p>
-
-<h2>Topics</h2>
-
-<dl>
-  <dt><b><a href="layouts.html">Layouts</a></b></dt>
-    <dd>Learn how to build app layouts for TV screens.</dd>
-
-  <dt><b><a href="navigation.html">Navigation</a></b></dt>
-    <dd>Learn how to build navigation for TV devices.</dd>
-
-  <dt><b><a href="browse.html">BrowseFragment</a></b></dt>
-    <dd>Learn how to use this fragment to build a browsing interface for media catalogs.</dd>
-
-  <dt><b><a href="details.html">DetailsFragment</a></b></dt>
-    <dd>Learn how to use this fragment to build a details page for media items.</dd>
-
-  <dt><b><a href="in-app-search.html">In-App Search</a></b></dt>
-    <dd>Learn how to use a built-for-TV user interface for searching within your app.</dd>
-
-  <dt><b><a href="recommendations.html">Recommendations</a></b></dt>
-    <dd>Learn how your app can contribute to the list of recommendations appearing on the home
-      screen and get your content noticed by users.</dd>
-</dl>
-
diff --git a/docs/html/reference/android/preview/support/package-summary.html b/docs/html/reference/android/preview/support/package-summary.html
deleted file mode 100644
index 2f50871..0000000
--- a/docs/html/reference/android/preview/support/package-summary.html
+++ /dev/null
@@ -1,481 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>Preview Notifications Reference | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-
-<body class="gc-documentation 
-  preview">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">Preview Notifications Reference</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-<div class="col-12" id="doc-col">
-
-<div id="api-info-block">
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div>
-
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-
-
-
-
-
-
-    <h2>android.preview.support.v4.app</h2>
-    <div class="jd-sumtable">
-    
-  <table class="jd-sumtable-expando">
-        <tr class=" api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></td>
-              <td class="jd-descrcol" width="100%">Compatibility library for NotificationManager with fallbacks for older platforms.&nbsp;</td>
-          </tr>
-  </table>
-    </div>
-
-
-
-
-    <h2>android.preview.support.wearable.notifications</h2>
-    <div class="jd-sumtable">
-    
-  <table class="jd-sumtable-expando">
-        <tr class="alt-color api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></td>
-              <td class="jd-descrcol" width="100%">A RemoteInput specifies a response to be collected from the user as part of an intent being
- sent.&nbsp;</td>
-          </tr>
-        <tr class=" api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></td>
-              <td class="jd-descrcol" width="100%">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects.&nbsp;</td>
-          </tr>
-        <tr class="alt-color api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></td>
-              <td class="jd-descrcol" width="100%">Helper providing extensions to android notifications for use with wearable devices.&nbsp;</td>
-          </tr>
-        <tr class=" api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></td>
-              <td class="jd-descrcol" width="100%">Subclass of <code><a href="/reference/android/support/v4/app/NotificationCompat.Action.html">NotificationCompat.Action</a></code> which adds support for additional
- wearable extensions.&nbsp;</td>
-          </tr>
-        <tr class="alt-color api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></td>
-              <td class="jd-descrcol" width="100%">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> objects.&nbsp;</td>
-          </tr>
-        <tr class=" api apilevel-" >
-              <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></td>
-              <td class="jd-descrcol" width="100%">Builder object that wraps a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> to provide
- methods for adding wearable extensions to a notification.&nbsp;</td>
-          </tr>
-  </table>
-    </div>
-  
-
-
-  
-
-
-  
-
-
-  
-
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div><!-- end jd-content -->
-</div><!-- doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html b/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html
deleted file mode 100644
index 8322ab2..0000000
--- a/docs/html/reference/android/preview/support/v4/app/NotificationManagerCompat.html
+++ /dev/null
@@ -1,1340 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>NotificationManagerCompat | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">NotificationManagerCompat</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-
-
-
-
-  <a href="#constants">Constants</a>
-  
-
-
-
-
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-     
-     
-    
-    class
-<h1 itemprop="name">NotificationManagerCompat</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.v4.app.NotificationManagerCompat</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Compatibility library for NotificationManager with fallbacks for older platforms.
-
- <p>To use this class, call the static function <code><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#from(android.content.Context)">from(Context)</a></code> to get a
- <code><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></code> object, and then call one of its
- methods to post or cancel notifications.
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- =========== ENUM CONSTANT SUMMARY =========== -->
-<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
-
-
-    
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><a href="http://developer.android.com/reference/java/lang/String.html">String</a></td>
-        <td class="jd-linkcol"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#ACTION_BIND_SIDE_CHANNEL">ACTION_BIND_SIDE_CHANNEL</a></td>
-        <td class="jd-descrcol" width="100%">Intent action to register for on a service to receive side channel
- notifications.</td>
-    </tr>
-    
-    
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><a href="http://developer.android.com/reference/java/lang/String.html">String</a></td>
-        <td class="jd-linkcol"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#EXTRA_USE_SIDE_CHANNEL">EXTRA_USE_SIDE_CHANNEL</a></td>
-        <td class="jd-descrcol" width="100%">Notification extras key: if set to true, the posted notification should use
- the side channel for delivery instead of using notification manager.</td>
-    </tr>
-    
-    
-
-</table>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#cancel(int)">cancel</a></span>(int id)</nobr>
-        
-        <div class="jd-descrdiv">Cancel a previously shown notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#cancel(java.lang.String, int)">cancel</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> tag, int id)</nobr>
-        
-        <div class="jd-descrdiv">Cancel a previously shown notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#cancelAll()">cancelAll</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Cancel all previously shown notifications.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#from(android.content.Context)">from</a></span>(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</nobr>
-        
-        <div class="jd-descrdiv">Get a <code><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></code> instance for a provided context.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="http://developer.android.com/reference/java/util/Set.html">Set</a>&lt;<a href="http://developer.android.com/reference/java/lang/String.html">String</a>&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#getEnabledListenerPackages(android.content.Context)">getEnabledListenerPackages</a></span>(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</nobr>
-        
-        <div class="jd-descrdiv">Get the list of packages that have an enabled notification listener component within them,
- with caching for performance.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#notify(int, android.app.Notification)">notify</a></span>(int id, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notification)</nobr>
-        
-        <div class="jd-descrdiv">Post a notification to be shown in the status bar, stream, etc.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html#notify(java.lang.String, int, android.app.Notification)">notify</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> tag, int id, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notification)</nobr>
-        
-        <div class="jd-descrdiv">Post a notification to be shown in the status bar, stream, etc.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- ========= ENUM CONSTANTS DETAIL ======== -->
-<h2>Constants</h2>
-
-
-
-
-<A NAME="ACTION_BIND_SIDE_CHANNEL"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-        final 
-        <a href="http://developer.android.com/reference/java/lang/String.html">String</a>
-      </span>
-        ACTION_BIND_SIDE_CHANNEL
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Intent action to register for on a service to receive side channel
- notifications. The listening service must be in the same package as an enabled
- <code><a href="/">ERROR(/android.service.notification.NotificationListenerService)</a></code>.
-</p></div>
-
-    
-        <div class="jd-tagdata">
-        <span class="jd-tagtitle">Constant Value: </span>
-        <span>
-            
-                "android.support.app.notification.BIND_SIDE_CHANNEL"
-            
-        </span>
-        </div>
-    
-    </div>
-</div>
-
-
-
-<A NAME="EXTRA_USE_SIDE_CHANNEL"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-        final 
-        <a href="http://developer.android.com/reference/java/lang/String.html">String</a>
-      </span>
-        EXTRA_USE_SIDE_CHANNEL
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Notification extras key: if set to true, the posted notification should use
- the side channel for delivery instead of using notification manager.
-</p></div>
-
-    
-        <div class="jd-tagdata">
-        <span class="jd-tagtitle">Constant Value: </span>
-        <span>
-            
-                "android.preview.support.useSideChannel"
-            
-        </span>
-        </div>
-    
-    </div>
-</div>
-
-
-
-
-<!-- Fields -->
-
-
-<!-- Public ctors -->
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="cancel(int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">cancel</span>
-      <span class="normal">(int id)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Cancel a previously shown notification.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>id</td>
-          <td>the ID of the notification
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="cancel(java.lang.String, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">cancel</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> tag, int id)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Cancel a previously shown notification.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>tag</td>
-          <td>the string identifier of the notification.</td>
-        </tr>
-        <tr>
-          <th>id</td>
-          <td>the ID of the notification
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="cancelAll()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">cancelAll</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Cancel all previously shown notifications. </p></div>
-
-    </div>
-</div>
-
-
-<A NAME="from(android.content.Context)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a>
-      </span>
-      <span class="sympad">from</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get a <code><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></code> instance for a provided context. </p></div>
-
-    </div>
-</div>
-
-
-<A NAME="getEnabledListenerPackages(android.content.Context)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="http://developer.android.com/reference/java/util/Set.html">Set</a>&lt;<a href="http://developer.android.com/reference/java/lang/String.html">String</a>&gt;
-      </span>
-      <span class="sympad">getEnabledListenerPackages</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the list of packages that have an enabled notification listener component within them,
- with caching for performance.
-</p></div>
-
-    </div>
-</div>
-
-
-<A NAME="notify(int, android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">notify</span>
-      <span class="normal">(int id, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notification)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Post a notification to be shown in the status bar, stream, etc.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>id</td>
-          <td>the ID of the notification</td>
-        </tr>
-        <tr>
-          <th>notification</td>
-          <td>the notification to post to the system
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="notify(java.lang.String, int, android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">notify</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> tag, int id, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notification)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Post a notification to be shown in the status bar, stream, etc.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>tag</td>
-          <td>the string identifier for a notification. Can be <code>null</code>.</td>
-        </tr>
-        <tr>
-          <th>id</td>
-          <td>the ID of the notification. The pair (tag, id) must be unique within your app.</td>
-        </tr>
-        <tr>
-          <th>notification</td>
-          <td>the notification to post to the system
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
deleted file mode 100644
index 77807e4..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html
+++ /dev/null
@@ -1,1152 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>RemoteInput.Builder | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">RemoteInput.Builder</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-
-
-
-
-
-
-
-
-  <a href="#pubctors">Ctors</a>
-  
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-    static 
-     
-    
-    class
-<h1 itemprop="name">RemoteInput.Builder</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.RemoteInput.Builder</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects.
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            </nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#RemoteInput.Builder(java.lang.String)">RemoteInput.Builder</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> returnKey)</nobr>
-        
-        <div class="jd-descrdiv">Create a builder object for <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#build()">build</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Combine all of the options that have been set and return a new <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code>
- object.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#setAllowFreeFormInput(boolean)">setAllowFreeFormInput</a></span>(boolean allowFreeFormInput)</nobr>
-        
-        <div class="jd-descrdiv">Specifies whether the user can provide arbitrary values.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#setChoices(java.lang.String[])">setChoices</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String[]</a> choices)</nobr>
-        
-        <div class="jd-descrdiv">Specifies choices available to the user to satisfy this input.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#setLabel(java.lang.String)">setLabel</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> label)</nobr>
-        
-        <div class="jd-descrdiv">Set a label to be displayed to the user when collecting this input.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- Fields -->
-
-
-<!-- Public ctors -->
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<h2>Public Constructors</h2>
-
-
-
-<A NAME="RemoteInput.Builder(java.lang.String)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        
-      </span>
-      <span class="sympad">RemoteInput.Builder</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> returnKey)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Create a builder object for <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>returnKey</td>
-          <td>the intent extras key that refers to the input collected from the user</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="build()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a>
-      </span>
-      <span class="sympad">build</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Combine all of the options that have been set and return a new <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code>
- object.
-</p></div>
-
-    </div>
-</div>
-
-
-<A NAME="setAllowFreeFormInput(boolean)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a>
-      </span>
-      <span class="sympad">setAllowFreeFormInput</span>
-      <span class="normal">(boolean allowFreeFormInput)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Specifies whether the user can provide arbitrary values.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>allowFreeFormInput</td>
-          <td>The default is <code>true</code>.
-         If you specify <code>false</code>, you must
-         provide a non-null and non-empty array to <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html#setChoices(java.lang.String[])">setChoices(String[])</a></code> or
-         an <code><a href="http://developer.android.com/reference/java/lang/IllegalArgumentException.html">IllegalArgumentException</a></code> is thrown.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setChoices(java.lang.String[])"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a>
-      </span>
-      <span class="sympad">setChoices</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String[]</a> choices)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Specifies choices available to the user to satisfy this input.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>choices</td>
-          <td>an array of pre-defined choices for users input.
-        You must provide a non-null and non-empty array if
-        you set <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#allowFreeFormInput">allowFreeFormInput</a></code> to <code>false</code>.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setLabel(java.lang.String)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a>
-      </span>
-      <span class="sympad">setLabel</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> label)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set a label to be displayed to the user when collecting this input.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>label</td>
-          <td>The label to show to users when they input a response.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html b/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html
deleted file mode 100644
index 43fd36e..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/RemoteInput.html
+++ /dev/null
@@ -1,1314 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>RemoteInput | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">RemoteInput</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-  
-   
-  
-  
-   
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-  <a href="#nestedclasses">Nested Classes</a>
-  
-
-
-
-
-
-
-  &#124; <a href="#inhconstants">Inherited Constants</a>
-  
-
-
-  &#124; <a href="#lfields">Fields</a>
-  
-
-
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-     
-     
-    
-    class
-<h1 itemprop="name">RemoteInput</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-      implements 
-      
-        <a href="http://developer.android.com/reference/android/os/Parcelable.html">Parcelable</a> 
-      
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.RemoteInput</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">A <code>RemoteInput</code> object collects a response from users and sets the
- response as an intent extra inside the <code><a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a></code> that is sent.
- Always use <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></code> to create instances of this class.
- <p class="note"> See
- <a href="/wear/notifications/remote-input.html">Receiving Voice Input from
- a Notification</a> for more information on how to use this class.
-
- <p>The following example adds a <code>RemoteInput</code> to a <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code>,
- sets the intent extra key as <code>quick_reply</code>, and sets the label as <code>Quick Reply</code>.
- Users are prompted to input a response when they trigger the action. The results are sent as an
- intent extra with the key of <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#returnKey">returnKey</a></code> in the action's
- <code><a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a></code>.
-
- <pre class="prettyprint">
- public static final String EXTRA_QUICK_REPLY_TEXT = "quick_reply";
- WearableNotifications.Action action = new WearableNotifications.Action.Builder(
-         R.drawable.reply, &quot;Reply&quot;, actionIntent)
-         <b>.addRemoteInput(new RemoteInput.Builder(EXTRA_QUICK_REPLY_TEXT)
-                 .setLabel("Quick reply").build()</b>)
-         .build();</pre>
-
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-<!-- ======== NESTED CLASS SUMMARY ======== -->
-<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
-
-
-  
-    <tr class="alt-color api apilevel-" >
-      <td class="jd-typecol"><nobr>
-        
-         
-         
-        
-        class</nobr></td>
-      <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html">RemoteInput.Builder</a></td>
-      <td class="jd-descrcol" width="100%">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects.&nbsp;</td>
-    </tr>
-    
-    
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- =========== ENUM CONSTANT SUMMARY =========== -->
-<table id="inhconstants" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Constants</div></th></tr>
-
-
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-constants-android.os.Parcelable" class="jd-expando-trigger closed"
-          ><img id="inherited-constants-android.os.Parcelable-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>From interface
-android.os.Parcelable
-<div id="inherited-constants-android.os.Parcelable">
-  <div id="inherited-constants-android.os.Parcelable-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-constants-android.os.Parcelable-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-    
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">CONTENTS_FILE_DESCRIPTOR</td>
-        <td class="jd-descrcol" width="100%"></td>
-    </tr>
-    
-    
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol">int</td>
-        <td class="jd-linkcol">PARCELABLE_WRITE_RETURN_VALUE</td>
-        <td class="jd-descrcol" width="100%"></td>
-    </tr>
-    
-    
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-
-
-<!-- =========== FIELD SUMMARY =========== -->
-<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
-
-
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          static
-          final
-          <a href="http://developer.android.com/reference/android/os/Parcelable.Creator.html">Creator</a>&lt;<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a>&gt;</nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#CREATOR">CREATOR</a></td>
-          <td class="jd-descrcol" width="100%"></td>
-      </tr>
-      
-    
-      <tr class=" api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          final
-          boolean</nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#allowFreeFormInput">allowFreeFormInput</a></td>
-          <td class="jd-descrcol" width="100%">Indicates whether or not users can provide an arbitrary value for
- input.</td>
-      </tr>
-      
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          final
-          <a href="http://developer.android.com/reference/java/lang/String.html">String[]</a></nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#choices">choices</a></td>
-          <td class="jd-descrcol" width="100%">Possible input choices.</td>
-      </tr>
-      
-    
-      <tr class=" api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          final
-          <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#label">label</a></td>
-          <td class="jd-descrcol" width="100%">The label to display to users when collecting this input.</td>
-      </tr>
-      
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          final
-          <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#returnKey">returnKey</a></td>
-          <td class="jd-descrcol" width="100%">The lookup key for the intent extra that the response is set in.</td>
-      </tr>
-      
-    
-
-</table>
-
-
-
-
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#describeContents()">describeContents</a></span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#writeToParcel(android.os.Parcel, int)">writeToParcel</a></span>(<a href="http://developer.android.com/reference/android/os/Parcel.html">Parcel</a> out, int flags)</nobr>
-        
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-android.os.Parcelable" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-android.os.Parcelable-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From interface
-
-  <a href="http://developer.android.com/reference/android/os/Parcelable.html">android.os.Parcelable</a>
-
-<div id="inherited-methods-android.os.Parcelable">
-  <div id="inherited-methods-android.os.Parcelable-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-android.os.Parcelable-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            abstract
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">describeContents</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            abstract
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">writeToParcel</span>(<a href="http://developer.android.com/reference/android/os/Parcel.html">Parcel</a> arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- Fields -->
-
-
-<!-- ========= FIELD DETAIL ======== -->
-<h2>Fields</h2>
-
-
-
-
-<A NAME="CREATOR"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-        final 
-        <a href="http://developer.android.com/reference/android/os/Parcelable.Creator.html">Creator</a>&lt;<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a>&gt;
-      </span>
-        CREATOR
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p></p></div>
-
-    
-    </div>
-</div>
-
-
-
-<A NAME="allowFreeFormInput"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-        final 
-        boolean
-      </span>
-        allowFreeFormInput
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Indicates whether or not users can provide an arbitrary value for
- input. If you set this to <code>false</code>, users must select one of the
- provided <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#choices">choices</a></code>. An <code><a href="http://developer.android.com/reference/java/lang/IllegalArgumentException.html">IllegalArgumentException</a></code> is thrown
- if you set this to false and <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html#choices">choices</a></code> is <code>null</code> or empty.
-</p></div>
-
-    
-    </div>
-</div>
-
-
-
-<A NAME="choices"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-        final 
-        <a href="http://developer.android.com/reference/java/lang/String.html">String[]</a>
-      </span>
-        choices
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Possible input choices. This can be <code>null</code>
- if there are no choices to present.
-</p></div>
-
-    
-    </div>
-</div>
-
-
-
-<A NAME="label"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-        final 
-        <a href="http://developer.android.com/reference/java/lang/String.html">String</a>
-      </span>
-        label
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>The label to display to users when collecting this input.
-</p></div>
-
-    
-    </div>
-</div>
-
-
-
-<A NAME="returnKey"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-        final 
-        <a href="http://developer.android.com/reference/java/lang/String.html">String</a>
-      </span>
-        returnKey
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>The lookup key for the intent extra that the response is set in. This is populated
- when the <code><a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a></code> is sent.
-</p></div>
-
-    
-    </div>
-</div>
-
-
-
-
-<!-- Public ctors -->
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="describeContents()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        int
-      </span>
-      <span class="sympad">describeContents</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p></p></div>
-
-    </div>
-</div>
-
-
-<A NAME="writeToParcel(android.os.Parcel, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">writeToParcel</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/os/Parcel.html">Parcel</a> out, int flags)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p></p></div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
deleted file mode 100644
index 9592e27..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html
+++ /dev/null
@@ -1,1087 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>WearableNotifications.Action.Builder | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">WearableNotifications.Action.Builder</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-
-
-
-
-
-
-
-
-  <a href="#pubctors">Ctors</a>
-  
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-    static 
-     
-    
-    class
-<h1 itemprop="name">WearableNotifications.Action.Builder</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.WearableNotifications.Action.Builder</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> objects.
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            </nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html#WearableNotifications.Action.Builder(int, java.lang.CharSequence, android.app.PendingIntent)">WearableNotifications.Action.Builder</a></span>(int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> title, <a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a> intent)</nobr>
-        
-        <div class="jd-descrdiv">Construct a new builder for <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> object.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html#addRemoteInput(android.preview.support.wearable.notifications.RemoteInput)">addRemoteInput</a></span>(<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a> remoteInput)</nobr>
-        
-        <div class="jd-descrdiv">Add an input to be collected from the user when this action is sent.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html#build()">build</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Combine all of the options that have been set and return a new <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code>
- object.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html#getExtras()">getExtras</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Get the current metadata Bundle used by this Builder, creating a new one
- as necessary.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- Fields -->
-
-
-<!-- Public ctors -->
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<h2>Public Constructors</h2>
-
-
-
-<A NAME="WearableNotifications.Action.Builder(int, java.lang.CharSequence, android.app.PendingIntent)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        
-      </span>
-      <span class="sympad">WearableNotifications.Action.Builder</span>
-      <span class="normal">(int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> title, <a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a> intent)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Construct a new builder for <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> object.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>icon</td>
-          <td>icon to show for this action</td>
-        </tr>
-        <tr>
-          <th>title</td>
-          <td>the title of the action</td>
-        </tr>
-        <tr>
-          <th>intent</td>
-          <td>the <code><a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a></code> to fire when users trigger this action
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="addRemoteInput(android.preview.support.wearable.notifications.RemoteInput)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a>
-      </span>
-      <span class="sympad">addRemoteInput</span>
-      <span class="normal">(<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a> remoteInput)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add an input to be collected from the user when this action is sent.
- Response values are sent as extras to this action's pending intent when
- sent.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>remoteInput</td>
-          <td>a <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> to add to the action</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="build()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a>
-      </span>
-      <span class="sympad">build</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Combine all of the options that have been set and return a new <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code>
- object.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the built action
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getExtras()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a>
-      </span>
-      <span class="sympad">getExtras</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the current metadata Bundle used by this Builder, creating a new one
- as necessary.
-
- <p>The returned Bundle is shared with this Builder.
-</p></div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
deleted file mode 100644
index 8073fa8..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html
+++ /dev/null
@@ -1,1071 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>WearableNotifications.Action | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">WearableNotifications.Action</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-  
-  
-   
-  
-  
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-  <a href="#nestedclasses">Nested Classes</a>
-  
-
-
-
-
-
-
-
-  &#124; <a href="#lfields">Fields</a>
-  
-
-
-  &#124; <a href="#inhfields">Inherited Fields</a>
-  
-
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-    static 
-     
-    
-    class
-<h1 itemprop="name">WearableNotifications.Action</h1>
-
-
-
-  
-  
-  
-
-  
-    extends NotificationCompat.Action<br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="3" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell">android.support.v4.app.NotificationCompat.Action</td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;</td>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.WearableNotifications.Action</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Subclass of <code><a href="/reference/android/support/v4/app/NotificationCompat.Action.html">NotificationCompat.Action</a></code> that adds additional
- wearable extensions for actions.
- <p>Always use the <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></code> to build instances of this class and call
- <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#addAction(android.preview.support.wearable.notifications.WearableNotifications.Action)">addAction(WearableNotifications.Action)</a></code> to add the action to a notification.
-
- <pre class="prettyprint">
- WearableNotifications.Builder builder = new WearableNotifications.Builder(mContext)
-         .addAction(new WearableNotifications.Action.Builder(
-                 R.drawable.navigate, &quot;Navigate&quot, pendingIntent)
-                 .build())
-         .setLocalOnly(true);
- Notification notif = builder.build();</pre>
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-<!-- ======== NESTED CLASS SUMMARY ======== -->
-<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
-
-
-  
-    <tr class="alt-color api apilevel-" >
-      <td class="jd-typecol"><nobr>
-        
-         
-         
-        
-        class</nobr></td>
-      <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></td>
-      <td class="jd-descrcol" width="100%">Builder class for <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> objects.&nbsp;</td>
-    </tr>
-    
-    
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- =========== FIELD SUMMARY =========== -->
-<table id="lfields" class="jd-sumtable"><tr><th colspan="12">Fields</th></tr>
-
-
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          final
-          <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a></nobr></td>
-          <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html#extras">extras</a></td>
-          <td class="jd-descrcol" width="100%"></td>
-      </tr>
-      
-    
-
-</table>
-
-
-
-
-
-<!-- =========== FIELD SUMMARY =========== -->
-<table id="inhfields" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Fields</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-fields-android.support.v4.app.NotificationCompat.Action" class="jd-expando-trigger closed"
-          ><img id="inherited-fields-android.support.v4.app.NotificationCompat.Action-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>From class
-android.support.v4.app.NotificationCompat.Action
-<div id="inherited-fields-android.support.v4.app.NotificationCompat.Action">
-  <div id="inherited-fields-android.support.v4.app.NotificationCompat.Action-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-fields-android.support.v4.app.NotificationCompat.Action-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          
-          <a href="http://developer.android.com/reference/android/app/PendingIntent.html">PendingIntent</a></nobr></td>
-          <td class="jd-linkcol">actionIntent</td>
-          <td class="jd-descrcol" width="100%"></td>
-      </tr>
-      
-    
-      <tr class=" api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          
-          int</nobr></td>
-          <td class="jd-linkcol">icon</td>
-          <td class="jd-descrcol" width="100%"></td>
-      </tr>
-      
-    
-      <tr class="alt-color api apilevel-" >
-          <td class="jd-typecol"><nobr>
-          public
-          
-          
-          <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a></nobr></td>
-          <td class="jd-linkcol">title</td>
-          <td class="jd-descrcol" width="100%"></td>
-      </tr>
-      
-    
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-
-
-</table>
-
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html#getRemoteInputs()">getRemoteInputs</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Get a list of inputs to be collected from the user when this action is sent.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- Fields -->
-
-
-<!-- ========= FIELD DETAIL ======== -->
-<h2>Fields</h2>
-
-
-
-
-<A NAME="extras"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-        final 
-        <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a>
-      </span>
-        extras
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p></p></div>
-
-    
-    </div>
-</div>
-
-
-
-
-<!-- Public ctors -->
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="getRemoteInputs()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a>
-      </span>
-      <span class="sympad">getRemoteInputs</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get a list of inputs to be collected from the user when this action is sent.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the array of <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects associated with this action
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
deleted file mode 100644
index 15d3303..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html
+++ /dev/null
@@ -1,1862 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>WearableNotifications.Builder | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">WearableNotifications.Builder</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-
-
-
-
-
-
-
-
-  <a href="#pubctors">Ctors</a>
-  
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-    static 
-    final 
-    
-    class
-<h1 itemprop="name">WearableNotifications.Builder</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.WearableNotifications.Builder</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Builder class that wraps a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> to add
- wearable extensions for a notification.
-
- <p>You can chain the "set" methods for this builder in any order,
- but you must call the <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#build()">build()</a></code> method last to build the final notification.
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- ======== CONSTRUCTOR SUMMARY ======== -->
-<table id="pubctors" class="jd-sumtable"><tr><th colspan="12">Public Constructors</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            </nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#WearableNotifications.Builder(android.content.Context)">WearableNotifications.Builder</a></span>(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</nobr>
-        
-        <div class="jd-descrdiv">Construct a builder to be used for adding wearable extensions to notifications.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            </nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#WearableNotifications.Builder(android.support.v4.app.NotificationCompat.Builder)">WearableNotifications.Builder</a></span>(NotificationCompat.Builder builder)</nobr>
-        
-        <div class="jd-descrdiv">Construct a builder to be used for adding wearable extensions to notifications to
- a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code>.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#addAction(android.preview.support.wearable.notifications.WearableNotifications.Action)">addAction</a></span>(<a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a> action)</nobr>
-        
-        <div class="jd-descrdiv">Add an action to this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#addPage(android.app.Notification)">addPage</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> page)</nobr>
-        
-        <div class="jd-descrdiv">Add an additional page of content to display with this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#addPages(java.util.Collection<android.app.Notification>)">addPages</a></span>(<a href="http://developer.android.com/reference/java/util/Collection.html">Collection</a>&lt;<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a>&gt; pages)</nobr>
-        
-        <div class="jd-descrdiv">Add additional pages of content to display with this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#addRemoteInputForContentIntent(android.preview.support.wearable.notifications.RemoteInput)">addRemoteInputForContentIntent</a></span>(<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a> input)</nobr>
-        
-        <div class="jd-descrdiv">Adds a <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> for the content intent.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#build()">build</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Combine all of the options that have been set by both this builder and
- the wrapped <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> object and return a new
- <code><a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a></code> object.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            NotificationCompat.Builder</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#getCompatBuilder()">getCompatBuilder</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Return the <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> being wrapped by this object.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#getExtras()">getExtras</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Get the current metadata Bundle used by this Builder, creating a new one
- as necessary.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setBigActionIcon(int, java.lang.CharSequence)">setBigActionIcon</a></span>(int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> subtext)</nobr>
-        
-        <div class="jd-descrdiv">Add a big action display to this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setBigActionIcon(int)">setBigActionIcon</a></span>(int icon)</nobr>
-        
-        <div class="jd-descrdiv">Add a big action display to this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setGroup(java.lang.String, int)">setGroup</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey, int groupOrder)</nobr>
-        
-        <div class="jd-descrdiv">Set this notification to be part of a group of notifications sharing the same key.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setGroup(java.lang.String)">setGroup</a></span>(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey)</nobr>
-        
-        <div class="jd-descrdiv">Set this notification to be part of a group of notifications sharing the same key.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setHintHideIcon(boolean)">setHintHideIcon</a></span>(boolean hintHideIcon)</nobr>
-        
-        <div class="jd-descrdiv">Set a hint that this notification's icon should not be displayed.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setLocalOnly(boolean)">setLocalOnly</a></span>(boolean localOnly)</nobr>
-        
-        <div class="jd-descrdiv">Set whether or not this notification is only relevant to the current device.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#setMinPriority()">setMinPriority</a></span>()</nobr>
-        
-        <div class="jd-descrdiv">Set the priority of this notification to be minimum priority level
- (<code><a href="http://developer.android.com/reference/android/app/Notification.html#PRIORITY_MIN">PRIORITY_MIN</a></code>).</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- Fields -->
-
-
-<!-- Public ctors -->
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<h2>Public Constructors</h2>
-
-
-
-<A NAME="WearableNotifications.Builder(android.content.Context)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        
-      </span>
-      <span class="sympad">WearableNotifications.Builder</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/content/Context.html">Context</a> context)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Construct a builder to be used for adding wearable extensions to notifications. Both the
- wrapped builder (accessible via <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#getCompatBuilder()">getCompatBuilder()</a></code>) and this builder can be used
- simultaneously, but the build() method from this object must be called in the end.
-
- <p>Always post notifications to the notification
- system with the <code>NotificationManagerCompat.notify(...)</code> methods
- instead of the <code>NotificationManager.notify(...)</code> methods.
-
- <pre class="prettyprint">
- WearableNotifications.Builder builder = new WearableNotifications.Builder(mContext)
-         .setLocalOnly(true);
- builder.getCompatBuilder()
-         .setContentTitle(&quot;New mail from &quot; + sender.toString())
-         .setContentText(subject)
-         .setSmallIcon(R.drawable.new_mail);
- Notification notif = builder.build();
- NotificationManagerCompat.from(mContext).notify(0, notif);</pre>
-</p></div>
-
-    </div>
-</div>
-
-
-<A NAME="WearableNotifications.Builder(android.support.v4.app.NotificationCompat.Builder)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        
-      </span>
-      <span class="sympad">WearableNotifications.Builder</span>
-      <span class="normal">(NotificationCompat.Builder builder)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Construct a builder to be used for adding wearable extensions to notifications to
- a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code>. Both the wrapped builder and this
- builder can be used simultaneously, but the build() method from this object must be
- called in the end.
- <p>Always post notifications to the notification
- system with the <code>NotificationManagerCompat.notify(...)</code> methods
- instead of the <code>NotificationManager.notify(...)</code> methods.
-
- <pre class="prettyprint">
- NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext)
-         .setContentTitle(&quot;New mail from &quot; + sender.toString())
-         .setContentText(subject)
-         .setSmallIcon(R.drawable.new_mail);
- Notification notif = new WearableNotifications.Builder(builder)
-         .setLocalOnly(true)
-         .build();
- NotificationManagerCompat.from(mContext).notify(0, notif);</pre>
-</p></div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="addAction(android.preview.support.wearable.notifications.WearableNotifications.Action)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">addAction</span>
-      <span class="normal">(<a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a> action)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add an action to this notification. Actions are typically displayed by
- the system as a button adjacent to the notification content. This method
- accepts <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> extension wrappers. Actions added by this function
- are appended when <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#build()">build()</a></code> is called.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>action</td>
-          <td>the action to add to this notification</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="addPage(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">addPage</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> page)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add an additional page of content to display with this notification. The current
- notification forms the first page, and pages added using this function form
- subsequent pages. This field can be used to separate a notification into multiple
- sections.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>page</td>
-          <td>the notification to add as another page</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getPages(android.app.Notification)">getPages(Notification)</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="addPages(java.util.Collection<android.app.Notification>)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">addPages</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/util/Collection.html">Collection</a>&lt;<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a>&gt; pages)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add additional pages of content to display with this notification. The current
- notification forms the first page, and pages added using this function form
- subsequent pages. This field can be used to separate a notification into multiple
- sections.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>pages</td>
-          <td>a collection of notifications</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getPages(android.app.Notification)">getPages(Notification)</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="addRemoteInputForContentIntent(android.preview.support.wearable.notifications.RemoteInput)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">addRemoteInputForContentIntent</span>
-      <span class="normal">(<a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a> input)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Adds a <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> for the content intent.  The collected
- data will be overlayed onto the content intent.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>input</td>
-          <td>a <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> object to obtain a user response</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="build()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a>
-      </span>
-      <span class="sympad">build</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Combine all of the options that have been set by both this builder and
- the wrapped <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> object and return a new
- <code><a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a></code> object.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the notification
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getCompatBuilder()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        NotificationCompat.Builder
-      </span>
-      <span class="sympad">getCompatBuilder</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Return the <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> being wrapped by this object.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the wrapped <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code>
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getExtras()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a>
-      </span>
-      <span class="sympad">getExtras</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the current metadata Bundle used by this Builder, creating a new one
- as necessary.
-
- <p>The returned Bundle is shared with this Builder.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the extras bundle
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setBigActionIcon(int, java.lang.CharSequence)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setBigActionIcon</span>
-      <span class="normal">(int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> subtext)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add a big action display to this notification. Big actions show a hint to users
- about the action taken when the content intent is triggered.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>icon</td>
-          <td>icon to display for the content action.</td>
-        </tr>
-        <tr>
-          <th>subtext</td>
-          <td>Optional subtext to display with the big action icon.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setBigActionIcon(int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setBigActionIcon</span>
-      <span class="normal">(int icon)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add a big action display to this notification. Big actions show a hint to users
- about the action taken when the content intent is triggered.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>icon</td>
-          <td>icon to display for the content action.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setGroup(java.lang.String, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setGroup</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey, int groupOrder)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set this notification to be part of a group of notifications sharing the same key.
- Grouped notifications may display in a cluster or stack on devices which
- support such rendering.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>groupKey</td>
-          <td>The group key of the group. Unique within a package.</td>
-        </tr>
-        <tr>
-          <th>groupOrder</td>
-          <td>The 0-indexed sort order within the group. Can also be set
-         to the sentinel value <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#GROUP_ORDER_SUMMARY">GROUP_ORDER_SUMMARY</a></code> to mark this
-         notification as being the group summary.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setGroup(java.lang.String)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setGroup</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set this notification to be part of a group of notifications sharing the same key.
- Grouped notifications may display in a cluster or stack on devices which
- support such rendering. Use the default ordering within a group.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>groupKey</td>
-          <td>The group key of the group. Unique within a package.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setHintHideIcon(boolean)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setHintHideIcon</span>
-      <span class="normal">(boolean hintHideIcon)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set a hint that this notification's icon should not be displayed.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>hintHideIcon</td>
-          <td><code>true</code> to hide the icon, <code>false</code> otherwise.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setLocalOnly(boolean)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setLocalOnly</span>
-      <span class="normal">(boolean localOnly)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set whether or not this notification is only relevant to the current device.
-
- <p>Some notifications can be bridged to other devices for remote display.
- This hint can be set to recommend this notification not be bridged.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>localOnly</td>
-          <td><code>true</code> to keep the notification on this device,
- <code>false</code> otherwise. Default value is <code>false</code>.</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getLocalOnly(android.app.Notification)">getLocalOnly(Notification)</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setMinPriority()"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-         
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a>
-      </span>
-      <span class="sympad">setMinPriority</span>
-      <span class="normal">()</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set the priority of this notification to be minimum priority level
- (<code><a href="http://developer.android.com/reference/android/app/Notification.html#PRIORITY_MIN">PRIORITY_MIN</a></code>). When set via WearableNotifications, these
- minimum priority notifications will bypass the notification manager on platforms
- that do not support ambient level notifications.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>this object for method chaining
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html b/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html
deleted file mode 100644
index c9948b8..0000000
--- a/docs/html/reference/android/preview/support/wearable/notifications/WearableNotifications.html
+++ /dev/null
@@ -1,2295 +0,0 @@
-<!DOCTYPE html>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<html>
-<head>
-
-
-<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
-<meta name="viewport" content="width=device-width" />
-
-<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
-<title>WearableNotifications | Android Developers</title>
-
-<!-- STYLESHEETS -->
-<link rel="stylesheet"
-href="//fonts.googleapis.com/css?family=Roboto+Condensed">
-<link rel="stylesheet" href="//fonts.googleapis.com/css?family=Roboto:light,regular,medium,thin,italic,mediumitalic,bold"
-  title="roboto">
-<link href="/assets/css/default.css" rel="stylesheet" type="text/css">
-
-
-
-<!-- JAVASCRIPT -->
-<script src="//www.google.com/jsapi" type="text/javascript"></script>
-<script src="/assets/js/android_3p-bundle.js" type="text/javascript"></script>
-<script type="text/javascript">
-  var toRoot = "/";
-  var metaTags = [];
-  var devsite = false;
-</script>
-<script src="/assets/js/docs.js" type="text/javascript"></script>
-
-<script type="text/javascript">
-  var _gaq = _gaq || [];
-  _gaq.push(['_setAccount', 'UA-5831155-1']);
-  _gaq.push(['_trackPageview']);
-
-  (function() {
-    var ga = document.createElement('script'); ga.type = 'text/javascript'; ga.async = true;
-    ga.src = ('https:' == document.location.protocol ? 'https://ssl' : 'http://www') + '.google-analytics.com/ga.js';
-    var s = document.getElementsByTagName('script')[0]; s.parentNode.insertBefore(ga, s);
-  })();
-</script>
-</head>
-
-<body class="gc-documentation 
-  preview" itemscope itemtype="http://schema.org/Article">
-  <div id="doc-api-level" class="" style="display:none"></div>
-  <a name="top"></a>
-
-
-  
-<a name="top"></a>
-
-<!-- Header -->
-<div id="header-wrapper">
-  <div id="header">
-    <div class="wrap" id="header-wrap">
-      <div class="col_3 logo wear-logo">
-        <a href="/wear/index.html">
-          <img src="/wear/images/android-wear.png" height="16" alt="Android Wear" />
-        </a>
-      </div>
-      <div class="col-8" style="margin:0"><h1 style="margin:1px 0 0 20px;padding:0;line-height:16px;
-color:#666;font-weight:100;font-size:24px;">Developer Preview</h1></div>
-
-      
-      
-<div class="menu-container">
-  <div class="moremenu">
-    <div id="more-btn"></div>
-  </div>
-  <div class="morehover" id="moremenu">
-    <div class="top"></div>
-    <div class="mid">
-      <div class="header">Links</div>
-      <ul>
-        <li><a href="https://play.google.com/apps/publish/" target="_googleplay">Google Play Developer Console</a></li>
-        <li><a href="http://android-developers.blogspot.com/">Android Developers Blog</a></li>
-        <li><a href="/about/index.html">About Android</a></li>
-      </ul>
-      <div class="header">Android Sites</div>
-      <ul>
-        <li><a href="http://www.android.com">Android.com</a></li>
-        <li class="active"><a>Android Developers</a></li>
-        <li><a href="http://source.android.com">Android Open Source Project</a></li>
-      </ul>
-
-      
-      
-        <div class="header">Language</div>
-          <div id="language" class="locales">
-            <select name="language" onChange="changeLangPref(this.value, true)">
-                <option value="en">English</option>
-                <option value="es">Español</option>
-                <option value="ja">日本語</option>
-                <option value="ko">한국어</option>
-                <option value="ru">Русский</option>
-                <option value="zh-cn">中文 (中国)</option>
-                <option value="zh-tw">中文 (台灣)</option>
-            </select>
-          </div>
-        <script type="text/javascript">
-          <!--
-          loadLangPref();
-            //-->
-        </script>
-      
-      
-      <br class="clearfix" />
-    </div><!-- end 'mid' -->
-    <div class="bottom"></div>
-  </div><!-- end 'moremenu' -->
-
-  <div class="search" id="search-container">
-    <div class="search-inner">
-      <div id="search-btn"></div>
-      <div class="left"></div>
-      <form onsubmit="return submit_search()">
-        <input id="search_autocomplete" type="text" value="" autocomplete="off" name="q"
-          onfocus="search_focus_changed(this, true)" onblur="search_focus_changed(this, false)"
-          onkeydown="return search_changed(event, true, '/')"
-          onkeyup="return search_changed(event, false, '/')" />
-      </form>
-      <div class="right"></div>
-      <a class="close hide">close</a>
-      <div class="left"></div>
-      <div class="right"></div>
-    </div><!-- end search-inner -->
-  </div><!-- end search-container -->
-
-  <div class="search_filtered_wrapper reference">
-    <div class="suggest-card reference no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-
-  <div class="search_filtered_wrapper docs">
-    <div class="suggest-card dummy no-display">&nbsp;</div>
-    <div class="suggest-card develop no-display">
-      <ul class="search_filtered">
-      </ul>
-      <div class="child-card guides no-display">
-      </div>
-      <div class="child-card training no-display">
-      </div>
-      <div class="child-card samples no-display">
-      </div>
-    </div>
-    <div class="suggest-card design no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-    <div class="suggest-card distribute no-display">
-      <ul class="search_filtered">
-      </ul>
-    </div>
-  </div>
-</div><!-- end menu-container (search and menu widget) -->
-
-
-    </div><!-- end header-wrap -->
-  </div><!-- /Header -->
-
-
-  <div id="searchResults" class="wrap" style="display:none;">
-          <h2 id="searchTitle">Results</h2>
-          <div id="leftSearchControl" class="search-control">Loading...</div>
-  </div>
-</div> <!--end header-wrapper -->
-
-<div id="sticky-header">
-  <div>
-    <a class="logo" href="#top"></a>
-    <a class="top" href="#top"></a>
-    <ul class="breadcrumb">
-      
-      <li class="current">WearableNotifications</li>
-    </ul>
-  </div>
-</div>
-
-  
-
-
-  <div class="wrap clearfix" id="body-content">
-    <div class="col-4" id="side-nav" itemscope itemtype="http://schema.org/SiteNavigationElement">
-      <div id="devdoc-nav" class="scroll-pane">
-
-<ul id="nav">
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/preview/start.html">Get Started
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/user-interface.html">UI Overview
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/design/index.html">Design Principles
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/creating.html">Creating Notifications for Android Wear
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/remote-input.html">Receiving Voice Input from a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/pages.html">Adding Pages to a Notification
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/notifications/stacks.html">Stacking Notifications
-      </a></div>
-  </li>
-
-  <li class="nav-section">
-    <div class="nav-section-header"><a href="/reference/android/preview/support/package-summary.html">Notification Reference</a></div>
-    <ul class="tree-list-children">
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.v4.app">android.preview.support.v4.app</span></div>
-  <ul>
-<li><a href="/reference/android/preview/support/v4/app/NotificationManagerCompat.html">NotificationManagerCompat</a></li>
-  </ul>
-</li>
-
-<li class="nav-section">
-<div class="nav-section-header-ref"><span class="tree-list-subtitle package" title="android.preview.support.wearable.notifications">android.preview.support.wearable.notifications</span></div>
-<ul>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></li>
-<li><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.Builder.html" >RemoteInput.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html">WearableNotifications</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.Builder.html">WearableNotifications.Action.Builder</a></li>
-
-<li><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></li>
-	</ul>
-  </li>
-</ul>
-</li>
-
-
-
-  <li class="nav-section">
-    <div class="nav-section-header empty"><a href="/wear/license.html">License Agreement</a></div>
-  </li>
-
-
-</ul>
-
-
-
-      </div>
-    </div> <!-- end side-nav -->
-    <script>
-      $(document).ready(function() {
-        scrollIntoView("devdoc-nav");
-        });
-    </script>
-
-
-
-
-
-<div class="col-12"  id="doc-col">
-
-<div id="api-info-block">
-
-
-
-  
-   
-  
-  
-  
-  
-
-
-<div class="sum-details-links">
-
-Summary:
-
-  <a href="#nestedclasses">Nested Classes</a>
-  
-
-
-
-
-
-  &#124; <a href="#constants">Constants</a>
-  
-
-
-
-
-
-
-
-  &#124; <a href="#pubmethods">Methods</a>
-  
-
-
-
-  &#124; <a href="#inhmethods">Inherited Methods</a>
-
-&#124; <a href="#" onclick="return toggleAllClassInherited()" id="toggleAllClassInherited">[Expand All]</a>
-
-</div><!-- end sum-details-links -->
-<div class="api-level">
-  
-  
-  
-
-</div>
-</div><!-- end api-info-block -->
-
-
-<!-- ======== START OF CLASS DATA ======== -->
-
-<div id="jd-header">
-    public
-     
-    final 
-    
-    class
-<h1 itemprop="name">WearableNotifications</h1>
-
-
-
-  
-    extends <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a><br/>
-  
-  
-  
-
-  
-  
-  
-
-
-</div><!-- end header -->
-
-<div id="naMessage"></div>
-
-<div id="jd-content" class="api apilevel-">
-<table class="jd-inheritance-table">
-
-
-    <tr>
-         	
-        <td colspan="2" class="jd-inheritance-class-cell"><a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a></td>
-    </tr>
-    
-
-    <tr>
-        
-            <td class="jd-inheritance-space">&nbsp;&nbsp;&nbsp;&#x21b3;</td>
-         	
-        <td colspan="1" class="jd-inheritance-class-cell">android.preview.support.wearable.notifications.WearableNotifications</td>
-    </tr>
-    
-
-</table>
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Class Overview</h2>
-<p itemprop="articleBody">Helper class that contains wearable extensions for notifications.
- Always use the <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></code> to create instances of this class.
- <p class="note"> See
- <a href="/wear/notifications/creating.html">Creating Notifications
- for Android Wear</a> for more information on how to use this class.
- <p>
- To create a notification with wearable extensions:
- <ol>
-   <li>Create a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code>, setting any desired
-   properties.
-   <li>Create a <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></code>, passing in the
-   <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> as a starting point.
-   <li>Set wearable-specific properties using the
-   <code>add</code> and <code>set</code> methods of <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></code>.
-   <li>Call <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html#build()">build()</a></code> to create the notification.
-   <li>Post the notification to the notification
-   system with the <code>NotificationManagerCompat.notify(...)</code> methods
-   and not the <code>NotificationManager.notify(...)</code> methods.
- </ol>
-
- <pre class="prettyprint">
- NotificationCompat.Builder builder = new NotificationCompat.Builder(mContext)
-         .setContentTitle(&quot;New mail from &quot; + sender.toString())
-         .setContentText(subject)
-         .setSmallIcon(R.drawable.new_mail);
- Notification notif = new WearableNotifications.Builder(builder)
-         .setLocalOnly(true)
-         .setMinPriority()
-         .build();
- NotificationManagerCompat.from(mContext).notify(0, notif);</pre>
- <p>When you receive a notification object from the builder, the methods in
- this class let you access the values of various notification fields in
- a backward-compatible manner.
-</p>
-
-
-
-
-
-</div><!-- jd-descr -->
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<div class="jd-descr">
-
-
-<h2>Summary</h2>
-
-
-
-<!-- ======== NESTED CLASS SUMMARY ======== -->
-<table id="nestedclasses" class="jd-sumtable"><tr><th colspan="12">Nested Classes</th></tr>
-
-
-  
-    <tr class="alt-color api apilevel-" >
-      <td class="jd-typecol"><nobr>
-        
-         
-         
-        
-        class</nobr></td>
-      <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></td>
-      <td class="jd-descrcol" width="100%">Subclass of <code><a href="/reference/android/support/v4/app/NotificationCompat.Action.html">NotificationCompat.Action</a></code> that adds additional
- wearable extensions for actions.&nbsp;</td>
-    </tr>
-    
-    
-    <tr class=" api apilevel-" >
-      <td class="jd-typecol"><nobr>
-        
-         
-         
-        
-        class</nobr></td>
-      <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Builder.html">WearableNotifications.Builder</a></td>
-      <td class="jd-descrcol" width="100%">Builder class that wraps a <code><a href="/reference/android/support/v4/app/NotificationCompat.Builder.html">NotificationCompat.Builder</a></code> to add
- wearable extensions for a notification.&nbsp;</td>
-    </tr>
-    
-    
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- =========== ENUM CONSTANT SUMMARY =========== -->
-<table id="constants" class="jd-sumtable"><tr><th colspan="12">Constants</th></tr>
-
-
-    
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#GROUP_ORDER_DEFAULT">GROUP_ORDER_DEFAULT</a></td>
-        <td class="jd-descrcol" width="100%">Default value for the group sort order.</td>
-    </tr>
-    
-    
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol">int</td>
-        <td class="jd-linkcol"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#GROUP_ORDER_SUMMARY">GROUP_ORDER_SUMMARY</a></td>
-        <td class="jd-descrcol" width="100%">Sentinel value provided to the <code>groupOrder</code> parameter of the
- <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setGroup(android.app.Notification, java.lang.String, int)">setGroup(android.app.Notification, java.lang.String, int)</a></code>
- method.</td>
-    </tr>
-    
-    
-
-</table>
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="pubmethods" class="jd-sumtable"><tr><th colspan="12">Public Methods</th></tr>
-
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getAction(android.app.Notification, int)">getAction</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int actionIndex)</nobr>
-        
-        <div class="jd-descrdiv">Get a <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> wrapper for the notification at <code>actionIndex</code>
- in the <code><a href="http://developer.android.com/reference/android/app/Notification.html#actions">actions</a></code> array.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getActionCount(android.app.Notification)">getActionCount</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the number of actions present on this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getBigActionIcon(android.app.Notification)">getBigActionIcon</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the big action icon to be displayed with this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getBigActionSubtext(android.app.Notification)">getBigActionSubtext</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the big action icon subtext to be shown with a big action icon.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getContentIntentRemoteInputs(android.app.Notification)">getContentIntentRemoteInputs</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Gets the <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects associated with the content intent.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getExtras(android.app.Notification)">getExtras</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Gets the <code><a href="http://developer.android.com/reference/android/app/Notification.html#extras">extras</a></code> field from a notification in a backward-compatible
- manner.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getGroupKey(android.app.Notification)">getGroupKey</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the key used to group this notification into a cluster or stack
- with other notifications.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getGroupOrder(android.app.Notification)">getGroupOrder</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the sort order of this notification within a group of notifications
- with the same group key set.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getHintHideIcon(android.app.Notification)">getHintHideIcon</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get a hint that this notification's icon should not be displayed.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getLocalOnly(android.app.Notification)">getLocalOnly</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get whether or not this notification is only relevant to the current device.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            <a href="http://developer.android.com/reference/android/app/Notification.html">Notification[]</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#getPages(android.app.Notification)">getPages</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Get the array of additional pages of content for displaying this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setBigActionIcon(android.app.Notification, int)">setBigActionIcon</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int icon)</nobr>
-        
-        <div class="jd-descrdiv">Add a big action display to this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setBigActionIcon(android.app.Notification, int, java.lang.CharSequence)">setBigActionIcon</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> subtext)</nobr>
-        
-        <div class="jd-descrdiv">Add a big action display to this notification.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setContentIntentRemoteInputs(android.app.Notification, android.preview.support.wearable.notifications.RemoteInput[])">setContentIntentRemoteInputs</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a> inputs)</nobr>
-        
-        <div class="jd-descrdiv">Sets <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code>s to be collected when the user triggers the
- <code>contentIntent</code>.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setGroup(android.app.Notification, java.lang.String)">setGroup</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey)</nobr>
-        
-        <div class="jd-descrdiv">Set this notification to be part of a group of notifications sharing the same key.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setGroup(android.app.Notification, java.lang.String, int)">setGroup</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey, int groupOrder)</nobr>
-        
-        <div class="jd-descrdiv">Set this notification to be part of a group of notifications sharing the same key.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setHintHideIcon(android.app.Notification, boolean)">setHintHideIcon</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, boolean hintHideIcon)</nobr>
-        
-        <div class="jd-descrdiv">Set a hint that this notification's icon should not be displayed.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setLocalOnly(android.app.Notification, boolean)">setLocalOnly</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, boolean localOnly)</nobr>
-        
-        <div class="jd-descrdiv">Set whether or not this notification is only relevant to the current device.</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setMinPriority(android.app.Notification)">setMinPriority</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</nobr>
-        
-        <div class="jd-descrdiv">Set the priority of this notification to be minimum priority level
- (<code><a href="http://developer.android.com/reference/android/app/Notification.html#PRIORITY_MIN">PRIORITY_MIN</a></code>).</div>
-  
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            static
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad"><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setPages(android.app.Notification, android.app.Notification[])">setPages</a></span>(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification[]</a> pages)</nobr>
-        
-        <div class="jd-descrdiv">Set additional pages of content to display with this notification.</div>
-  
-  </td></tr>
-
-
-
-</table>
-
-
-
-
-
-
-
-<!-- ========== METHOD SUMMARY =========== -->
-<table id="inhmethods" class="jd-sumtable"><tr><th>
-  <a href="#" class="toggle-all" onclick="return toggleAllInherited(this, null)">[Expand]</a>
-  <div style="clear:left;">Inherited Methods</div></th></tr>
-
-
-<tr class="api apilevel-" >
-<td colspan="12">
-  <a href="#" onclick="return toggleInherited(this, null)" id="inherited-methods-java.lang.Object" class="jd-expando-trigger closed"
-          ><img id="inherited-methods-java.lang.Object-trigger"
-          src="/assets/images/triangle-closed.png"
-          class="jd-expando-trigger-img" /></a>
-From class
-
-  <a href="http://developer.android.com/reference/java/lang/Object.html">java.lang.Object</a>
-
-<div id="inherited-methods-java.lang.Object">
-  <div id="inherited-methods-java.lang.Object-list"
-        class="jd-inheritedlinks">
-  </div>
-  <div id="inherited-methods-java.lang.Object-summary" style="display: none;">
-    <table class="jd-sumtable-expando">
-    
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Object.html">Object</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">clone</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            boolean</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">equals</span>(<a href="http://developer.android.com/reference/java/lang/Object.html">Object</a> arg0)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">finalize</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/Class.html">Class</a>&lt;?&gt;</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">getClass</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            int</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">hashCode</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notify</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">notifyAll</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            
-            
-            
-            <a href="http://developer.android.com/reference/java/lang/String.html">String</a></nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">toString</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>()</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class=" api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0, int arg1)</nobr>
-        
-  </td></tr>
-
-
-	 
-    <tr class="alt-color api apilevel-" >
-        <td class="jd-typecol"><nobr>
-            
-            
-            final
-            
-            
-            void</nobr>
-        </td>
-        <td class="jd-linkcol" width="100%"><nobr>
-        <span class="sympad">wait</span>(long arg0)</nobr>
-        
-  </td></tr>
-
-
-</table>
-  </div>
-</div>
-</td></tr>
-
-
-</table>
-
-
-</div><!-- jd-descr (summary) -->
-
-<!-- Details -->
-
-
-
-
-
-
-
-
-<!-- XML Attributes -->
-
-
-<!-- Enum Values -->
-
-
-<!-- Constants -->
-
-
-<!-- ========= ENUM CONSTANTS DETAIL ======== -->
-<h2>Constants</h2>
-
-
-
-
-<A NAME="GROUP_ORDER_DEFAULT"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-        final 
-        int
-      </span>
-        GROUP_ORDER_DEFAULT
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Default value for the group sort order.
-</p></div>
-
-    
-        <div class="jd-tagdata">
-        <span class="jd-tagtitle">Constant Value: </span>
-        <span>
-            
-                0
-                (0x00000000)
-            
-        </span>
-        </div>
-    
-    </div>
-</div>
-
-
-
-<A NAME="GROUP_ORDER_SUMMARY"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-        final 
-        int
-      </span>
-        GROUP_ORDER_SUMMARY
-    </h4>
-      <div class="api-level">
-        
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Sentinel value provided to the <code>groupOrder</code> parameter of the
- <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setGroup(android.app.Notification, java.lang.String, int)">setGroup(android.app.Notification, java.lang.String, int)</a></code>
- method. This value indicates that this index of the
- notification group is the summary of the group.
-</p></div>
-
-    
-        <div class="jd-tagdata">
-        <span class="jd-tagtitle">Constant Value: </span>
-        <span>
-            
-                -1
-                (0xffffffff)
-            
-        </span>
-        </div>
-    
-    </div>
-</div>
-
-
-
-
-<!-- Fields -->
-
-
-<!-- Public ctors -->
-
-
-
-<!-- ========= CONSTRUCTOR DETAIL ======== -->
-<!-- Protected ctors -->
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-<!-- Public methdos -->
-
-<h2>Public Methods</h2>
-
-
-
-<A NAME="getAction(android.app.Notification, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a>
-      </span>
-      <span class="sympad">getAction</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int actionIndex)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get a <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code> wrapper for the notification at <code>actionIndex</code>
- in the <code><a href="http://developer.android.com/reference/android/app/Notification.html#actions">actions</a></code> array.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-        <tr>
-          <th>actionIndex</td>
-          <td>the index of the desired action
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getActionCount(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        int
-      </span>
-      <span class="sympad">getActionCount</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the number of actions present on this notification.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the number of actions for this notification
-</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/http://developer.android.com/reference/android/app/Notification.html#actions">actions</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getBigActionIcon(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        int
-      </span>
-      <span class="sympad">getBigActionIcon</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the big action icon to be displayed with this notification. Big actions show
- a hint to users about the action taken when the content intent is triggered.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the icon or <code>0</code> if it wasn't set</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setBigActionIcon(android.app.Notification, int)">setBigActionIcon(Notification, int)</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getBigActionSubtext(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a>
-      </span>
-      <span class="sympad">getBigActionSubtext</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the big action icon subtext to be shown with a big action icon.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the subtext of the big action icon or <code>null</code> if it wasn't exist.</li></ul>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">See Also</h5>
-      <ul class="nolist"><li><code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#setBigActionIcon(android.app.Notification, int)">setBigActionIcon(Notification, int)</a></code></li>
-      </ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getContentIntentRemoteInputs(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a>
-      </span>
-      <span class="sympad">getContentIntentRemoteInputs</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Gets the <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects associated with the content intent.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>array of RemoteInput objects or <code>null</code> if it doesn't exist
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getExtras(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="http://developer.android.com/reference/android/os/Bundle.html">Bundle</a>
-      </span>
-      <span class="sympad">getExtras</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Gets the <code><a href="http://developer.android.com/reference/android/app/Notification.html#extras">extras</a></code> field from a notification in a backward-compatible
- manner. Extras field was supported from JellyBean (API level 16)
- forwards. This function will return null on older API levels.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the extras associated with this notification.
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getGroupKey(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="http://developer.android.com/reference/java/lang/String.html">String</a>
-      </span>
-      <span class="sympad">getGroupKey</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the key used to group this notification into a cluster or stack
- with other notifications. This key is unique within a package.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getGroupOrder(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        int
-      </span>
-      <span class="sympad">getGroupOrder</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the sort order of this notification within a group of notifications
- with the same group key set. Group orders are 0-indexed integers that are used
- to sort notifications in ascending order. Can also be the sentinel value
- <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#GROUP_ORDER_SUMMARY">GROUP_ORDER_SUMMARY</a></code> if this is the summary notification for a group.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the sort order of this notification within this group
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getHintHideIcon(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        boolean
-      </span>
-      <span class="sympad">getHintHideIcon</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get a hint that this notification's icon should not be displayed.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li><code>true</code> if this icon should not be displayed, false otherwise.
- The default value is <code>false</code> if this was never set.
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getLocalOnly(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        boolean
-      </span>
-      <span class="sympad">getLocalOnly</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get whether or not this notification is only relevant to the current device.
-
- <p>Some notifications can be bridged to other devices for remote display.
- If this hint is set, it is recommended that this notification not be bridged.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li><code>true</code> if this notification is local only, <code>false</code> otherwise.
-        Default value is <code>false</code> if not set.
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="getPages(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        <a href="http://developer.android.com/reference/android/app/Notification.html">Notification[]</a>
-      </span>
-      <span class="sympad">getPages</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Get the array of additional pages of content for displaying this notification. The
- current notification forms the first page, and elements within this array form
- subsequent pages. This field can be used to separate a notification into multiple
- sections.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to inspect</td>
-        </tr>
-      </table>
-  </div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Returns</h5>
-      <ul class="nolist"><li>the pages for this notification
-</li></ul>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setBigActionIcon(android.app.Notification, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setBigActionIcon</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int icon)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add a big action display to this notification. Big actions show a hint to users
- about the action taken when the content intent is triggered.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>icon</td>
-          <td>icon to display for the content action.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setBigActionIcon(android.app.Notification, int, java.lang.CharSequence)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setBigActionIcon</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, int icon, <a href="http://developer.android.com/reference/java/lang/CharSequence.html">CharSequence</a> subtext)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Add a big action display to this notification. Big actions show a hint to users
- about the action taken when the content intent is triggered.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>icon</td>
-          <td>icon to display for the content action.</td>
-        </tr>
-        <tr>
-          <th>subtext</td>
-          <td>Optional subtext to display with the big action icon.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setContentIntentRemoteInputs(android.app.Notification, android.preview.support.wearable.notifications.RemoteInput[])"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setContentIntentRemoteInputs</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput[]</a> inputs)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Sets <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code>s to be collected when the user triggers the
- <code>contentIntent</code>.  These function just as if they were attached to
- an <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.Action.html">WearableNotifications.Action</a></code>.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>inputs</td>
-          <td>array of <code><a href="/reference/android/preview/support/wearable/notifications/RemoteInput.html">RemoteInput</a></code> objects desired from the user.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setGroup(android.app.Notification, java.lang.String)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setGroup</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set this notification to be part of a group of notifications sharing the same key.
- Grouped notifications may display in a cluster or stack on devices which
- support such rendering. Use the default ordering within a group.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>groupKey</td>
-          <td>The group key of the group. Unique within a package.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setGroup(android.app.Notification, java.lang.String, int)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setGroup</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/java/lang/String.html">String</a> groupKey, int groupOrder)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set this notification to be part of a group of notifications sharing the same key.
- Grouped notifications may display in a cluster or stack on devices which
- support such rendering.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>groupKey</td>
-          <td>The group key of the group. Unique within a package.</td>
-        </tr>
-        <tr>
-          <th>groupOrder</td>
-          <td>The 0-indexed sort order within the group. Can also be set
-         to the sentinel value <code><a href="/reference/android/preview/support/wearable/notifications/WearableNotifications.html#GROUP_ORDER_SUMMARY">GROUP_ORDER_SUMMARY</a></code> to mark this
-         notification as being the group summary.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setHintHideIcon(android.app.Notification, boolean)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setHintHideIcon</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, boolean hintHideIcon)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set a hint that this notification's icon should not be displayed.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>hintHideIcon</td>
-          <td><code>true</code> to hide this icon, <code>false</code> otherwise.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setLocalOnly(android.app.Notification, boolean)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setLocalOnly</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, boolean localOnly)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set whether or not this notification is only relevant to the current device.
-
- <p>Some notifications can be bridged to other devices for remote display.
- This hint can be set to recommend this notification not be bridged.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>localOnly</td>
-          <td>set to <code>true</code> to keep the notification on this device only,
-        <code>false</code> otherwise.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setMinPriority(android.app.Notification)"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setMinPriority</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set the priority of this notification to be minimum priority level
- (<code><a href="http://developer.android.com/reference/android/app/Notification.html#PRIORITY_MIN">PRIORITY_MIN</a></code>). When set via WearableNotifications, these
- minimum priority notifications will bypass the notification manager on platforms
- that do not support ambient level notifications.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-<A NAME="setPages(android.app.Notification, android.app.Notification[])"></A>
-
-<div class="jd-details api apilevel-"> 
-    <h4 class="jd-details-title">
-      <span class="normal">
-        public 
-        static 
-         
-         
-         
-        void
-      </span>
-      <span class="sympad">setPages</span>
-      <span class="normal">(<a href="http://developer.android.com/reference/android/app/Notification.html">Notification</a> notif, <a href="http://developer.android.com/reference/android/app/Notification.html">Notification[]</a> pages)</span>
-    </h4>
-      <div class="api-level">
-        <div></div>
-        
-  
-
-      </div>
-    <div class="jd-details-descr">
-      
-  <div class="jd-tagdata jd-tagdescr"><p>Set additional pages of content to display with this notification. The current
- notification forms the first page, and pages set using this function form
- subsequent pages. This field can be used to separate a notification into multiple
- sections.</p></div>
-  <div class="jd-tagdata">
-      <h5 class="jd-tagtitle">Parameters</h5>
-      <table class="jd-tagtable">
-        <tr>
-          <th>notif</td>
-          <td>the notification to modify</td>
-        </tr>
-        <tr>
-          <th>pages</td>
-          <td>the pages to add to the current notification. Replaces any
- existing pages with this value.
-</td>
-        </tr>
-      </table>
-  </div>
-
-    </div>
-</div>
-
-
-
-
-
-<!-- ========= METHOD DETAIL ======== -->
-
-
-
-<!-- ========= END OF CLASS DATA ========= -->
-<A NAME="navbar_top"></A>
-
-<div id="footer" class="wrap" >
-        
-
-  <div id="copyright">
-    
-  Except as noted, this content is licensed under <a
-  href="http://www.apache.org/licenses/LICENSE-2.0">Apache 2.0</a>. 
-  For details and restrictions, see the <a href="/license.html">
-  Content License</a>.
-  </div>
-  <div id="build_info">
-    
-    Android &nbsp;r &mdash; 
-<script src="/timestamp.js" type="text/javascript"></script>
-<script>document.write(BUILD_TIMESTAMP)</script>
-
-  </div>
-
-
-  <div id="footerlinks">
-    
-  <p>
-    <a href="/about/index.html">About Android</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/legal.html">Legal</a>&nbsp;&nbsp;|&nbsp;
-    <a href="/support.html">Support</a>
-  </p>
-  </div>
-
-</div> <!-- end footer -->
-</div> <!-- jd-content -->
-
-</div><!-- end doc-content -->
-
-</div> <!-- end body-content --> 
-
-
-
-
-
-
-</body>
-</html>
diff --git a/docs/html/samples/index.jd b/docs/html/samples/index.jd
index a44a22b..267c273 100644
--- a/docs/html/samples/index.jd
+++ b/docs/html/samples/index.jd
@@ -4,30 +4,56 @@
 @jd:body
 
 
-<p>Welcome to code samples for Android developers. Here you can browse sample code
-  and learn how to build different components for your applications. Use the categories on the left
-  to browse the available samples.</p>
+<p>Welcome to code samples for Android developers. Here you can browse sample code and learn how to
+build different components for your applications. Use the categories on the left to browse the
+available samples.</p>
 
 <p>Each sample is a fully functioning Android app. You can browse the resources, source files and
-  see the overall project structure. You can copy and paste the code you need, and if you want to
-  share a link to a specific line you can double-click it to the get the url.</p>
+see the overall project structure. You can copy and paste the code you need, and if you want to
+share a link to a specific line you can double-click it to the get the URL.</p>
+
+
+<h2>Import Samples from GitHub</h2>
+
+<p>Android Studio provides easy access to import Android code samples from GitHub and is the
+recommended method to retrieve Android code samples.</p>
+
+<p>To import a code sample into Android Studio:<p>
+
+  <ol>
+    <li>In the Android Studio menu, select <strong>File &gt; Import Sample</strong> to open the
+    Import Sample wizard.</li>
+    <li>Select a sample to import and click <strong>Next</strong>.</li>
+    <li>Specify the application name and project location if different from the displayed settings.</li>
+    <li>Click <strong>Finish</strong>.
+      <p>The sample project opens in a new Android Studio project.</p></li>
+  </ol>
+
+<p class="note">
+  <strong>Note:</strong> When starting Android Studio, you can also select <strong>Import an
+  Android code sample</strong> in the Welcome to Android Studio wizard to import a sample project
+  from GitHub as a new project.
+</p>
+
+<p>For more information about importing samples, see
+<a href="{@docRoot}tools/studio/index.html#git-samples">Easy access to Android code samples on
+GitHub</a>.</p>
+
+<h2>Download Samples</h2>
+
+<p>Although importing samples from Android Studio is the recommended method, you can also use the
+categories on the left to browse the available samples and learn how to build different components
+for your applications.</p>
 
 <p>If you want to download a complete project, just click on any source file in the project and
-  click the link in the upper right of the source page.</p>
+  click the <strong>Download</strong> link in the upper right of the source page.</p>
 
 <p>To import a downloaded project:<p>
 
-<div class="toggle-content closed">
-<p style="margin-top:5px"><a href="#" onclick="return toggleContent(this)">
-  <img src="/assets/images/triangle-closed.png" class="toggle-content-img" alt=""
-  />Using Android Studio</a></p>
-
-  <div class="toggle-content-toggleme">
-
   <ol>
     <li>Unpack the downloaded project package.</li>
     <li>In <a href="{@docRoot}sdk/installing/studio.html">Android Studio</a>, chose
-    <strong>File > Import Project</strong> and select the root folder of the unpacked project.
+    <strong>File &gt; Import Project</strong> and select the root folder of the unpacked project.
       <p>Android Studio may ask you to choose the type of project you are importing.
         If this is the case, make sure to choose <strong>Import project from
         external model</strong> and select the <strong>Gradle</strong> option.
@@ -35,11 +61,15 @@
     </li>
   </ol>
 
-  </div>
-</div>
+<p class="note">
+  <strong>Note:</strong> When starting Android Studio, you can also select <strong>Import
+  Non-Android Studio project</strong> in the Welcome to Android Studio wizard to import a
+  downloaded sample project.
+</p>
+
 
 <p class="note">
   <strong>Note:</strong> At this time, the downloadable projects are designed for use with Gradle
-    and Android Studio. Project downloads for Eclipse will be available soon!
+    and Android Studio. 
 </p>
 
diff --git a/docs/html/tools/building/building-cmdline.jd b/docs/html/tools/building/building-cmdline.jd
index c1a0dd2..ec00b50 100644
--- a/docs/html/tools/building/building-cmdline.jd
+++ b/docs/html/tools/building/building-cmdline.jd
@@ -18,7 +18,7 @@
         <li><a href="#RunningOnEmulator">Running on the Emulator</a></li>
         <li><a href="#RunningOnDevice">Running on a Device</a></li>
         <li><a href="#Signing">Application Signing</a></li>
-        <li><a href="#GradleReference">Gradle Command Reference</a></li>
+        <li><a href="#PluginReference">Plugin Language Reference</a></li>
       </ol>
   <h2>See also</h2>
   <ol>
@@ -364,8 +364,12 @@
   means to you as an Android application developer. The document also includes a guide to publishing
   and signing your application.</p>
 
-  <h2 id="Grad;eReference">Gradle Build Language Reference</h2>
+ <h2 id="PluginReference">Android Plugin for Gradle</h2>
 
-<p> See the <a href="http://gradle.org/docs/current/dsl/index.html">Gradle Build Language Reference</a> for a complete list and description of the Gradle Domain Specific Language (DSL) and declarative
-language elements.</p>
+ <p>The Android build system uses the Android plugin for Gradle to support the Gradle Domain
+ Specific Language (DSL) and declarative language elements. See the
+ <a href="{@docRoot}tools/building/plugin-for-gradle.html">Android Plug-in for Gradle</a> section for
+ a description of the plugin and a link to the complete list of the supported Gradle DSL elements.</p>
+
+
 
diff --git a/docs/html/tools/building/index.jd b/docs/html/tools/building/index.jd
index 6428e73..b5a56c0 100644
--- a/docs/html/tools/building/index.jd
+++ b/docs/html/tools/building/index.jd
@@ -9,7 +9,7 @@
       Building Your Project from Android Studio</a></li>
     <li><a href="{@docRoot}tools/building/building-cmdline.html">
       Building Your Project from the Command Line</a></li>
-    <li><a href="{@docRoot}sdk/building/studio-build.html">
+    <li><a href="{@docRoot}sdk/installing/studio-build.html">
       Build System</a></li>
   </ol>
 </div>
diff --git a/docs/html/tools/projects/index.jd b/docs/html/tools/projects/index.jd
index d9456f8..5f4f2cc 100644
--- a/docs/html/tools/projects/index.jd
+++ b/docs/html/tools/projects/index.jd
@@ -334,7 +334,7 @@
     module feature that generates each library module into its own JAR file.
     You can download the tools and platforms using the
     <em>Android SDK Manager</em>, as described in
-    <a href="{@docRoot}sdk/exploring.html">Exploring the SDK</a>.</p>
+    <a href="{@docRoot}tools/help/sdk-manager.html">SDK tools help</a>.</p>
 
     <p>If you have source code and resources that are common to multiple Android projects, you
     can move them to a library module so that it is easier to maintain across applications and
diff --git a/docs/html/tools/studio/index.jd b/docs/html/tools/studio/index.jd
index 8662313..42ab89c 100644
--- a/docs/html/tools/studio/index.jd
+++ b/docs/html/tools/studio/index.jd
@@ -410,9 +410,14 @@
 and &lt;animated-selector&gt;, are supported.</p>
 
 
-<h3> Easy access to Android code samples on GitHub</h3>
+<h3 id="git-samples"> Easy access to Android code samples on GitHub</h3>
 <p>Clicking <strong>Import Samples</strong> from the <strong>File</strong> menu or Welcome page
 provides seamless access to Google code samples on GitHub.</p>
     <p><img src="{@docRoot}images/tools/studio-samples-githubaccess.png" /></p>
     <p class="img-caption"><strong>Figure 12.</strong> Code Sample Access</p>
 
+
+    <p><img src="{@docRoot}images/tools/studio-sample-in-editor.png" /></p>
+    <p class="img-caption"><strong>Figure 13.</strong> Imported Code Sample</p>
+
+
diff --git a/docs/html/tools/support-library/index.jd b/docs/html/tools/support-library/index.jd
index bdbcc91..8a43696 100644
--- a/docs/html/tools/support-library/index.jd
+++ b/docs/html/tools/support-library/index.jd
@@ -58,9 +58,115 @@
 
 <p>This section provides details about the Support Library package releases.</p>
 
+
 <div class="toggle-content opened">
   <p id="rev21"><a href="#" onclick="return toggleContent(this)">
     <img src="{@docRoot}assets/images/triangle-opened.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 21.0.3</a> <em>(December 2014)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v4">v4 support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added several {@link android.support.v4.app.NotificationCompat.WearableExtender}
+          methods to improve the display of barcodes in notifications on wearable devices.
+             <ul>
+             <li>{@link android.support.v4.app.NotificationCompat.WearableExtender#getHintScreenTimeout getHintScreenTimeout()}</li>
+             <li>{@link android.support.v4.app.NotificationCompat.WearableExtender#setHintScreenTimeout setHintScreenTimeout()}</li>
+             <li>{@link android.support.v4.app.NotificationCompat.WearableExtender#getHintAvoidBackgroundClipping getHintAvoidBackgroundClipping()}</li>
+             <li>{@link android.support.v4.app.NotificationCompat.WearableExtender#setHintAvoidBackgroundClipping setHintAvoidBackgroundClipping()}</li>
+             </ul>
+          </li>
+        </ul>
+      </dd>
+
+  </div>
+</div>
+
+
+
+<div class="toggle-content closed">
+  <p id="rev21"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 21.0.2</a> <em>(November 2014)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Changes for <a href="features.html#v4">v4 support library:</a></dt>
+      <dd>
+        <ul>
+          <li>Added {@link android.support.v4.app.NotificationCompat.CarExtender}
+          class to support Android Auto extensions to notifications.</li>
+        </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v7-appcompat">v7 appcompat library</a>:</dt>
+      <dd>
+        <ul>
+          <li>Added the {@link android.support.v7.widget.PopupMenu} constructor to support new popup
+          menus.</li>
+          <li>Added support for a Collapse icon description in the {@link android.support.v7.widget.Toolbar}
+          class.</li>
+          <li>Updated the {@link android.support.v7.widget.SearchView} widget to support displaying
+          the {@link android.support.v7.mediarouter.R.attr#commitIcon}. </li>
+          <li>Removed the <code>buttonGravity</code> attribute from the
+          {@link android.support.v7.widget.Toolbar} class. </li>
+        </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v7-cardview">v7 cardview library</a>:</dt>
+      <dd>
+        <ul>
+          <li>Added {@link android.support.v7.widget.CardView#setCardBackgroundColor} API to
+          support changing the background color of the {@link android.support.v7.widget.CardView}.</li>
+          <li>Changed the {@link android.support.v7.widget.CardView} to more accurately report its
+          opacity value as {@link android.graphics.PixelFormat#TRANSLUCENT}.</li>
+        </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v7-recyclerview">v7 recyclerview
+        library</a>:</dt>
+      <dd>
+        <ul>
+          <li>Added {@link android.support.v7.widget.RecyclerView#TOUCH_SLOP_DEFAULT} and
+          {@link android.support.v7.widget.RecyclerView#TOUCH_SLOP_PAGING} constants
+          to the {@link android.support.v7.widget.RecyclerView} class
+          to support touch slop configurations for paging.</li>
+        </ul>
+      </dd>
+      <dt>Changes for <a href="features.html#v17-leanback">v17 leanback library</a>:</dt>
+      <dd>
+        <ul>
+          <li>Added support to generate v4 code fragments. </li>
+          <li>Changed the secondary text color on {@link android.support.v7.widget.CardView}. </li>
+        </ul>
+      </dd>
+    </dl>
+  </div>
+</div>
+
+
+
+<div class="toggle-content closed">
+  <p id="rev21"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
+/>Android Support Library, revision 21.0.1</a> <em>(November 2014)</em>
+  </p>
+  <div class="toggle-content-toggleme">
+    <dl>
+      <dt>Added <a href="{@docRoot}tools/support-library/features.html#multidex">
+      multidex support library</a> to support multiple
+      <a href="https://source.android.com/devices/tech/dalvik/">Dalvik</a> Executable (DEX) files
+      for multi-dex file support prior to Android 5.0. </li>
+      </dt>
+    </dl>
+  </div>
+</div>
+
+
+
+
+<div class="toggle-content closed">
+  <p id="rev21"><a href="#" onclick="return toggleContent(this)">
+    <img src="{@docRoot}assets/images/triangle-closed.png" class="toggle-content-img" alt=""
 />Android Support Library, revision 21</a> <em>(October 2014)</em>
   </p>
   <div class="toggle-content-toggleme">
diff --git a/docs/html/training/index.jd b/docs/html/training/index.jd
index 72ad018..c39ea54 100644
--- a/docs/html/training/index.jd
+++ b/docs/html/training/index.jd
@@ -4,11 +4,26 @@
 
 @jd:body
 
-
 <p>Welcome to Training for Android developers. Here you'll find sets of lessons within classes
 that describe how to accomplish a specific task with code samples you can re-use in your app.
 Classes are organized into several groups you can see at the top-level of the left navigation.</p>
 
-<p>This first group, <em>Getting Started</em>, teaches you the bare
-essentials for Android app development.
-If you're a new Android app developer, you should complete each of these classes in order:</p>
\ No newline at end of file
+ <p>This first group, <em>Getting Started</em>, teaches you the bare
+    essentials for Android app development. If you're a new Android app developer, you should
+    complete each of these classes in order.</p>
+
+<div>
+<div style="float:left; width:40%; margin-right:30px">
+
+    <p>If you think you might prefer to learn the basics through interactive video training,
+    check out this trailer for a course in the fundamentals of Android development.</p>
+    <p><a href="https://www.udacity.com/course/ud853" class="button">
+    Start the video course</a></p>
+</div>
+
+<div style="float:left; margin-bottom:20px">
+    <iframe width="300" height="169" src="//www.youtube.com/embed/LfVBFFoy9Y0?utm_source=dac&utm_medium=video&utm_content=andfuntrain&utm_campaign=udacint?rel=0&amp;hd=1" frameborder="0" allowfullscreen></iframe>
+</div>
+</div>
+
+<div style="clear:left"></div>
\ No newline at end of file
diff --git a/docs/html/training/location/index.jd b/docs/html/training/location/index.jd
index 059a1e9..35e177f 100644
--- a/docs/html/training/location/index.jd
+++ b/docs/html/training/location/index.jd
@@ -50,9 +50,8 @@
 
 <p>
   This class shows you how to use the Google Play services location APIs in your
-  app to get the current location, get periodic location updates, look up
-  addresses, create and monitor geofences, and detect user activities. The class
-  includes sample apps and code snippets that you can use as a starting point
+  app to get the current location, get periodic location updates, and look up
+  addresses. The class includes sample apps and code snippets that you can use as a starting point
   for adding location awareness to your app.
 </p>
 
@@ -81,25 +80,5 @@
   </dt> <dd>
     Learn how to convert a location's latitude and longitude into an address
     (reverse geocoding).
-  </dd> <dt>
-    <b>
-      <a href="geofencing.html">Creating and Monitoring Geofences</a>
-    </b>
-  </dt> <dd>
-    Learn how to define one or more geographic areas as locations of interest,
-    called geofences, and detect when the user is close to or inside a geofence.
-  </dd> <dt>
-    <b><a href="activity-recognition.html">Recognizing the User's Current
-    Activity</a></b>
-  </dt> <dd>
-    Learn how to recognize the user's current activity, such as walking,
-    bicycling, or driving a car, and how to use this information to modify your
-    app's location strategy.
-  </dd> <dt>
-    <b><a href="location-testing.html">Testing Using Mock Locations</a></b>
-  </dt> <dd>
-    Learn how to test a location-aware app by injecting mock locations into
-    Location Services. In mock mode, Location Services sends out mock locations
-    that you inject instead of sensor-based locations.
   </dd>
 </dl>
diff --git a/docs/html/training/training_toc.cs b/docs/html/training/training_toc.cs
index 082f5ff..0fcfb9c 100644
--- a/docs/html/training/training_toc.cs
+++ b/docs/html/training/training_toc.cs
@@ -707,18 +707,6 @@
             Displaying a Location Address
           </a>
           </li>
-          <li><a href="<?cs var:toroot ?>training/location/geofencing.html">
-            Creating and Monitoring Geofences
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/location/activity-recognition.html">
-          Recognizing the User's Current Activity
-          </a>
-          </li>
-          <li><a href="<?cs var:toroot ?>training/location/location-testing.html">
-          Testing Using Mock Locations
-          </a>
-          </li>
         </ul>
       </li>
     </ul>
diff --git a/docs/html/training/wearables/notifications/creating.jd b/docs/html/training/wearables/notifications/creating.jd
index 542664b..6f8497a 100644
--- a/docs/html/training/wearables/notifications/creating.jd
+++ b/docs/html/training/wearables/notifications/creating.jd
@@ -270,10 +270,10 @@
 {@link android.support.v4.app.NotificationCompat.WearableExtender#setBackground setBackground()}
 should have a resolution of 400x400 for non-scrolling backgrounds and 640x400 for backgrounds
 that support parallax scrolling. Place these bitmap images in the <code>res/drawable-nodpi</code>
-directory of your handheld app. Place other non-bitmap resources for wearable notifications, such
+directory. Place other non-bitmap resources for wearable notifications, such
 as those used with the
 {@link android.support.v4.app.NotificationCompat.WearableExtender#setContentIcon setContentIcon()}
-method, in the <code>res/drawable-hdpi</code> directory of your handheld app.</p>
+method, in the <code>res/drawable-hdpi</code> directory.</p>
 
 <p>If you ever need to read wearable-specific options at a later time, use the corresponding get
 method for the option. This example calls the
diff --git a/docs/html/training/wearables/watch-faces/service.jd b/docs/html/training/wearables/watch-faces/service.jd
index 87ebefa..77c417f 100644
--- a/docs/html/training/wearables/watch-faces/service.jd
+++ b/docs/html/training/wearables/watch-faces/service.jd
@@ -164,21 +164,25 @@
 
         &#64;Override
         public void onCreate(SurfaceHolder holder) {
+            super.onCreate(holder);
             /* initialize your watch face */
         }
 
         &#64;Override
         public void onPropertiesChanged(Bundle properties) {
+            super.onPropertiesChanged(properties);
             /* get device features (burn-in, low-bit ambient) */
         }
 
         &#64;Override
         public void onTimeTick() {
+            super.onTimeTick();
             /* the time changed */
         }
 
         &#64;Override
         public void onAmbientModeChanged(boolean inAmbientMode) {
+            super.onAmbientModeChanged(inAmbientMode);
             /* the wearable switched between modes */
         }
 
@@ -189,6 +193,7 @@
 
         &#64;Override
         public void onVisibilityChanged(boolean visible) {
+            super.onVisibilityChanged(visible);
             /* the watch face became visible or invisible */
         }
     }
diff --git a/services/core/java/com/android/server/AlarmManagerService.java b/services/core/java/com/android/server/AlarmManagerService.java
index 8b524dd..554393af 100644
--- a/services/core/java/com/android/server/AlarmManagerService.java
+++ b/services/core/java/com/android/server/AlarmManagerService.java
@@ -787,7 +787,7 @@
             }
 
             setImpl(type, triggerAtTime, windowLength, interval, operation,
-                    false, workSource, alarmClock);
+                    windowLength == AlarmManager.WINDOW_EXACT, workSource, alarmClock);
         }
 
         @Override
@@ -1425,12 +1425,9 @@
                             maxTriggerTime(nowELAPSED, nextElapsed, alarm.repeatInterval),
                             alarm.repeatInterval, alarm.operation, batch.standalone, true,
                             alarm.workSource, alarm.alarmClock, alarm.userId);
+                }
 
-                    // For now we count this as a wakeup alarm, meaning it needs to be
-                    // delivered immediately.  In the future we should change this, but
-                    // that required delaying when we reschedule the repeat...!
-                    hasWakeup = false;
-                } else if (alarm.wakeup) {
+                if (alarm.wakeup) {
                     hasWakeup = true;
                 }
 
diff --git a/services/core/java/com/android/server/ConnectivityService.java b/services/core/java/com/android/server/ConnectivityService.java
index 6a6dcaf..b4a248f 100644
--- a/services/core/java/com/android/server/ConnectivityService.java
+++ b/services/core/java/com/android/server/ConnectivityService.java
@@ -2532,7 +2532,7 @@
             String exclList = "";
             String pacFileUrl = "";
             if (proxyProperties != null && (!TextUtils.isEmpty(proxyProperties.getHost()) ||
-                    (proxyProperties.getPacFileUrl() != null))) {
+                    !Uri.EMPTY.equals(proxyProperties.getPacFileUrl()))) {
                 if (!proxyProperties.isValid()) {
                     if (DBG)
                         log("Invalid proxy properties, ignoring: " + proxyProperties.toString());
@@ -2542,7 +2542,7 @@
                 host = mGlobalProxy.getHost();
                 port = mGlobalProxy.getPort();
                 exclList = mGlobalProxy.getExclusionListAsString();
-                if (proxyProperties.getPacFileUrl() != null) {
+                if (!Uri.EMPTY.equals(proxyProperties.getPacFileUrl())) {
                     pacFileUrl = proxyProperties.getPacFileUrl().toString();
                 }
             } else {
@@ -2604,7 +2604,7 @@
 
     private void handleApplyDefaultProxy(ProxyInfo proxy) {
         if (proxy != null && TextUtils.isEmpty(proxy.getHost())
-                && (proxy.getPacFileUrl() == null)) {
+                && Uri.EMPTY.equals(proxy.getPacFileUrl())) {
             proxy = null;
         }
         synchronized (mProxyLock) {
@@ -2620,7 +2620,8 @@
             // global (to get the correct local port), and send a broadcast.
             // TODO: Switch PacManager to have its own message to send back rather than
             // reusing EVENT_HAS_CHANGED_PROXY and this call to handleApplyDefaultProxy.
-            if ((mGlobalProxy != null) && (proxy != null) && (proxy.getPacFileUrl() != null)
+            if ((mGlobalProxy != null) && (proxy != null)
+                    && (!Uri.EMPTY.equals(proxy.getPacFileUrl()))
                     && proxy.getPacFileUrl().equals(mGlobalProxy.getPacFileUrl())) {
                 mGlobalProxy = proxy;
                 sendProxyBroadcast(mGlobalProxy);
diff --git a/services/core/java/com/android/server/MountService.java b/services/core/java/com/android/server/MountService.java
index e400fb6..6c981c0 100644
--- a/services/core/java/com/android/server/MountService.java
+++ b/services/core/java/com/android/server/MountService.java
@@ -83,6 +83,7 @@
 
 import java.io.File;
 import java.io.FileDescriptor;
+import java.io.FileOutputStream;
 import java.io.IOException;
 import java.io.PrintWriter;
 import java.math.BigInteger;
@@ -90,7 +91,9 @@
 import java.security.NoSuchAlgorithmException;
 import java.security.spec.InvalidKeySpecException;
 import java.security.spec.KeySpec;
+import java.text.SimpleDateFormat;
 import java.util.ArrayList;
+import java.util.Date;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
@@ -359,6 +362,11 @@
     // Used in the ObbActionHandler
     private IMediaContainerService mContainerService = null;
 
+    // Last fstrim operation tracking
+    private static final String LAST_FSTRIM_FILE = "last-fstrim";
+    private final File mLastMaintenanceFile;
+    private long mLastMaintenance;
+
     // Handler messages
     private static final int H_UNMOUNT_PM_UPDATE = 1;
     private static final int H_UNMOUNT_PM_DONE = 2;
@@ -536,6 +544,15 @@
                 case H_FSTRIM: {
                     waitForReady();
                     Slog.i(TAG, "Running fstrim idle maintenance");
+
+                    // Remember when we kicked it off
+                    try {
+                        mLastMaintenance = System.currentTimeMillis();
+                        mLastMaintenanceFile.setLastModified(mLastMaintenance);
+                    } catch (Exception e) {
+                        Slog.e(TAG, "Unable to record last fstrim!");
+                    }
+
                     try {
                         // This method must be run on the main (handler) thread,
                         // so it is safe to directly call into vold.
@@ -544,6 +561,7 @@
                     } catch (NativeDaemonConnectorException ndce) {
                         Slog.e(TAG, "Failed to run fstrim!");
                     }
+
                     // invoke the completion callback, if any
                     Runnable callback = (Runnable) msg.obj;
                     if (callback != null) {
@@ -699,6 +717,18 @@
         mHandler.sendMessage(mHandler.obtainMessage(H_FSTRIM, callback));
     }
 
+    // Binder entry point for kicking off an immediate fstrim
+    @Override
+    public void runMaintenance() {
+        validatePermission(android.Manifest.permission.MOUNT_UNMOUNT_FILESYSTEMS);
+        runIdleMaintenance(null);
+    }
+
+    @Override
+    public long lastMaintenance() {
+        return mLastMaintenance;
+    }
+
     private void doShareUnshareVolume(String path, String method, boolean enable) {
         // TODO: Add support for multiple share methods
         if (!method.equals("ums")) {
@@ -1477,6 +1507,22 @@
         // Add OBB Action Handler to MountService thread.
         mObbActionHandler = new ObbActionHandler(IoThread.get().getLooper());
 
+        // Initialize the last-fstrim tracking if necessary
+        File dataDir = Environment.getDataDirectory();
+        File systemDir = new File(dataDir, "system");
+        mLastMaintenanceFile = new File(systemDir, LAST_FSTRIM_FILE);
+        if (!mLastMaintenanceFile.exists()) {
+            // Not setting mLastMaintenance here means that we will force an
+            // fstrim during reboot following the OTA that installs this code.
+            try {
+                (new FileOutputStream(mLastMaintenanceFile)).close();
+            } catch (IOException e) {
+                Slog.e(TAG, "Unable to create fstrim record " + mLastMaintenanceFile.getPath());
+            }
+        } else {
+            mLastMaintenance = mLastMaintenanceFile.lastModified();
+        }
+
         /*
          * Create the connection to vold with a maximum queue of twice the
          * amount of containers we'd ever expect to have. This keeps an
@@ -3075,6 +3121,12 @@
         pw.increaseIndent();
         mConnector.dump(fd, pw, args);
         pw.decreaseIndent();
+
+        SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
+
+        pw.println();
+        pw.print("Last maintenance: ");
+        pw.println(sdf.format(new Date(mLastMaintenance)));
     }
 
     /** {@inheritDoc} */
diff --git a/services/core/java/com/android/server/net/IpConfigStore.java b/services/core/java/com/android/server/net/IpConfigStore.java
index 857b9e9..b5a450d 100644
--- a/services/core/java/com/android/server/net/IpConfigStore.java
+++ b/services/core/java/com/android/server/net/IpConfigStore.java
@@ -122,8 +122,10 @@
                     out.writeUTF(proxyProperties.getHost());
                     out.writeUTF(PROXY_PORT_KEY);
                     out.writeInt(proxyProperties.getPort());
-                    out.writeUTF(EXCLUSION_LIST_KEY);
-                    out.writeUTF(exclusionList);
+                    if (exclusionList != null) {
+                        out.writeUTF(EXCLUSION_LIST_KEY);
+                        out.writeUTF(exclusionList);
+                    }
                     written = true;
                     break;
                 case PAC:
diff --git a/services/core/java/com/android/server/pm/PackageManagerService.java b/services/core/java/com/android/server/pm/PackageManagerService.java
index 3e1647e..73ceea3 100644
--- a/services/core/java/com/android/server/pm/PackageManagerService.java
+++ b/services/core/java/com/android/server/pm/PackageManagerService.java
@@ -138,6 +138,7 @@
 import android.os.Bundle;
 import android.os.Environment;
 import android.os.Environment.UserEnvironment;
+import android.os.storage.IMountService;
 import android.os.storage.StorageManager;
 import android.os.Debug;
 import android.os.FileUtils;
@@ -161,6 +162,7 @@
 import android.system.Os;
 import android.system.StructStat;
 import android.text.TextUtils;
+import android.text.format.DateUtils;
 import android.util.ArraySet;
 import android.util.AtomicFile;
 import android.util.DisplayMetrics;
@@ -280,6 +282,18 @@
     private static final long WATCHDOG_TIMEOUT = 1000*60*10;     // ten minutes
 
     /**
+     * Wall-clock timeout (in milliseconds) after which we *require* that an fstrim
+     * be run on this device.  We use the value in the Settings.Global.MANDATORY_FSTRIM_INTERVAL
+     * settings entry if available, otherwise we use the hardcoded default.  If it's been
+     * more than this long since the last fstrim, we force one during the boot sequence.
+     *
+     * This backstops other fstrim scheduling:  if the device is alive at midnight+idle,
+     * one gets run at the next available charging+idle time.  This final mandatory
+     * no-fstrim check kicks in only of the other scheduling criteria is never met.
+     */
+    private static final long DEFAULT_MANDATORY_FSTRIM_INTERVAL = 3 * DateUtils.DAY_IN_MILLIS;
+
+    /**
      * Whether verification is enabled by default.
      */
     private static final boolean DEFAULT_VERIFY_ENABLE = true;
@@ -4506,6 +4520,37 @@
     public void performBootDexOpt() {
         enforceSystemOrRoot("Only the system can request dexopt be performed");
 
+        // Before everything else, see whether we need to fstrim.
+        try {
+            IMountService ms = PackageHelper.getMountService();
+            if (ms != null) {
+                final long interval = android.provider.Settings.Global.getLong(
+                        mContext.getContentResolver(),
+                        android.provider.Settings.Global.FSTRIM_MANDATORY_INTERVAL,
+                        DEFAULT_MANDATORY_FSTRIM_INTERVAL);
+                if (interval > 0) {
+                    final long timeSinceLast = System.currentTimeMillis() - ms.lastMaintenance();
+                    if (timeSinceLast > interval) {
+                        Slog.w(TAG, "No disk maintenance in " + timeSinceLast
+                                + "; running immediately");
+                        if (!isFirstBoot()) {
+                            try {
+                                ActivityManagerNative.getDefault().showBootMessage(
+                                        mContext.getResources().getString(
+                                                R.string.android_upgrading_fstrim), true);
+                            } catch (RemoteException e) {
+                            }
+                        }
+                        ms.runMaintenance();
+                    }
+                }
+            } else {
+                Slog.e(TAG, "Mount service unavailable!");
+            }
+        } catch (RemoteException e) {
+            // Can't happen; MountService is local
+        }
+
         final HashSet<PackageParser.Package> pkgs;
         synchronized (mPackages) {
             pkgs = mDeferredDexOpt;
diff --git a/services/java/com/android/server/SystemServer.java b/services/java/com/android/server/SystemServer.java
index 92ad1ad..22f6ca4 100644
--- a/services/java/com/android/server/SystemServer.java
+++ b/services/java/com/android/server/SystemServer.java
@@ -546,20 +546,6 @@
             reportWtf("making display ready", e);
         }
 
-        try {
-            mPackageManagerService.performBootDexOpt();
-        } catch (Throwable e) {
-            reportWtf("performing boot dexopt", e);
-        }
-
-        try {
-            ActivityManagerNative.getDefault().showBootMessage(
-                    context.getResources().getText(
-                            com.android.internal.R.string.android_upgrading_starting_apps),
-                    false);
-        } catch (RemoteException e) {
-        }
-
         if (mFactoryTestMode != FactoryTest.FACTORY_TEST_LOW_LEVEL) {
             if (!disableStorage &&
                 !"0".equals(SystemProperties.get("system_init.startmountservice"))) {
@@ -575,7 +561,23 @@
                     reportWtf("starting Mount Service", e);
                 }
             }
+        }
 
+        try {
+            mPackageManagerService.performBootDexOpt();
+        } catch (Throwable e) {
+            reportWtf("performing boot dexopt", e);
+        }
+
+        try {
+            ActivityManagerNative.getDefault().showBootMessage(
+                    context.getResources().getText(
+                            com.android.internal.R.string.android_upgrading_starting_apps),
+                    false);
+        } catch (RemoteException e) {
+        }
+
+        if (mFactoryTestMode != FactoryTest.FACTORY_TEST_LOW_LEVEL) {
             if (!disableNonCoreServices) {
                 try {
                     Slog.i(TAG,  "LockSettingsService");
diff --git a/services/usb/java/com/android/server/usb/UsbDeviceManager.java b/services/usb/java/com/android/server/usb/UsbDeviceManager.java
index c63eb18..23ba3b6 100644
--- a/services/usb/java/com/android/server/usb/UsbDeviceManager.java
+++ b/services/usb/java/com/android/server/usb/UsbDeviceManager.java
@@ -209,8 +209,13 @@
         mUseUsbNotification = !massStorageSupported;
 
         // make sure the ADB_ENABLED setting value matches the current state
-        Settings.Global.putInt(mContentResolver, Settings.Global.ADB_ENABLED, mAdbEnabled ? 1 : 0);
-
+        try {
+            Settings.Global.putInt(mContentResolver,
+                    Settings.Global.ADB_ENABLED, mAdbEnabled ? 1 : 0);
+        } catch (SecurityException e) {
+            // If UserManager.DISALLOW_DEBUGGING_FEATURES is on, that this setting can't be changed.
+            Slog.d(TAG, "ADB_ENABLED is restricted.");
+        }
         mHandler.sendEmptyMessage(MSG_SYSTEM_READY);
     }
 
diff --git a/tools/layoutlib/.idea/codeStyleSettings.xml b/tools/layoutlib/.idea/codeStyleSettings.xml
index b324213..a04e440 100644
--- a/tools/layoutlib/.idea/codeStyleSettings.xml
+++ b/tools/layoutlib/.idea/codeStyleSettings.xml
@@ -67,9 +67,13 @@
             </groups>
           </arrangement>
         </codeStyleSettings>
+        <codeStyleSettings language="XML">
+          <indentOptions>
+            <option name="CONTINUATION_INDENT_SIZE" value="4" />
+          </indentOptions>
+        </codeStyleSettings>
       </value>
     </option>
     <option name="USE_PER_PROJECT_SETTINGS" value="true" />
   </component>
-</project>
-
+</project>
\ No newline at end of file
diff --git a/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java b/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
index 93814b2..c41a4ee 100644
--- a/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
+++ b/tools/layoutlib/bridge/src/android/content/res/BridgeAssetManager.java
@@ -23,7 +23,7 @@
 public class BridgeAssetManager extends AssetManager {
 
     /**
-     * This initializes the static field {@link AssetManager#mSystem} which is used
+     * This initializes the static field {@link AssetManager#sSystem} which is used
      * by methods who get a global asset manager using {@link AssetManager#getSystem()}.
      * <p/>
      * They will end up using our bridge asset manager.
diff --git a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
index 4993262..ab79664 100644
--- a/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
+++ b/tools/layoutlib/bridge/src/android/graphics/FontFamily_Delegate.java
@@ -282,7 +282,7 @@
     @LayoutlibDelegate
     /*package*/ static boolean nAddFontFromAsset(long nativeFamily, AssetManager mgr, String path) {
         Bridge.getLog().fidelityWarning(LayoutLog.TAG_UNSUPPORTED,
-                "FontFamily.addFontFromAsset is not supported.", null, null);
+                "Typeface.createFromAsset is not supported.", null, null);
         return false;
     }
 
diff --git a/tools/layoutlib/bridge/src/android/preference/BridgePreferenceInflater.java b/tools/layoutlib/bridge/src/android/preference/BridgePreferenceInflater.java
new file mode 100644
index 0000000..4f00b5d
--- /dev/null
+++ b/tools/layoutlib/bridge/src/android/preference/BridgePreferenceInflater.java
@@ -0,0 +1,52 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.preference;
+
+import com.android.layoutlib.bridge.android.BridgeContext;
+import com.android.layoutlib.bridge.android.BridgeXmlBlockParser;
+
+import android.content.Context;
+import android.util.AttributeSet;
+
+public class BridgePreferenceInflater extends PreferenceInflater {
+
+    public BridgePreferenceInflater(Context context, PreferenceManager preferenceManager) {
+        super(context, preferenceManager);
+    }
+
+    @Override
+    protected Preference onCreateItem(String name, AttributeSet attrs)
+            throws ClassNotFoundException {
+        Object viewKey = null;
+        BridgeContext bc = null;
+
+        Context context = getContext();
+        if (context instanceof BridgeContext) {
+            bc = (BridgeContext) context;
+        }
+        if (attrs instanceof BridgeXmlBlockParser) {
+            viewKey = ((BridgeXmlBlockParser) attrs).getViewCookie();
+        }
+
+        Preference preference = super.onCreateItem(name, attrs);
+
+        if (viewKey != null && bc != null) {
+            bc.addCookie(preference, viewKey);
+        }
+        return preference;
+    }
+}
diff --git a/tools/layoutlib/bridge/src/android/preference/Preference_Delegate.java b/tools/layoutlib/bridge/src/android/preference/Preference_Delegate.java
new file mode 100644
index 0000000..49ee642
--- /dev/null
+++ b/tools/layoutlib/bridge/src/android/preference/Preference_Delegate.java
@@ -0,0 +1,83 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.preference;
+
+import com.android.internal.R;
+import com.android.layoutlib.bridge.android.BridgeContext;
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import org.xmlpull.v1.XmlPullParser;
+
+import android.content.Context;
+import android.content.res.TypedArray;
+import android.view.LayoutInflater;
+import android.view.View;
+import android.view.ViewGroup;
+import android.widget.ListView;
+
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Delegate that provides implementation for native methods in {@link Preference}
+ * <p/>
+ * Through the layoutlib_create tool, selected methods of Preference have been replaced by calls to
+ * methods of the same name in this delegate class.
+ */
+public class Preference_Delegate {
+
+    @LayoutlibDelegate
+    /*package*/ static View getView(Preference pref, View convertView, ViewGroup parent) {
+        Context context = pref.getContext();
+        BridgeContext bc = context instanceof BridgeContext ? ((BridgeContext) context) : null;
+        convertView = pref.getView_Original(convertView, parent);
+        if (bc != null) {
+            Object cookie = bc.getCookie(pref);
+            if (cookie != null) {
+                bc.addViewKey(convertView, cookie);
+            }
+        }
+        return convertView;
+    }
+
+    /**
+     * Inflates the parser and returns the ListView containing the Preferences.
+     */
+    public static View inflatePreference(Context context, XmlPullParser parser, ViewGroup root) {
+        PreferenceManager pm = new PreferenceManager(context);
+        PreferenceScreen ps = pm.getPreferenceScreen();
+        PreferenceInflater inflater = new BridgePreferenceInflater(context, pm);
+        ps = (PreferenceScreen) inflater.inflate(parser, ps, true);
+        ListView preferenceView = createContainerView(context, root);
+        ps.bind(preferenceView);
+        return preferenceView;
+    }
+
+    private static ListView createContainerView(Context context, ViewGroup root) {
+        TypedArray a = context.obtainStyledAttributes(null, R.styleable.PreferenceFragment,
+                R.attr.preferenceFragmentStyle, 0);
+        int mLayoutResId = a.getResourceId(R.styleable.PreferenceFragment_layout,
+                        R.layout.preference_list_fragment);
+        a.recycle();
+
+        LayoutInflater inflater =
+                (LayoutInflater) context.getSystemService(Context.LAYOUT_INFLATER_SERVICE);
+        inflater.inflate(mLayoutResId, root, true);
+
+        return (ListView) root.findViewById(android.R.id.list);
+    }
+}
diff --git a/tools/layoutlib/bridge/src/android/text/StaticLayout_Delegate.java b/tools/layoutlib/bridge/src/android/text/StaticLayout_Delegate.java
index 5a467b2..b0d79a8 100644
--- a/tools/layoutlib/bridge/src/android/text/StaticLayout_Delegate.java
+++ b/tools/layoutlib/bridge/src/android/text/StaticLayout_Delegate.java
@@ -13,8 +13,8 @@
 
 /**
  * Delegate that provides implementation for native methods in {@link android.text.StaticLayout}
- *
- * Through the layoutlib_create tool, selected methods of Handler have been replaced
+ * <p/>
+ * Through the layoutlib_create tool, selected methods of StaticLayout have been replaced
  * by calls to methods of the same name in this delegate class.
  *
  */
diff --git a/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java b/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java
deleted file mode 100644
index ed8498f..0000000
--- a/tools/layoutlib/bridge/src/android/text/format/Time_Delegate.java
+++ /dev/null
@@ -1,75 +0,0 @@
-/*
- * Copyright (C) 2013 The Android Open Source Project
- *
- * Licensed under the Apache License, Version 2.0 (the "License");
- * you may not use this file except in compliance with the License.
- * You may obtain a copy of the License at
- *
- *      http://www.apache.org/licenses/LICENSE-2.0
- *
- * Unless required by applicable law or agreed to in writing, software
- * distributed under the License is distributed on an "AS IS" BASIS,
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- * See the License for the specific language governing permissions and
- * limitations under the License.
- */
-
-package android.text.format;
-
-import java.util.Calendar;
-import java.util.TimeZone;
-import java.util.UnknownFormatConversionException;
-import java.util.regex.Pattern;
-
-import com.android.ide.common.rendering.api.LayoutLog;
-import com.android.layoutlib.bridge.Bridge;
-import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
-
-/**
- * Delegate used to provide new implementation for native methods of {@link Time}
- *
- * Through the layoutlib_create tool, some native methods of Time have been replaced by calls to
- * methods of the same name in this delegate class.
- */
-public class Time_Delegate {
-
-    // Regex to match odd number of '%'.
-    private static final Pattern p = Pattern.compile("(?<!%)(%%)*%(?!%)");
-
-    // Format used by toString()
-    private static final String FORMAT = "%1$tY%1$tm%1$tdT%1$tH%1$tM%1$tS<%1$tZ>";
-
-    // ---- private helper methods ----
-
-    private static Calendar timeToCalendar(Time time) {
-        Calendar calendar = getCalendarInstance(time);
-        calendar.set(time.year, time.month, time.monthDay, time.hour, time.minute, time.second);
-        return calendar;
-    }
-
-    private static void calendarToTime(Calendar c, Time time) {
-        time.timezone = c.getTimeZone().getID();
-        time.set(c.get(Calendar.SECOND), c.get(Calendar.MINUTE), c.get(Calendar.HOUR_OF_DAY),
-                c.get(Calendar.DATE), c.get(Calendar.MONTH), c.get(Calendar.YEAR));
-        time.weekDay = c.get(Calendar.DAY_OF_WEEK);
-        time.yearDay = c.get(Calendar.DAY_OF_YEAR);
-        time.isDst = c.getTimeZone().inDaylightTime(c.getTime()) ? 1 : 0;
-        // gmtoff is in seconds and TimeZone.getOffset() returns milliseconds.
-        time.gmtoff = c.getTimeZone().getOffset(c.getTimeInMillis()) / DateUtils.SECOND_IN_MILLIS;
-    }
-
-    /**
-     * Return a calendar instance with the correct timezone.
-     *
-     * @param time Time to obtain the timezone from.
-     */
-    private static Calendar getCalendarInstance(Time time) {
-        // TODO: Check platform code to make sure the behavior is same for null/invalid timezone.
-        if (time == null || time.timezone == null) {
-            // Default to local timezone.
-            return Calendar.getInstance();
-        }
-        // If timezone is invalid, use GMT.
-        return Calendar.getInstance(TimeZone.getTimeZone(time.timezone));
-    }
-}
diff --git a/tools/layoutlib/bridge/src/android/widget/TimePickerSpinnerDelegate_Delegate.java b/tools/layoutlib/bridge/src/android/widget/TimePickerSpinnerDelegate_Delegate.java
new file mode 100644
index 0000000..c9d35b9
--- /dev/null
+++ b/tools/layoutlib/bridge/src/android/widget/TimePickerSpinnerDelegate_Delegate.java
@@ -0,0 +1,44 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package android.widget;
+
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import android.view.KeyEvent;
+
+/**
+ * Delegate used to provide new implementation of few methods in {@link TimePickerSpinnerDelegate}.
+ */
+public class TimePickerSpinnerDelegate_Delegate {
+
+    // Copied from TimePickerSpinnerDelegate.
+    private static final int AM = 0;
+    private static final int PM = 1;
+
+    @LayoutlibDelegate
+    static int getAmOrPmKeyCode(TimePickerSpinnerDelegate tpsd, int amOrPm) {
+        // We don't care about locales here.
+        if (amOrPm == AM) {
+            return KeyEvent.KEYCODE_A;
+        } else if (amOrPm == PM) {
+            return KeyEvent.KEYCODE_P;
+        } else {
+            assert false : "amOrPm value in TimePickerSpinnerDelegate can only be 0 or 1";
+            return -1;
+        }
+    }
+}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
index ec78712..4d2c2fc 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/Bridge.java
@@ -22,6 +22,7 @@
 import com.android.annotations.NonNull;
 import com.android.ide.common.rendering.api.Capability;
 import com.android.ide.common.rendering.api.DrawableParams;
+import com.android.ide.common.rendering.api.Features;
 import com.android.ide.common.rendering.api.LayoutLog;
 import com.android.ide.common.rendering.api.RenderSession;
 import com.android.ide.common.rendering.api.Result;
@@ -36,6 +37,7 @@
 import com.android.tools.layoutlib.create.OverrideMethod;
 import com.android.util.Pair;
 import com.ibm.icu.util.ULocale;
+import libcore.io.MemoryMappedFile_Delegate;
 
 import android.content.res.BridgeAssetManager;
 import android.graphics.Bitmap;
@@ -179,7 +181,7 @@
      */
     private static LayoutLog sCurrentLog = sDefaultLog;
 
-    private EnumSet<Capability> mCapabilities;
+    private static final int LAST_SUPPORTED_FEATURE = Features.PREFERENCES_RENDERING;
 
     @Override
     public int getApiLevel() {
@@ -187,8 +189,16 @@
     }
 
     @Override
+    @Deprecated
     public EnumSet<Capability> getCapabilities() {
-        return mCapabilities;
+        // The Capability class is deprecated and frozen. All Capabilities enumerated there are
+        // supported by this version of LayoutLibrary. So, it's safe to use EnumSet.allOf()
+        return EnumSet.allOf(Capability.class);
+    }
+
+    @Override
+    public boolean supports(int feature) {
+        return feature <= LAST_SUPPORTED_FEATURE;
     }
 
     @Override
@@ -199,26 +209,6 @@
         sPlatformProperties = platformProperties;
         sEnumValueMap = enumValueMap;
 
-        // don't use EnumSet.allOf(), because the bridge doesn't come with its specific version
-        // of layoutlib_api. It is provided by the client which could have a more recent version
-        // with newer, unsupported capabilities.
-        mCapabilities = EnumSet.of(
-                Capability.UNBOUND_RENDERING,
-                Capability.CUSTOM_BACKGROUND_COLOR,
-                Capability.RENDER,
-                Capability.LAYOUT_ONLY,
-                Capability.EMBEDDED_LAYOUT,
-                Capability.VIEW_MANIPULATION,
-                Capability.PLAY_ANIMATION,
-                Capability.ANIMATED_VIEW_MANIPULATION,
-                Capability.ADAPTER_BINDING,
-                Capability.EXTENDED_VIEWINFO,
-                Capability.FIXED_SCALABLE_NINE_PATCH,
-                Capability.RTL,
-                Capability.ACTION_BAR,
-                Capability.SIMULATE_PLATFORM);
-
-
         BridgeAssetManager.initSystem();
 
         // When DEBUG_LAYOUT is set and is not 0 or false, setup a default listener
@@ -252,6 +242,7 @@
 
         // load the fonts.
         FontFamily_Delegate.setFontLocation(fontLocation.getAbsolutePath());
+        MemoryMappedFile_Delegate.setDataDir(fontLocation.getAbsoluteFile().getParentFile());
 
         // now parse com.android.internal.R (and only this one as android.R is a subset of
         // the internal version), and put the content in the maps.
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
index aeb70e9..8523f1a 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeContext.java
@@ -73,6 +73,7 @@
 import android.view.View;
 import android.view.ViewGroup;
 import android.view.WindowManager;
+import android.view.accessibility.AccessibilityManager;
 import android.view.textservice.TextServicesManager;
 
 import java.io.File;
@@ -92,8 +93,15 @@
  */
 public final class BridgeContext extends Context {
 
-    private Resources mSystemResources;
+    /** The map adds cookies to each view so that IDE can link xml tags to views. */
     private final HashMap<View, Object> mViewKeyMap = new HashMap<View, Object>();
+    /**
+     * In some cases, when inflating an xml, some objects are created. Then later, the objects are
+     * converted to views. This map stores the mapping from objects to cookies which can then be
+     * used to populate the mViewKeyMap.
+     */
+    private final HashMap<Object, Object> mViewKeyHelpMap = new HashMap<Object, Object>();
+    private Resources mSystemResources;
     private final Object mProjectKey;
     private final DisplayMetrics mMetrics;
     private final RenderResources mRenderResources;
@@ -120,8 +128,9 @@
     private BridgeContentResolver mContentResolver;
 
     private final Stack<BridgeXmlBlockParser> mParserStack = new Stack<BridgeXmlBlockParser>();
+    private SharedPreferences mSharedPreferences;
 
-    /**
+  /**
      * @param projectKey An Object identifying the project. This is used for the cache mechanism.
      * @param metrics the {@link DisplayMetrics}.
      * @param renderResources the configured resources (both framework and projects) for this
@@ -189,6 +198,14 @@
         return mViewKeyMap.get(view);
     }
 
+    public void addCookie(Object o, Object cookie) {
+        mViewKeyHelpMap.put(o, cookie);
+    }
+
+    public Object getCookie(Object o) {
+        return mViewKeyHelpMap.get(o);
+    }
+
     public Object getProjectKey() {
         return mProjectKey;
     }
@@ -460,6 +477,10 @@
             return mDisplayManager;
         }
 
+        if (ACCESSIBILITY_SERVICE.equals(service)) {
+            return AccessibilityManager.getInstance(this);
+        }
+
         throw new UnsupportedOperationException("Unsupported Service: " + service);
     }
 
@@ -475,28 +496,22 @@
     @Override
     public final BridgeTypedArray obtainStyledAttributes(int resid, int[] attrs)
             throws Resources.NotFoundException {
+        StyleResourceValue style = null;
         // get the StyleResourceValue based on the resId;
-        StyleResourceValue style = getStyleByDynamicId(resid);
+        if (resid != 0) {
+            style = getStyleByDynamicId(resid);
 
-        if (style == null) {
-            // In some cases, style may not be a dynamic id, so we do a full search.
-            ResourceReference ref = resolveId(resid);
-            if (ref != null) {
-                if (ref.isFramework()) {
-                    ref =
-                      getRenderResources().getFrameworkResource(ResourceType.STYLE, ref.getName());
-                } else {
-                    ref =
-                      getRenderResources().getProjectResource(ResourceType.STYLE, ref.getName());
-                }
-                if (ref instanceof StyleResourceValue) {
-                    style = ((StyleResourceValue) ref);
+            if (style == null) {
+                // In some cases, style may not be a dynamic id, so we do a full search.
+                ResourceReference ref = resolveId(resid);
+                if (ref != null) {
+                    style = mRenderResources.getStyle(ref.getName(), ref.isFramework());
                 }
             }
-        }
 
-        if (style == null) {
-            throw new Resources.NotFoundException();
+            if (style == null) {
+                throw new Resources.NotFoundException();
+            }
         }
 
         if (mTypedArrayCache == null) {
@@ -1172,8 +1187,10 @@
 
     @Override
     public SharedPreferences getSharedPreferences(String arg0, int arg1) {
-        // pass
-        return null;
+        if (mSharedPreferences == null) {
+            mSharedPreferences = new BridgeSharedPreferences();
+        }
+        return mSharedPreferences;
     }
 
     @Override
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeSharedPreferences.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeSharedPreferences.java
new file mode 100644
index 0000000..132ff2f
--- /dev/null
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/BridgeSharedPreferences.java
@@ -0,0 +1,138 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.layoutlib.bridge.android;
+
+import android.content.SharedPreferences;
+
+import java.util.Map;
+import java.util.Set;
+
+/**
+ * An empty shared preferences implementation which doesn't store anything. It always returns
+ * null, 0 or false.
+ */
+public class BridgeSharedPreferences implements SharedPreferences {
+    private Editor mEditor;
+
+    @Override
+    public Map<String, ?> getAll() {
+        return null;
+    }
+
+    @Override
+    public String getString(String key, String defValue) {
+        return null;
+    }
+
+    @Override
+    public Set<String> getStringSet(String key, Set<String> defValues) {
+        return null;
+    }
+
+    @Override
+    public int getInt(String key, int defValue) {
+        return 0;
+    }
+
+    @Override
+    public long getLong(String key, long defValue) {
+        return 0;
+    }
+
+    @Override
+    public float getFloat(String key, float defValue) {
+        return 0;
+    }
+
+    @Override
+    public boolean getBoolean(String key, boolean defValue) {
+        return false;
+    }
+
+    @Override
+    public boolean contains(String key) {
+        return false;
+    }
+
+    @Override
+    public Editor edit() {
+        if (mEditor != null) {
+            return mEditor;
+        }
+        mEditor = new Editor() {
+            @Override
+            public Editor putString(String key, String value) {
+                return null;
+            }
+
+            @Override
+            public Editor putStringSet(String key, Set<String> values) {
+                return null;
+            }
+
+            @Override
+            public Editor putInt(String key, int value) {
+                return null;
+            }
+
+            @Override
+            public Editor putLong(String key, long value) {
+                return null;
+            }
+
+            @Override
+            public Editor putFloat(String key, float value) {
+                return null;
+            }
+
+            @Override
+            public Editor putBoolean(String key, boolean value) {
+                return null;
+            }
+
+            @Override
+            public Editor remove(String key) {
+                return null;
+            }
+
+            @Override
+            public Editor clear() {
+                return null;
+            }
+
+            @Override
+            public boolean commit() {
+                return false;
+            }
+
+            @Override
+            public void apply() {
+            }
+        };
+        return mEditor;
+    }
+
+    @Override
+    public void registerOnSharedPreferenceChangeListener(
+            OnSharedPreferenceChangeListener listener) {
+    }
+
+    @Override
+    public void unregisterOnSharedPreferenceChangeListener(
+            OnSharedPreferenceChangeListener listener) {
+    }
+}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
new file mode 100644
index 0000000..e00ea6a
--- /dev/null
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/android/SessionParamsFlags.java
@@ -0,0 +1,35 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.layoutlib.bridge.android;
+
+import com.android.ide.common.rendering.api.SessionParams;
+
+/**
+ * This contains all known keys for the {@link SessionParams#getFlag(SessionParams.Key)}.
+ * <p/>
+ * The IDE has its own copy of this class which may be newer or older than this one.
+ * <p/>
+ * Constants should never be modified or removed from this class.
+ */
+public final class SessionParamsFlags {
+
+    public static final SessionParams.Key<String> FLAG_KEY_ROOT_TAG =
+            new SessionParams.Key<String>("rootTag", String.class);
+
+    // Disallow instances.
+    private SessionParamsFlags() {}
+}
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
index a2eed9a..4637bfd 100644
--- a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/impl/RenderSessionImpl.java
@@ -36,6 +36,7 @@
 import com.android.ide.common.rendering.api.Result.Status;
 import com.android.ide.common.rendering.api.SessionParams;
 import com.android.ide.common.rendering.api.SessionParams.RenderingMode;
+import com.android.ide.common.rendering.api.StyleResourceValue;
 import com.android.ide.common.rendering.api.ViewInfo;
 import com.android.ide.common.rendering.api.ViewType;
 import com.android.internal.util.XmlUtils;
@@ -49,6 +50,7 @@
 import com.android.layoutlib.bridge.android.BridgeContext;
 import com.android.layoutlib.bridge.android.BridgeLayoutParamsMapAttributes;
 import com.android.layoutlib.bridge.android.BridgeXmlBlockParser;
+import com.android.layoutlib.bridge.android.SessionParamsFlags;
 import com.android.layoutlib.bridge.bars.Config;
 import com.android.layoutlib.bridge.bars.NavigationBar;
 import com.android.layoutlib.bridge.bars.StatusBar;
@@ -73,6 +75,7 @@
 import android.graphics.Bitmap_Delegate;
 import android.graphics.Canvas;
 import android.graphics.drawable.Drawable;
+import android.preference.Preference_Delegate;
 import android.util.DisplayMetrics;
 import android.util.TypedValue;
 import android.view.AttachInfo_Accessor;
@@ -87,7 +90,6 @@
 import android.view.ViewGroup.MarginLayoutParams;
 import android.view.ViewParent;
 import android.view.WindowManagerGlobal_Delegate;
-import android.view.ViewParent;
 import android.widget.AbsListView;
 import android.widget.AbsSpinner;
 import android.widget.ActionMenuView;
@@ -133,6 +135,7 @@
     private int mMeasuredScreenHeight = -1;
     private boolean mIsAlphaChannelImage;
     private boolean mWindowIsFloating;
+    private Boolean mIsThemeAppCompat;
 
     private int mStatusBarSize;
     private int mNavigationBarSize;
@@ -193,11 +196,9 @@
         DisplayMetrics metrics = getContext().getMetrics();
 
         // use default of true in case it's not found to use alpha by default
-        mIsAlphaChannelImage  = getBooleanThemeValue(resources,
-                "windowIsFloating", true /*defaultValue*/);
-
-        mWindowIsFloating = getBooleanThemeValue(resources, "windowIsFloating",
-                true /*defaultValue*/);
+        mIsAlphaChannelImage  = getBooleanThemeValue(resources, "windowIsFloating", true, true);
+        // FIXME: Find out why both variables are taking the same value.
+        mWindowIsFloating = getBooleanThemeValue(resources, "windowIsFloating", true, true);
 
         findBackground(resources);
         findStatusBar(resources, metrics);
@@ -397,7 +398,15 @@
             // it can instantiate the custom Fragment.
             Fragment_Delegate.setProjectCallback(params.getProjectCallback());
 
-            View view = mInflater.inflate(mBlockParser, mContentRoot);
+            String rootTag = params.getFlag(SessionParamsFlags.FLAG_KEY_ROOT_TAG);
+            boolean isPreference = "PreferenceScreen".equals(rootTag);
+            View view;
+            if (isPreference) {
+                view = Preference_Delegate.inflatePreference(getContext(), mBlockParser,
+                  mContentRoot);
+            } else {
+                view = mInflater.inflate(mBlockParser, mContentRoot);
+            }
 
             // done with the parser, pop it.
             context.popParser();
@@ -408,7 +417,7 @@
             AttachInfo_Accessor.setAttachInfo(mViewRoot);
 
             // post-inflate process. For now this supports TabHost/TabWidget
-            postInflateProcess(view, params.getProjectCallback());
+            postInflateProcess(view, params.getProjectCallback(), isPreference ? view : null);
 
             // get the background drawable
             if (mWindowBackground != null) {
@@ -1050,7 +1059,7 @@
 
     private void findStatusBar(RenderResources resources, DisplayMetrics metrics) {
         boolean windowFullscreen = getBooleanThemeValue(resources,
-                "windowFullscreen", false /*defaultValue*/);
+                "windowFullscreen", false, !isThemeAppCompat(resources));
 
         if (!windowFullscreen && !mWindowIsFloating) {
             // default value
@@ -1077,7 +1086,7 @@
         }
 
         boolean windowActionBar = getBooleanThemeValue(resources,
-                "windowActionBar", true /*defaultValue*/);
+                "windowActionBar", true, !isThemeAppCompat(resources));
 
         // if there's a value and it's false (default is true)
         if (windowActionBar) {
@@ -1104,7 +1113,7 @@
         } else {
             // action bar overrides title bar so only look for this one if action bar is hidden
             boolean windowNoTitle = getBooleanThemeValue(resources,
-                    "windowNoTitle", false /*defaultValue*/);
+                    "windowNoTitle", false, !isThemeAppCompat(resources));
 
             if (!windowNoTitle) {
 
@@ -1176,20 +1185,30 @@
         }
     }
 
+    private boolean isThemeAppCompat(RenderResources resources) {
+        // Ideally, we should check if the corresponding activity extends
+        // android.support.v7.app.ActionBarActivity, and not care about the theme name at all.
+        if (mIsThemeAppCompat == null) {
+            StyleResourceValue defaultTheme = resources.getDefaultTheme();
+            StyleResourceValue val = resources.getStyle("Theme.AppCompat", false);
+            mIsThemeAppCompat = defaultTheme == val || resources.themeIsParentOf(val, defaultTheme);
+        }
+        return mIsThemeAppCompat;
+    }
+
     /**
-     * Looks for a attribute in the current theme. The attribute is in the android
-     * namespace.
+     * Looks for an attribute in the current theme.
      *
      * @param resources the render resources
      * @param name the name of the attribute
      * @param defaultValue the default value.
+     * @param isFrameworkAttr if the attribute is in android namespace
      * @return the value of the attribute or the default one if not found.
      */
     private boolean getBooleanThemeValue(RenderResources resources,
-            String name, boolean defaultValue) {
+            String name, boolean defaultValue, boolean isFrameworkAttr) {
 
-        // get the title bar flag from the current theme.
-        ResourceValue value = resources.findItemInTheme(name, true /*isFrameworkAttr*/);
+        ResourceValue value = resources.findItemInTheme(name, isFrameworkAttr);
 
         // because it may reference something else, we resolve it.
         value = resources.resolveResValue(value);
@@ -1210,12 +1229,16 @@
      * based on the content of the {@link FrameLayout}.
      * @param view the root view to process.
      * @param projectCallback callback to the project.
+     * @param skip the view and it's children are not processed.
      */
     @SuppressWarnings("deprecation")  // For the use of Pair
-    private void postInflateProcess(View view, IProjectCallback projectCallback)
+    private void postInflateProcess(View view, IProjectCallback projectCallback, View skip)
             throws PostInflateException {
+        if (view == skip) {
+            return;
+        }
         if (view instanceof TabHost) {
-            setupTabHost((TabHost)view, projectCallback);
+            setupTabHost((TabHost) view, projectCallback);
         } else if (view instanceof QuickContactBadge) {
             QuickContactBadge badge = (QuickContactBadge) view;
             badge.setImageToDefault();
@@ -1248,7 +1271,7 @@
                             boolean skipCallbackParser = false;
 
                             int count = binding.getHeaderCount();
-                            for (int i = 0 ; i < count ; i++) {
+                            for (int i = 0; i < count; i++) {
                                 Pair<View, Boolean> pair = context.inflateView(
                                         binding.getHeaderAt(i),
                                         list, false /*attachToRoot*/, skipCallbackParser);
@@ -1260,7 +1283,7 @@
                             }
 
                             count = binding.getFooterCount();
-                            for (int i = 0 ; i < count ; i++) {
+                            for (int i = 0; i < count; i++) {
                                 Pair<View, Boolean> pair = context.inflateView(
                                         binding.getFooterAt(i),
                                         list, false /*attachToRoot*/, skipCallbackParser);
@@ -1289,11 +1312,11 @@
                 }
             }
         } else if (view instanceof ViewGroup) {
-            ViewGroup group = (ViewGroup)view;
+            ViewGroup group = (ViewGroup) view;
             final int count = group.getChildCount();
-            for (int c = 0 ; c < count ; c++) {
+            for (int c = 0; c < count; c++) {
                 View child = group.getChildAt(c);
-                postInflateProcess(child, projectCallback);
+                postInflateProcess(child, projectCallback, skip);
             }
         }
     }
@@ -1361,6 +1384,7 @@
             for (int i = 0 ; i < count ; i++) {
                 View child = content.getChildAt(i);
                 String tabSpec = String.format("tab_spec%d", i+1);
+                @SuppressWarnings("ConstantConditions")  // child cannot be null.
                 int id = child.getId();
                 @SuppressWarnings("deprecation")
                 Pair<ResourceType, String> resource = projectCallback.resolveResourceId(id);
diff --git a/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
new file mode 100644
index 0000000..7e361a1
--- /dev/null
+++ b/tools/layoutlib/bridge/src/com/android/layoutlib/bridge/libcore/io/BridgeBufferIterator.java
@@ -0,0 +1,76 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.layoutlib.bridge.libcore.io;
+
+import java.nio.ByteBuffer;
+
+import libcore.io.BufferIterator;
+
+/**
+ * Provides an implementation of {@link BufferIterator} over a {@link ByteBuffer}.
+ */
+public class BridgeBufferIterator extends BufferIterator {
+
+    private final long mSize;
+    private final ByteBuffer mByteBuffer;
+
+    public BridgeBufferIterator(long size, ByteBuffer buffer) {
+        mSize = size;
+        mByteBuffer = buffer;
+    }
+
+    @Override
+    public void seek(int offset) {
+        assert offset <= mSize;
+        mByteBuffer.position(offset);
+    }
+
+    @Override
+    public void skip(int byteCount) {
+        int newPosition = mByteBuffer.position() + byteCount;
+        assert newPosition <= mSize;
+        mByteBuffer.position(newPosition);
+    }
+
+    @Override
+    public void readByteArray(byte[] dst, int dstOffset, int byteCount) {
+        assert dst.length >= dstOffset + byteCount;
+        mByteBuffer.get(dst, dstOffset, byteCount);
+    }
+
+    @Override
+    public byte readByte() {
+        return mByteBuffer.get();
+    }
+
+    @Override
+    public int readInt() {
+        return mByteBuffer.getInt();
+    }
+
+    @Override
+    public void readIntArray(int[] dst, int dstOffset, int intCount) {
+        while (--intCount >= 0) {
+            dst[dstOffset++] = mByteBuffer.getInt();
+        }
+    }
+
+    @Override
+    public short readShort() {
+        return mByteBuffer.getShort();
+    }
+}
diff --git a/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java b/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java
new file mode 100644
index 0000000..723d5c4
--- /dev/null
+++ b/tools/layoutlib/bridge/src/libcore/io/MemoryMappedFile_Delegate.java
@@ -0,0 +1,118 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package libcore.io;
+
+import com.android.layoutlib.bridge.impl.DelegateManager;
+import com.android.layoutlib.bridge.libcore.io.BridgeBufferIterator;
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import android.system.ErrnoException;
+
+import java.io.File;
+import java.io.IOException;
+import java.io.RandomAccessFile;
+import java.nio.ByteOrder;
+import java.nio.MappedByteBuffer;
+import java.nio.channels.FileChannel.MapMode;
+import java.util.HashMap;
+import java.util.Map;
+
+/**
+ * Delegate used to provide alternate implementation of select methods of {@link MemoryMappedFile}.
+ */
+public class MemoryMappedFile_Delegate {
+
+    private static final DelegateManager<MemoryMappedFile_Delegate> sManager = new
+            DelegateManager<MemoryMappedFile_Delegate>(MemoryMappedFile_Delegate.class);
+
+    private static final Map<MemoryMappedFile, Long> sMemoryMappedFileMap =
+            new HashMap<MemoryMappedFile, Long>();
+
+    private final MappedByteBuffer mMappedByteBuffer;
+    private final long mSize;
+
+    /** Path on the target device where the data file is available. */
+    private static final String TARGET_PATH = System.getenv("ANDROID_ROOT") + "/usr/share/zoneinfo";
+    /** Path on the host (inside the SDK) where the data files are available. */
+    private static File sRootPath;
+
+    @LayoutlibDelegate
+    static MemoryMappedFile mmapRO(String path) throws ErrnoException {
+        if (!path.startsWith(TARGET_PATH)) {
+            throw new ErrnoException("Custom timezone data files are not supported.", 1);
+        }
+        if (sRootPath == null) {
+            throw new ErrnoException("Bridge has not been initialized properly.", 1);
+        }
+        path = path.substring(TARGET_PATH.length());
+        try {
+            File f = new File(sRootPath, path);
+            if (!f.exists()) {
+                throw new ErrnoException("File not found: " + f.getPath(), 1);
+            }
+            RandomAccessFile file = new RandomAccessFile(f, "r");
+            try {
+                long size = file.length();
+                MemoryMappedFile_Delegate newDelegate = new MemoryMappedFile_Delegate(file);
+                long filePointer = file.getFilePointer();
+                MemoryMappedFile mmFile = new MemoryMappedFile(filePointer, size);
+                long delegateIndex = sManager.addNewDelegate(newDelegate);
+                sMemoryMappedFileMap.put(mmFile, delegateIndex);
+                return mmFile;
+            } finally {
+                file.close();
+            }
+        } catch (IOException e) {
+            throw new ErrnoException("mmapRO", 1, e);
+        }
+    }
+
+    @LayoutlibDelegate
+    static void close(MemoryMappedFile thisFile) throws ErrnoException {
+        Long index = sMemoryMappedFileMap.get(thisFile);
+        if (index != null) {
+            sMemoryMappedFileMap.remove(thisFile);
+            sManager.removeJavaReferenceFor(index);
+        }
+    }
+
+    @LayoutlibDelegate
+    static BufferIterator bigEndianIterator(MemoryMappedFile file) {
+        MemoryMappedFile_Delegate delegate = getDelegate(file);
+        return new BridgeBufferIterator(delegate.mSize, delegate.mMappedByteBuffer.duplicate());
+    }
+
+    // TODO: implement littleEndianIterator()
+
+    public MemoryMappedFile_Delegate(RandomAccessFile file) throws IOException {
+        mSize = file.length();
+        // It's weird that map() takes size as long, but returns MappedByteBuffer which uses an int
+        // to store the marker to the position.
+        mMappedByteBuffer = file.getChannel().map(MapMode.READ_ONLY, 0, mSize);
+        assert mMappedByteBuffer.order() == ByteOrder.BIG_ENDIAN;
+    }
+
+    public static void setDataDir(File path) {
+        sRootPath = path;
+    }
+
+    private static MemoryMappedFile_Delegate getDelegate(MemoryMappedFile file) {
+        Long index = sMemoryMappedFileMap.get(file);
+        return index == null ? null : sManager.getDelegate(index);
+    }
+
+}
diff --git a/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java b/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
new file mode 100644
index 0000000..f29c5c0
--- /dev/null
+++ b/tools/layoutlib/bridge/src/libcore/util/ZoneInfo_WallTime_Delegate.java
@@ -0,0 +1,32 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package libcore.util;
+
+import com.android.tools.layoutlib.annotations.LayoutlibDelegate;
+
+import java.util.GregorianCalendar;
+
+/**
+ * Delegate used to provide alternate implementation of select methods in {@link ZoneInfo.WallTime}
+ */
+public class ZoneInfo_WallTime_Delegate {
+
+    @LayoutlibDelegate
+    static GregorianCalendar createGregorianCalendar() {
+        return new GregorianCalendar();
+    }
+}
diff --git a/tools/layoutlib/bridge/tests/res/testApp/MyApplication/golden/activity.png b/tools/layoutlib/bridge/tests/res/testApp/MyApplication/golden/activity.png
new file mode 100644
index 0000000..943cdf1
--- /dev/null
+++ b/tools/layoutlib/bridge/tests/res/testApp/MyApplication/golden/activity.png
Binary files differ
diff --git a/tools/layoutlib/bridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml b/tools/layoutlib/bridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
index 2704c07..b8ec5661 100644
--- a/tools/layoutlib/bridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
+++ b/tools/layoutlib/bridge/tests/res/testApp/MyApplication/src/main/res/layout/layout.xml
@@ -8,4 +8,10 @@
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
         android:text="Some text"/>
+    <DatePicker
+        android:layout_width="100dp"
+        android:layout_height="100dp"/>
+    <CalendarView
+        android:layout_width="100dp"
+        android:layout_height="100dp"/>
 </LinearLayout>
\ No newline at end of file
diff --git a/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java b/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
new file mode 100644
index 0000000..e13ad72
--- /dev/null
+++ b/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/ImageUtils.java
@@ -0,0 +1,336 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.layoutlib.bridge.intensive;
+
+import com.android.annotations.NonNull;
+
+import java.awt.AlphaComposite;
+import java.awt.Color;
+import java.awt.Graphics;
+import java.awt.Graphics2D;
+import java.awt.image.BufferedImage;
+import java.io.File;
+import java.io.IOException;
+import java.io.InputStream;
+
+import javax.imageio.ImageIO;
+
+import static java.awt.RenderingHints.*;
+import static java.awt.image.BufferedImage.TYPE_INT_ARGB;
+import static java.io.File.separatorChar;
+import static org.junit.Assert.assertEquals;
+import static org.junit.Assert.assertTrue;
+import static org.junit.Assert.fail;
+
+
+// Adapted by taking the relevant pieces of code from the following classes:
+//
+// com.android.tools.idea.rendering.ImageUtils,
+// com.android.tools.idea.tests.gui.framework.fixture.layout.ImageFixture and
+// com.android.tools.idea.rendering.RenderTestBase
+/**
+ * Utilities related to image processing.
+ */
+public class ImageUtils {
+    /**
+     * Normally, this test will fail when there is a missing thumbnail. However, when
+     * you create creating a new test, it's useful to be able to turn this off such that
+     * you can generate all the missing thumbnails in one go, rather than having to run
+     * the test repeatedly to get to each new render assertion generating its thumbnail.
+     */
+    private static final boolean FAIL_ON_MISSING_THUMBNAIL = true;
+
+    private static final int THUMBNAIL_SIZE = 250;
+
+    private static final double MAX_PERCENT_DIFFERENCE = 0.1;
+
+    public static void requireSimilar(@NonNull String relativePath, @NonNull BufferedImage image)
+            throws IOException {
+        int maxDimension = Math.max(image.getWidth(), image.getHeight());
+        double scale = THUMBNAIL_SIZE / (double)maxDimension;
+        BufferedImage thumbnail = scale(image, scale, scale);
+
+        InputStream is = ImageUtils.class.getResourceAsStream(relativePath);
+        if (is == null) {
+            String message = "Unable to load golden thumbnail: " + relativePath + "\n";
+            message = saveImageAndAppendMessage(thumbnail, message, relativePath);
+            if (FAIL_ON_MISSING_THUMBNAIL) {
+                fail(message);
+            } else {
+                System.out.println(message);
+            }
+        }
+        else {
+            BufferedImage goldenImage = ImageIO.read(is);
+            assertImageSimilar(relativePath, goldenImage, thumbnail, MAX_PERCENT_DIFFERENCE);
+        }
+    }
+
+    public static void assertImageSimilar(String relativePath, BufferedImage goldenImage,
+            BufferedImage image, double maxPercentDifferent) throws IOException {
+        assertEquals("Only TYPE_INT_ARGB image types are supported",  TYPE_INT_ARGB, image.getType());
+
+        if (goldenImage.getType() != TYPE_INT_ARGB) {
+            BufferedImage temp = new BufferedImage(goldenImage.getWidth(), goldenImage.getHeight(),
+                    TYPE_INT_ARGB);
+            temp.getGraphics().drawImage(goldenImage, 0, 0, null);
+            goldenImage = temp;
+        }
+        assertEquals(TYPE_INT_ARGB, goldenImage.getType());
+
+        int imageWidth = Math.min(goldenImage.getWidth(), image.getWidth());
+        int imageHeight = Math.min(goldenImage.getHeight(), image.getHeight());
+
+        // Blur the images to account for the scenarios where there are pixel
+        // differences
+        // in where a sharp edge occurs
+        // goldenImage = blur(goldenImage, 6);
+        // image = blur(image, 6);
+
+        int width = 3 * imageWidth;
+        @SuppressWarnings("UnnecessaryLocalVariable")
+        int height = imageHeight; // makes code more readable
+        BufferedImage deltaImage = new BufferedImage(width, height, TYPE_INT_ARGB);
+        Graphics g = deltaImage.getGraphics();
+
+        // Compute delta map
+        long delta = 0;
+        for (int y = 0; y < imageHeight; y++) {
+            for (int x = 0; x < imageWidth; x++) {
+                int goldenRgb = goldenImage.getRGB(x, y);
+                int rgb = image.getRGB(x, y);
+                if (goldenRgb == rgb) {
+                    deltaImage.setRGB(imageWidth + x, y, 0x00808080);
+                    continue;
+                }
+
+                // If the pixels have no opacity, don't delta colors at all
+                if (((goldenRgb & 0xFF000000) == 0) && (rgb & 0xFF000000) == 0) {
+                    deltaImage.setRGB(imageWidth + x, y, 0x00808080);
+                    continue;
+                }
+
+                int deltaR = ((rgb & 0xFF0000) >>> 16) - ((goldenRgb & 0xFF0000) >>> 16);
+                int newR = 128 + deltaR & 0xFF;
+                int deltaG = ((rgb & 0x00FF00) >>> 8) - ((goldenRgb & 0x00FF00) >>> 8);
+                int newG = 128 + deltaG & 0xFF;
+                int deltaB = (rgb & 0x0000FF) - (goldenRgb & 0x0000FF);
+                int newB = 128 + deltaB & 0xFF;
+
+                int avgAlpha = ((((goldenRgb & 0xFF000000) >>> 24)
+                        + ((rgb & 0xFF000000) >>> 24)) / 2) << 24;
+
+                int newRGB = avgAlpha | newR << 16 | newG << 8 | newB;
+                deltaImage.setRGB(imageWidth + x, y, newRGB);
+
+                delta += Math.abs(deltaR);
+                delta += Math.abs(deltaG);
+                delta += Math.abs(deltaB);
+            }
+        }
+
+        // 3 different colors, 256 color levels
+        long total = imageHeight * imageWidth * 3L * 256L;
+        float percentDifference = (float) (delta * 100 / (double) total);
+
+        String error = null;
+        String imageName = getName(relativePath);
+        if (percentDifference > maxPercentDifferent) {
+            error = String.format("Images differ (by %.1f%%)", percentDifference);
+        } else if (Math.abs(goldenImage.getWidth() - image.getWidth()) >= 2) {
+            error = "Widths differ too much for " + imageName + ": " +
+                    goldenImage.getWidth() + "x" + goldenImage.getHeight() +
+                    "vs" + image.getWidth() + "x" + image.getHeight();
+        } else if (Math.abs(goldenImage.getHeight() - image.getHeight()) >= 2) {
+            error = "Heights differ too much for " + imageName + ": " +
+                    goldenImage.getWidth() + "x" + goldenImage.getHeight() +
+                    "vs" + image.getWidth() + "x" + image.getHeight();
+        }
+
+        assertEquals(TYPE_INT_ARGB, image.getType());
+        if (error != null) {
+            // Expected on the left
+            // Golden on the right
+            g.drawImage(goldenImage, 0, 0, null);
+            g.drawImage(image, 2 * imageWidth, 0, null);
+
+            // Labels
+            if (imageWidth > 80) {
+                g.setColor(Color.RED);
+                g.drawString("Expected", 10, 20);
+                g.drawString("Actual", 2 * imageWidth + 10, 20);
+            }
+
+            File output = new File(getTempDir(), "delta-" + imageName);
+            if (output.exists()) {
+                boolean deleted = output.delete();
+                assertTrue(deleted);
+            }
+            ImageIO.write(deltaImage, "PNG", output);
+            error += " - see details in " + output.getPath() + "\n";
+            error = saveImageAndAppendMessage(image, error, relativePath);
+            System.out.println(error);
+            fail(error);
+        }
+
+        g.dispose();
+    }
+
+    /**
+     * Resize the given image
+     *
+     * @param source the image to be scaled
+     * @param xScale x scale
+     * @param yScale y scale
+     * @return the scaled image
+     */
+    @NonNull
+    public static BufferedImage scale(@NonNull BufferedImage source, double xScale, double yScale) {
+
+        int sourceWidth = source.getWidth();
+        int sourceHeight = source.getHeight();
+        int destWidth = Math.max(1, (int) (xScale * sourceWidth));
+        int destHeight = Math.max(1, (int) (yScale * sourceHeight));
+        int imageType = source.getType();
+        if (imageType == BufferedImage.TYPE_CUSTOM) {
+            imageType = BufferedImage.TYPE_INT_ARGB;
+        }
+        if (xScale > 0.5 && yScale > 0.5) {
+            BufferedImage scaled =
+                    new BufferedImage(destWidth, destHeight, imageType);
+            Graphics2D g2 = scaled.createGraphics();
+            g2.setComposite(AlphaComposite.Src);
+            g2.setColor(new Color(0, true));
+            g2.fillRect(0, 0, destWidth, destHeight);
+            if (xScale == 1 && yScale == 1) {
+                g2.drawImage(source, 0, 0, null);
+            } else {
+                setRenderingHints(g2);
+                g2.drawImage(source, 0, 0, destWidth, destHeight, 0, 0, sourceWidth, sourceHeight,
+                        null);
+            }
+            g2.dispose();
+            return scaled;
+        } else {
+            // When creating a thumbnail, using the above code doesn't work very well;
+            // you get some visible artifacts, especially for text. Instead use the
+            // technique of repeatedly scaling the image into half; this will cause
+            // proper averaging of neighboring pixels, and will typically (for the kinds
+            // of screen sizes used by this utility method in the layout editor) take
+            // about 3-4 iterations to get the result since we are logarithmically reducing
+            // the size. Besides, each successive pass in operating on much fewer pixels
+            // (a reduction of 4 in each pass).
+            //
+            // However, we may not be resizing to a size that can be reached exactly by
+            // successively diving in half. Therefore, once we're within a factor of 2 of
+            // the final size, we can do a resize to the exact target size.
+            // However, we can get even better results if we perform this final resize
+            // up front. Let's say we're going from width 1000 to a destination width of 85.
+            // The first approach would cause a resize from 1000 to 500 to 250 to 125, and
+            // then a resize from 125 to 85. That last resize can distort/blur a lot.
+            // Instead, we can start with the destination width, 85, and double it
+            // successfully until we're close to the initial size: 85, then 170,
+            // then 340, and finally 680. (The next one, 1360, is larger than 1000).
+            // So, now we *start* the thumbnail operation by resizing from width 1000 to
+            // width 680, which will preserve a lot of visual details such as text.
+            // Then we can successively resize the image in half, 680 to 340 to 170 to 85.
+            // We end up with the expected final size, but we've been doing an exact
+            // divide-in-half resizing operation at the end so there is less distortion.
+
+            int iterations = 0; // Number of halving operations to perform after the initial resize
+            int nearestWidth = destWidth; // Width closest to source width that = 2^x, x is integer
+            int nearestHeight = destHeight;
+            while (nearestWidth < sourceWidth / 2) {
+                nearestWidth *= 2;
+                nearestHeight *= 2;
+                iterations++;
+            }
+
+            BufferedImage scaled = new BufferedImage(nearestWidth, nearestHeight, imageType);
+
+            Graphics2D g2 = scaled.createGraphics();
+            setRenderingHints(g2);
+            g2.drawImage(source, 0, 0, nearestWidth, nearestHeight, 0, 0, sourceWidth, sourceHeight,
+                    null);
+            g2.dispose();
+
+            sourceWidth = nearestWidth;
+            sourceHeight = nearestHeight;
+            source = scaled;
+
+            for (int iteration = iterations - 1; iteration >= 0; iteration--) {
+                int halfWidth = sourceWidth / 2;
+                int halfHeight = sourceHeight / 2;
+                scaled = new BufferedImage(halfWidth, halfHeight, imageType);
+                g2 = scaled.createGraphics();
+                setRenderingHints(g2);
+                g2.drawImage(source, 0, 0, halfWidth, halfHeight, 0, 0, sourceWidth, sourceHeight,
+                        null);
+                g2.dispose();
+
+                sourceWidth = halfWidth;
+                sourceHeight = halfHeight;
+                source = scaled;
+                iterations--;
+            }
+            return scaled;
+        }
+    }
+
+    private static void setRenderingHints(@NonNull Graphics2D g2) {
+        g2.setRenderingHint(KEY_INTERPOLATION,VALUE_INTERPOLATION_BILINEAR);
+        g2.setRenderingHint(KEY_RENDERING, VALUE_RENDER_QUALITY);
+        g2.setRenderingHint(KEY_ANTIALIASING, VALUE_ANTIALIAS_ON);
+    }
+
+    /**
+     * Temp directory where to write the thumbnails and deltas.
+     */
+    @NonNull
+    private static File getTempDir() {
+        if (System.getProperty("os.name").equals("Mac OS X")) {
+            return new File("/tmp"); //$NON-NLS-1$
+        }
+
+        return new File(System.getProperty("java.io.tmpdir")); //$NON-NLS-1$
+    }
+
+    /**
+     * Saves the generated thumbnail image and appends the info message to an initial message
+     */
+    @NonNull
+    private static String saveImageAndAppendMessage(@NonNull BufferedImage image,
+            @NonNull String initialMessage, @NonNull String relativePath) throws IOException {
+        File output = new File(getTempDir(), getName(relativePath));
+        if (output.exists()) {
+            boolean deleted = output.delete();
+            assertTrue(deleted);
+        }
+        ImageIO.write(image, "PNG", output);
+        initialMessage += "Thumbnail for current rendering stored at " + output.getPath();
+//        initialMessage += "\nRun the following command to accept the changes:\n";
+//        initialMessage += String.format("mv %1$s %2$s", output.getPath(),
+//                ImageUtils.class.getResource(relativePath).getPath());
+        // The above has been commented out, since the destination path returned is in out dir
+        // and it makes the tests pass without the code being actually checked in.
+        return initialMessage;
+    }
+
+    private static String getName(@NonNull String relativePath) {
+        return relativePath.substring(relativePath.lastIndexOf(separatorChar) + 1);
+    }
+}
diff --git a/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java b/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
index a2588a6..96725af 100644
--- a/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
+++ b/tools/layoutlib/bridge/tests/src/com/android/layoutlib/bridge/intensive/Main.java
@@ -39,6 +39,7 @@
 
 import java.io.File;
 import java.io.FileFilter;
+import java.io.IOException;
 import java.net.URL;
 import java.util.Arrays;
 import java.util.Comparator;
@@ -75,7 +76,10 @@
 
     private static final String PLATFORM_DIR;
     private static final String TEST_RES_DIR;
-    private static final String APP_TEST_RES = "/testApp/MyApplication/src/main/res";
+    /** Location of the app to test inside {@link #TEST_RES_DIR}*/
+    private static final String APP_TEST_DIR = "/testApp/MyApplication";
+    /** Location of the app's res dir inside {@link #TEST_RES_DIR}*/
+    private static final String APP_TEST_RES = APP_TEST_DIR + "/src/main/res";
 
     private LayoutLog mLayoutLibLog;
     private FrameworkResources mFrameworkRepo;
@@ -280,6 +284,12 @@
             getLogger().error(session.getResult().getException(),
                     session.getResult().getErrorMessage());
         }
+        try {
+            String goldenImagePath = APP_TEST_DIR + "/golden/activity.png";
+            ImageUtils.requireSimilar(goldenImagePath, session.getImage());
+        } catch (IOException e) {
+            getLogger().error(e, e.getMessage());
+        }
     }
 
     /**
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
index 4e6f456..f9e6151 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/CreateInfo.java
@@ -21,6 +21,7 @@
 import com.android.tools.layoutlib.java.Charsets;
 import com.android.tools.layoutlib.java.IntegralToString;
 import com.android.tools.layoutlib.java.Objects;
+import com.android.tools.layoutlib.java.System_Delegate;
 import com.android.tools.layoutlib.java.UnsafeByteSequence;
 
 import java.util.Arrays;
@@ -131,6 +132,7 @@
             IntegralToString.class,
             UnsafeByteSequence.class,
             Charsets.class,
+            System_Delegate.class,
         };
 
     /**
@@ -150,6 +152,7 @@
         "android.graphics.Typeface#getSystemFontConfigLocation",
         "android.os.Handler#sendMessageAtTime",
         "android.os.HandlerThread#run",
+        "android.preference.Preference#getView",
         "android.text.format.DateFormat#is24HourFormat",
         "android.util.Xml#newPullParser",
         "android.view.Choreographer#getRefreshRate",
@@ -167,10 +170,15 @@
         "android.view.RenderNode#nSetElevation",
         "android.view.RenderNode#nGetElevation",
         "android.view.ViewGroup#drawChild",
+        "android.widget.TimePickerSpinnerDelegate#getAmOrPmKeyCode",
         "com.android.internal.view.menu.MenuBuilder#createNewMenuItem",
         "com.android.internal.util.XmlUtils#convertValueToInt",
         "com.android.internal.textservice.ITextServicesManager$Stub#asInterface",
-        "dalvik.system.VMRuntime#newUnpaddedArray"
+        "dalvik.system.VMRuntime#newUnpaddedArray",
+        "libcore.io.MemoryMappedFile#mmapRO",
+        "libcore.io.MemoryMappedFile#close",
+        "libcore.io.MemoryMappedFile#bigEndianIterator",
+        "libcore.util.ZoneInfo$WallTime#createGregorianCalendar",
     };
 
     /**
@@ -220,7 +228,6 @@
         "android.os.SystemProperties",
         "android.text.AndroidBidi",
         "android.text.StaticLayout",
-        "android.text.format.Time",
         "android.util.FloatMath",
         "android.view.Display",
         "libcore.icu.DateIntervalFormat",
@@ -261,10 +268,12 @@
             "java.nio.charset.Charsets",                       "com.android.tools.layoutlib.java.Charsets",
             "java.lang.IntegralToString",                      "com.android.tools.layoutlib.java.IntegralToString",
             "java.lang.UnsafeByteSequence",                    "com.android.tools.layoutlib.java.UnsafeByteSequence",
+            "java.nio.charset.StandardCharsets",               "com.android.tools.layoutlib.java.Charsets",
         };
 
     private final static String[] EXCLUDED_CLASSES =
         new String[] {
+            "android.preference.PreferenceActivity",
             "org.kxml2.io.KXmlParser"
         };
 
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/Main.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/Main.java
index cd3c39e..fa570c8 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/Main.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/Main.java
@@ -108,6 +108,7 @@
                         "android.graphics.drawable.*",
                         "android.content.*",
                         "android.content.res.*",
+                        "android.preference.*",
                         "org.apache.harmony.xml.*",
                         "com.android.internal.R**",
                         "android.pim.*", // for datepicker
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
index 9c6fbac..1e2623f 100644
--- a/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/create/ReplaceMethodCallsAdapter.java
@@ -16,6 +16,8 @@
 
 package com.android.tools.layoutlib.create;
 
+import com.android.tools.layoutlib.java.System_Delegate;
+
 import org.objectweb.asm.ClassVisitor;
 import org.objectweb.asm.MethodVisitor;
 import org.objectweb.asm.Opcodes;
@@ -47,24 +49,25 @@
     private static final String ANDROID_LOCALE_CLASS =
             "com/android/layoutlib/bridge/android/AndroidLocale";
 
-    private static final String JAVA_LOCALE_CLASS = "java/util/Locale";
+    private static final String JAVA_LOCALE_CLASS = Type.getInternalName(java.util.Locale.class);
     private static final Type STRING = Type.getType(String.class);
 
+    private static final String JAVA_LANG_SYSTEM = Type.getInternalName(System.class);
+
     // Static initialization block to initialize METHOD_REPLACERS.
     static {
         // Case 1: java.lang.System.arraycopy()
         METHOD_REPLACERS.add(new MethodReplacer() {
             @Override
             public boolean isNeeded(String owner, String name, String desc) {
-                return "java/lang/System".equals(owner) && "arraycopy".equals(name) &&
+                return JAVA_LANG_SYSTEM.equals(owner) && "arraycopy".equals(name) &&
                         ARRAYCOPY_DESCRIPTORS.contains(desc);
             }
 
             @Override
-            public void replace(int[] opcode, String[] methodInformation) {
-                assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
-                        && opcode.length == 1;
-                methodInformation[2] = "(Ljava/lang/Object;ILjava/lang/Object;II)V";
+            public void replace(MethodInformation mi) {
+                assert isNeeded(mi.owner, mi.name, mi.desc);
+                mi.desc = "(Ljava/lang/Object;ILjava/lang/Object;II)V";
             }
         });
 
@@ -80,12 +83,11 @@
             }
 
             @Override
-            public void replace(int[] opcode, String[] methodInformation) {
-                assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
-                        && opcode.length == 1;
-                opcode[0] = Opcodes.INVOKESTATIC;
-                methodInformation[0] = ANDROID_LOCALE_CLASS;
-                methodInformation[2] = LOCALE_TO_STRING;
+            public void replace(MethodInformation mi) {
+                assert isNeeded(mi.owner, mi.name, mi.desc);
+                mi.opcode = Opcodes.INVOKESTATIC;
+                mi.owner = ANDROID_LOCALE_CLASS;
+                mi.desc = LOCALE_TO_STRING;
             }
         });
 
@@ -104,10 +106,27 @@
             }
 
             @Override
-            public void replace(int[] opcode, String[] methodInformation) {
-                assert methodInformation.length == 3 && isNeeded(methodInformation[0], methodInformation[1], methodInformation[2])
-                        && opcode.length == 1;
-                methodInformation[0] = ANDROID_LOCALE_CLASS;
+            public void replace(MethodInformation mi) {
+                assert isNeeded(mi.owner, mi.name, mi.desc);
+                mi.owner = ANDROID_LOCALE_CLASS;
+            }
+        });
+
+        // Case 4: java.lang.System.log?()
+        METHOD_REPLACERS.add(new MethodReplacer() {
+            @Override
+            public boolean isNeeded(String owner, String name, String desc) {
+                return JAVA_LANG_SYSTEM.equals(owner) && name.length() == 4
+                        && name.startsWith("log");
+            }
+
+            @Override
+            public void replace(MethodInformation mi) {
+                assert isNeeded(mi.owner, mi.name, mi.desc);
+                assert mi.desc.equals("(Ljava/lang/String;Ljava/lang/Throwable;)V")
+                        || mi.desc.equals("(Ljava/lang/String;)V");
+                mi.name = "log";
+                mi.owner = Type.getInternalName(System_Delegate.class);
             }
         });
     }
@@ -141,13 +160,12 @@
         public void visitMethodInsn(int opcode, String owner, String name, String desc) {
             for (MethodReplacer replacer : METHOD_REPLACERS) {
                 if (replacer.isNeeded(owner, name, desc)) {
-                    String[] methodInformation = {owner, name, desc};
-                    int[] opcodeOut = {opcode};
-                    replacer.replace(opcodeOut, methodInformation);
-                    opcode = opcodeOut[0];
-                    owner = methodInformation[0];
-                    name = methodInformation[1];
-                    desc = methodInformation[2];
+                    MethodInformation mi = new MethodInformation(opcode, owner, name, desc);
+                    replacer.replace(mi);
+                    opcode = mi.opcode;
+                    owner = mi.owner;
+                    name = mi.name;
+                    desc = mi.desc;
                     break;
                 }
             }
@@ -155,19 +173,28 @@
         }
     }
 
+    private static class MethodInformation {
+        public int opcode;
+        public String owner;
+        public String name;
+        public String desc;
+
+        public MethodInformation(int opcode, String owner, String name, String desc) {
+            this.opcode = opcode;
+            this.owner = owner;
+            this.name = name;
+            this.desc = desc;
+        }
+    }
+
     private interface MethodReplacer {
         public boolean isNeeded(String owner, String name, String desc);
 
         /**
-         * This method must update the arrays with the new values of the method attributes -
+         * Updates the MethodInformation with the new values of the method attributes -
          * opcode, owner, name and desc.
-         * @param opcode This array should contain the original value of the opcode. The value is
-         *               modified by the method if needed. The size of the array must be 1.
          *
-         * @param methodInformation This array should contain the original values of the method
-         *                          attributes - owner, name and desc in that order. The values
-         *                          may be modified as needed. The size of the array must be 3.
          */
-        public void replace(int[] opcode, String[] methodInformation);
+        public void replace(MethodInformation mi);
     }
 }
diff --git a/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java b/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java
new file mode 100644
index 0000000..613c8d9
--- /dev/null
+++ b/tools/layoutlib/create/src/com/android/tools/layoutlib/java/System_Delegate.java
@@ -0,0 +1,34 @@
+/*
+ * Copyright (C) 2014 The Android Open Source Project
+ *
+ * Licensed under the Apache License, Version 2.0 (the "License");
+ * you may not use this file except in compliance with the License.
+ * You may obtain a copy of the License at
+ *
+ *      http://www.apache.org/licenses/LICENSE-2.0
+ *
+ * Unless required by applicable law or agreed to in writing, software
+ * distributed under the License is distributed on an "AS IS" BASIS,
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ * See the License for the specific language governing permissions and
+ * limitations under the License.
+ */
+
+package com.android.tools.layoutlib.java;
+
+import com.android.tools.layoutlib.create.ReplaceMethodCallsAdapter;
+
+/**
+ * Provides dummy implementation of methods that don't exist on the host VM.
+ *
+ * @see ReplaceMethodCallsAdapter
+ */
+public class System_Delegate {
+    public static void log(String message) {
+        // ignore.
+    }
+
+    public static void log(String message, Throwable th) {
+        // ignore.
+    }
+}