Update prebuilts for samples (lmp-docs)

Synced to 1fa7b0ca07ecdb63fbc70de661b944e50788401e.

Change-Id: I218fa0a1680e8e617e4283be88d19938eb8c4ceb
diff --git a/prebuilts/gradle/ActionBarCompat-Basic/.google/packaging.yaml b/prebuilts/gradle/ActionBarCompat-Basic/.google/packaging.yaml
new file mode 100644
index 0000000..28a8e44
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-Basic/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Getting Started, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActionBarCompat-Basic
+level:        BEGINNER
+icon:         screenshots/big-icon.png
+apiRefs:
+    - android:android.app.ActionBar
+    - android:android.support.v7.app.ActionBarActivity
+    - android:android.support.v4.view.MenuItemCompat
+license: apache2
diff --git a/prebuilts/gradle/ActionBarCompat-Basic/Application/build.gradle b/prebuilts/gradle/ActionBarCompat-Basic/Application/build.gradle
index c99cde6..f366238 100644
--- a/prebuilts/gradle/ActionBarCompat-Basic/Application/build.gradle
+++ b/prebuilts/gradle/ActionBarCompat-Basic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActionBarCompat-Basic/CONTRIBUTING.md
similarity index 91%
rename from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
rename to prebuilts/gradle/ActionBarCompat-Basic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActionBarCompat-Basic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActionBarCompat-Basic/NOTICE b/prebuilts/gradle/ActionBarCompat-Basic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-Basic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ActionBarCompat-Basic/README.md b/prebuilts/gradle/ActionBarCompat-Basic/README.md
index 7466c99..151e91e 100644
--- a/prebuilts/gradle/ActionBarCompat-Basic/README.md
+++ b/prebuilts/gradle/ActionBarCompat-Basic/README.md
@@ -1,18 +1,48 @@
 Android ActionBarCompat-Basic Sample
-==============================
+===================================
 
-This sample shows you how to use ActionBarCompat to create a basic Activity which
-displays action items. It covers inflating items from a menu resource, as well as adding
-an item in code. Items that are not shown as action items on the Action Bar are
-displayed in the action bar overflow.
+This sample shows you how to use ActionBarCompat to create a basic Activity
+which displays action items. It covers inflating items from a menu resource,
+as well as adding an item in code.
+
+Introduction
+------------
+
+Android 3.0 introduced the “action bar” control, a toolbar that is expected
+to be present in most types of applications. This control identifies the user
+location, and provides user actions and navigation modes.
+Using the action bar offers your users a familiar interface across applications
+that the system gracefully adapts for different screen configurations.
+
+Instantiating an action bar can be done by using the [ActionBar][1] API provided
+in API 11 or above. Support for older devices is provided by the
+[support library’s ActionBar][2] implementation, compatible back to API 7.
+This sample demonstrates using the support library APIs.
+
+Using an ActionBar with the support library requires the following steps:
+
+1. Create your activity by extending ActionBarActivity.
+2. Use (or extend) one of the Theme.AppCompat themes for your activity.
+
+Once this is done, action items will be created for any options menu items that
+would otherwise be created during when `[onCreateOptionsMenu()][3]` is called.
+
+[1]: http://developer.android.com/reference/android/app/ActionBar.html
+[2]: http://developer.android.com/reference/android/support/v7/app/ActionBar.html
+[3]: http://developer.android.com/reference/android/app/Activity.html#onCreateOptionsMenu(android.view.Menu)
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/screenshot1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot2.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -43,7 +73,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActionBarCompat-Basic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActionBarCompat-Basic/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ActionBarCompat-Basic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActionBarCompat-Basic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/.google/packaging.yaml b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/.google/packaging.yaml
new file mode 100644
index 0000000..f30211c
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActionBarCompat-ListPopupMenu
+license: apache2
diff --git a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/Application/build.gradle b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/Application/build.gradle
index 8663419..33f7731 100644
--- a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/Application/build.gradle
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ActionBarCompat-ListPopupMenu/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/NOTICE b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/README.md b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/README.md
index 141a5d2..282ed60 100644
--- a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/README.md
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/README.md
@@ -1,5 +1,5 @@
 Android ActionBarCompat-ListPopupMenu Sample
-==============================
+===================================
 
 This sample shows you how to use {@link android.support.v7.widget.PopupMenu PopupMenu}
 from ActionBarCompat to create a list, with each item having a dropdown menu.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ActionBarCompat-ListPopupMenu/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActionBarCompat-ListPopupMenu/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/.google/packaging.yaml b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/.google/packaging.yaml
new file mode 100644
index 0000000..9b5506a
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, ActionBar]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActionBarCompat-ShareActionProvider
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.support.v7.widget.ShareActionProvider
+    - android:android.support.v7.app.ActionBarActivity
+license: apache2
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/build.gradle b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/build.gradle
index c99cde6..f366238 100644
--- a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/build.gradle
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/src/main/java/com/example/android/actionbarcompat/shareactionprovider/MainActivity.java b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/src/main/java/com/example/android/actionbarcompat/shareactionprovider/MainActivity.java
index b8cc900..545764c 100644
--- a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/src/main/java/com/example/android/actionbarcompat/shareactionprovider/MainActivity.java
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/Application/src/main/java/com/example/android/actionbarcompat/shareactionprovider/MainActivity.java
@@ -83,6 +83,10 @@
         // Now get the ShareActionProvider from the item
         mShareActionProvider = (ShareActionProvider) MenuItemCompat.getActionProvider(shareItem);
 
+        // Get the ViewPager's current item position and set its ShareIntent.
+        int currentViewPagerItem = ((ViewPager) findViewById(R.id.viewpager)).getCurrentItem();
+        setShareIntent(currentViewPagerItem);
+
         return super.onCreateOptionsMenu(menu);
     }
     // END_INCLUDE(get_sap)
@@ -151,6 +155,19 @@
         }
     };
 
+    private void setShareIntent(int position) {
+        // BEGIN_INCLUDE(update_sap)
+        if (mShareActionProvider != null) {
+            // Get the currently selected item, and retrieve it's share intent
+            ContentItem item = mItems.get(position);
+            Intent shareIntent = item.getShareIntent(MainActivity.this);
+
+            // Now update the ShareActionProvider with the new share intent
+            mShareActionProvider.setShareIntent(shareIntent);
+        }
+        // END_INCLUDE(update_sap)
+    }
+
     /**
      * A OnPageChangeListener used to update the ShareActionProvider's share intent when a new item
      * is selected in the ViewPager.
@@ -165,16 +182,7 @@
 
         @Override
         public void onPageSelected(int position) {
-            // BEGIN_INCLUDE(update_sap)
-            if (mShareActionProvider != null) {
-                // Get the currently selected item, and retrieve it's share intent
-                ContentItem item = mItems.get(position);
-                Intent shareIntent = item.getShareIntent(MainActivity.this);
-
-                // Now update the ShareActionProvider with the new share intent
-                mShareActionProvider.setShareIntent(shareIntent);
-            }
-            // END_INCLUDE(update_sap)
+            setShareIntent(position);
         }
 
         @Override
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ActionBarCompat-ShareActionProvider/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/NOTICE b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/README.md b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/README.md
index 0484e88..25f5aba 100644
--- a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/README.md
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/README.md
@@ -1,16 +1,35 @@
 Android ActionBarCompat-ShareActionProvider Sample
-==============================
+===================================
 
 This sample shows you how a provide a context-sensitive ShareActionProvider with
 ActionBarCompat, backwards compatible to API v7.
 
+Introduction
+------------
+
+The sample contains a [`ViewPager`][1] which displays content of differing types: image and
+text. When a new item is selected in the ViewPager, the [`ShareActionProvider`][2] is updated with
+a share intent specific to that content.
+
+This Activity extends from [`ActionBarActivity`][3], which provides all of the function
+necessary to display a compatible Action Bar on devices running Android v2.1+.
+
+[1]: http://developer.android.com/reference/android/support/v4/view/ViewPager.html
+[2]: http://developer.android.com/reference/android/widget/ShareActionProvider.html
+[3]: https://developer.android.com/reference/android/support/v7/app/ActionBarActivity.html
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-gridview.png" height="400" alt="Screenshot"/> <img src="screenshots/2-detail.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +60,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/1-image.png b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/1-image.png
new file mode 100644
index 0000000..3947911
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/1-image.png
Binary files differ
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/2-text.png b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/2-text.png
new file mode 100644
index 0000000..abf7e7d
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/2-text.png
Binary files differ
diff --git a/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/icon-web.png b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/icon-web.png
new file mode 100644
index 0000000..c16d884
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-ShareActionProvider/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/ActionBarCompat-Styled/.google/packaging.yaml b/prebuilts/gradle/ActionBarCompat-Styled/.google/packaging.yaml
new file mode 100644
index 0000000..94ef768
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-Styled/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActionBarCompat-Styled
+license: apache2
diff --git a/prebuilts/gradle/ActionBarCompat-Styled/Application/build.gradle b/prebuilts/gradle/ActionBarCompat-Styled/Application/build.gradle
index c99cde6..f366238 100644
--- a/prebuilts/gradle/ActionBarCompat-Styled/Application/build.gradle
+++ b/prebuilts/gradle/ActionBarCompat-Styled/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActionBarCompat-Styled/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ActionBarCompat-Styled/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActionBarCompat-Styled/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActionBarCompat-Styled/NOTICE b/prebuilts/gradle/ActionBarCompat-Styled/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ActionBarCompat-Styled/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ActionBarCompat-Styled/README.md b/prebuilts/gradle/ActionBarCompat-Styled/README.md
index e957f3f..c7fff81 100644
--- a/prebuilts/gradle/ActionBarCompat-Styled/README.md
+++ b/prebuilts/gradle/ActionBarCompat-Styled/README.md
@@ -1,5 +1,5 @@
 Android ActionBarCompat-Styled Sample
-==============================
+===================================
 
 This sample shows you how to use ActionBarCompat with a customized theme. It utilizes a
 split action bar when running on a device with a narrow display, and show three tabs.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActionBarCompat-Styled/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActionBarCompat-Styled/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ActionBarCompat-Styled/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActionBarCompat-Styled/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ActivityInstrumentation/.google/packaging.yaml b/prebuilts/gradle/ActivityInstrumentation/.google/packaging.yaml
new file mode 100644
index 0000000..bc79a99
--- /dev/null
+++ b/prebuilts/gradle/ActivityInstrumentation/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Testing]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActivityInstrumentation
+license: apache2
diff --git a/prebuilts/gradle/ActivityInstrumentation/Application/build.gradle b/prebuilts/gradle/ActivityInstrumentation/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/ActivityInstrumentation/Application/build.gradle
+++ b/prebuilts/gradle/ActivityInstrumentation/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActivityInstrumentation/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ActivityInstrumentation/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActivityInstrumentation/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActivityInstrumentation/NOTICE b/prebuilts/gradle/ActivityInstrumentation/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ActivityInstrumentation/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ActivityInstrumentation/README.md b/prebuilts/gradle/ActivityInstrumentation/README.md
index 4ba39f6..fe85e8a 100644
--- a/prebuilts/gradle/ActivityInstrumentation/README.md
+++ b/prebuilts/gradle/ActivityInstrumentation/README.md
@@ -1,5 +1,5 @@
 Android ActivityInstrumentation Sample
-==============================
+===================================
 
 This sample provides a basic example of using an InstrumentationTest to probe the
 internal state of an Activity.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActivityInstrumentation/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActivityInstrumentation/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ActivityInstrumentation/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActivityInstrumentation/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/.google/packaging.yaml b/prebuilts/gradle/ActivitySceneTransitionBasic/.google/packaging.yaml
new file mode 100644
index 0000000..24e0d73
--- /dev/null
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ActivitySceneTransitionBasic
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.transition.Transition
+    - android:android.app.ActivityOptions
+license: apache2
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/Application/build.gradle b/prebuilts/gradle/ActivitySceneTransitionBasic/Application/build.gradle
index 435f49c..6ed35f4 100644
--- a/prebuilts/gradle/ActivitySceneTransitionBasic/Application/build.gradle
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -18,7 +18,7 @@
 dependencies {
 
     compile "com.android.support:support-v4:21.+"
-    compile "com.android.support:gridlayout-v7:21.+"
+    compile "com.android.support:support-v13:21.+"
     compile "com.android.support:cardview-v7:21.+"
 
     compile "com.squareup.picasso:picasso:2.4.0"
@@ -34,10 +34,10 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
-        minSdkVersion 7
+        minSdkVersion 21
         targetSdkVersion 21
     }
 
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/ActivitySceneTransitionBasic/Application/src/main/res/values/base-strings.xml
index 989fe00..35860cb 100644
--- a/prebuilts/gradle/ActivitySceneTransitionBasic/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/Application/src/main/res/values/base-strings.xml
@@ -21,9 +21,9 @@
         
             
             Demonstrates how to the use Activity scene transitions when transitions
-            from one Activity to another. Uses a combination of moveImage and changeBounds
-            to nicely transition a grid of images to an Activity with a large image and detail
-            text.
+            from one Activity to another. Uses a combination of changeImageTransform and
+            changeBounds to nicely transition a grid of images to an Activity with a large image
+            and detail text.
             
         
         ]]>
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ActivitySceneTransitionBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ActivitySceneTransitionBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/NOTICE b/prebuilts/gradle/ActivitySceneTransitionBasic/NOTICE
new file mode 100644
index 0000000..b88fc15
--- /dev/null
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/NOTICE
@@ -0,0 +1,29 @@
+This sample uses the following software:
+
+Copyright 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.
+
+Copyright 2013 Square, Inc.
+
+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.
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/README.md b/prebuilts/gradle/ActivitySceneTransitionBasic/README.md
index afb91ce..b535cb0 100644
--- a/prebuilts/gradle/ActivitySceneTransitionBasic/README.md
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/README.md
@@ -1,17 +1,32 @@
 Android ActivitySceneTransitionBasic Sample
-==============================
+===================================
 
-Demonstrates how to the use Activity scene transitions when transitions
-from one Activity to another. Uses a combination of moveImage and changeBounds
-to nicely transition a grid of images to an Activity with a large image and detail text.
+This sample shows how to use scene transitions from one Activity to another in Lollipop.
+Uses a combination of changeImageTransform and changeBounds to transition a grid of images
+to an Activity with a large image and detail text.
+
+Introduction
+------------
+
+Android Lollipop has introduced the ability to transition between activities by using a shared element.
+This sample demonstrates how to do this using the theme of your application.
+
+See [Defining Custom Animations][1] for all the details on how to do this.
+
+[1]: https://developer.android.com/training/material/animations.html#Transitions
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> <img src="screenshots/2-transition.png" height="400" alt="Screenshot"/> <img src="screenshots/3-transition.png" height="400" alt="Screenshot"/> <img src="screenshots/4-detail.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -42,7 +57,7 @@
 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
+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
diff --git a/prebuilts/gradle/ActivitySceneTransitionBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ActivitySceneTransitionBasic/gradle/wrapper/gradle-wrapper.properties
index eca7f2f..46b1748 100644
--- a/prebuilts/gradle/ActivitySceneTransitionBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ActivitySceneTransitionBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AdapterTransition/.google/packaging.yaml b/prebuilts/gradle/AdapterTransition/.google/packaging.yaml
new file mode 100644
index 0000000..593e3f8
--- /dev/null
+++ b/prebuilts/gradle/AdapterTransition/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AdapterTransition
+license: apache2
diff --git a/prebuilts/gradle/AdapterTransition/Application/build.gradle b/prebuilts/gradle/AdapterTransition/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/AdapterTransition/Application/build.gradle
+++ b/prebuilts/gradle/AdapterTransition/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AdapterTransition/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AdapterTransition/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AdapterTransition/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AdapterTransition/NOTICE b/prebuilts/gradle/AdapterTransition/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AdapterTransition/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AdapterTransition/README.md b/prebuilts/gradle/AdapterTransition/README.md
index 2f78cef..71a9ef8 100644
--- a/prebuilts/gradle/AdapterTransition/README.md
+++ b/prebuilts/gradle/AdapterTransition/README.md
@@ -1,13 +1,13 @@
 Android AdapterTransition Sample
-==============================
+===================================
 
 Transition cannot be directly applied to AdapterViews. In this sample, we demonstrate how to create an overlay layout and run a Transition on it. Press the action bar button to toggle between ListView and GridView.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -40,7 +40,7 @@
 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
+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
diff --git a/prebuilts/gradle/AdapterTransition/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AdapterTransition/gradle/wrapper/gradle-wrapper.properties
index 00daa77..0c71e76 100644
--- a/prebuilts/gradle/AdapterTransition/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AdapterTransition/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AdvancedImmersiveMode/.google/packaging.yaml b/prebuilts/gradle/AdvancedImmersiveMode/.google/packaging.yaml
new file mode 100644
index 0000000..4bb9c0d
--- /dev/null
+++ b/prebuilts/gradle/AdvancedImmersiveMode/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AdvancedImmersiveMode
+license: apache2
diff --git a/prebuilts/gradle/AdvancedImmersiveMode/Application/build.gradle b/prebuilts/gradle/AdvancedImmersiveMode/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/AdvancedImmersiveMode/Application/build.gradle
+++ b/prebuilts/gradle/AdvancedImmersiveMode/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AdvancedImmersiveMode/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AdvancedImmersiveMode/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AdvancedImmersiveMode/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AdvancedImmersiveMode/NOTICE b/prebuilts/gradle/AdvancedImmersiveMode/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AdvancedImmersiveMode/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AdvancedImmersiveMode/README.md b/prebuilts/gradle/AdvancedImmersiveMode/README.md
index f3a5546..1319d14 100644
--- a/prebuilts/gradle/AdvancedImmersiveMode/README.md
+++ b/prebuilts/gradle/AdvancedImmersiveMode/README.md
@@ -1,6 +1,5 @@
 Android AdvancedImmersiveMode Sample
-==============================
-
+===================================
 
 \n"Immersive Mode", added in Android 4.4, improves the "hide full screen" and
 "hide nav bar" modes, by letting users swipe the bars in and out.This sample
@@ -10,8 +9,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -44,7 +43,7 @@
 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
+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
diff --git a/prebuilts/gradle/AdvancedImmersiveMode/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AdvancedImmersiveMode/gradle/wrapper/gradle-wrapper.properties
index 7817462..faba5b7 100644
--- a/prebuilts/gradle/AdvancedImmersiveMode/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AdvancedImmersiveMode/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AgendaData/.google/packaging.yaml b/prebuilts/gradle/AgendaData/.google/packaging.yaml
new file mode 100644
index 0000000..5b9e791
--- /dev/null
+++ b/prebuilts/gradle/AgendaData/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AgendaData
+license: apache2
diff --git a/prebuilts/gradle/AgendaData/Application/build.gradle b/prebuilts/gradle/AgendaData/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/AgendaData/Application/build.gradle
+++ b/prebuilts/gradle/AgendaData/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AgendaData/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AgendaData/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AgendaData/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AgendaData/NOTICE b/prebuilts/gradle/AgendaData/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AgendaData/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AgendaData/README.md b/prebuilts/gradle/AgendaData/README.md
new file mode 100644
index 0000000..52ff019
--- /dev/null
+++ b/prebuilts/gradle/AgendaData/README.md
@@ -0,0 +1,53 @@
+Android AgendaData Sample
+===================================
+
+Syncs calendar events to your wearable at the press of a button, using the Wearable
+DataApi to transmit data such as event time, description, and background image. The DataItems can be
+deleted individually via an action on the event notifications, or all at once via a button on the
+companion. When deleted using the notification action, a ConfirmationActivity is used to indicate
+success or failure.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-AgendaData
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/AgendaData/Wearable/build.gradle b/prebuilts/gradle/AgendaData/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/AgendaData/Wearable/build.gradle
+++ b/prebuilts/gradle/AgendaData/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/AgendaData/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AgendaData/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/AgendaData/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AgendaData/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AppRestrictionEnforcer/.google/packaging.yaml b/prebuilts/gradle/AppRestrictionEnforcer/.google/packaging.yaml
new file mode 100644
index 0000000..2bed61e
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionEnforcer/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Admin]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AppRestrictionEnforcer
+license: apache2
diff --git a/prebuilts/gradle/AppRestrictionEnforcer/Application/build.gradle b/prebuilts/gradle/AppRestrictionEnforcer/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/AppRestrictionEnforcer/Application/build.gradle
+++ b/prebuilts/gradle/AppRestrictionEnforcer/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AppRestrictionEnforcer/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AppRestrictionEnforcer/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AppRestrictionEnforcer/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AppRestrictionEnforcer/NOTICE b/prebuilts/gradle/AppRestrictionEnforcer/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionEnforcer/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AppRestrictionEnforcer/README.md b/prebuilts/gradle/AppRestrictionEnforcer/README.md
new file mode 100644
index 0000000..fb8a9c5
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionEnforcer/README.md
@@ -0,0 +1,50 @@
+Android AppRestrictionEnforcer Sample
+===================================
+
+This sample demonstrates how to set restrictions to other apps as a profile owner.
+Use AppRestrictionSchema sample as a app with available restrictions.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-AppRestrictionEnforcer
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/AppRestrictionEnforcer/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AppRestrictionEnforcer/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/AppRestrictionEnforcer/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AppRestrictionEnforcer/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AppRestrictionSchema/.google/packaging.yaml b/prebuilts/gradle/AppRestrictionSchema/.google/packaging.yaml
new file mode 100644
index 0000000..fbe55a5
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionSchema/.google/packaging.yaml
@@ -0,0 +1,16 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Device Admin]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AppRestrictionSchema
+level:        ADVANCED
+icon:         Application/main/big_icon.png
+apiRefs:
+    - android:android.content.RestrictionsManager
+license: apache2
diff --git a/prebuilts/gradle/AppRestrictionSchema/Application/build.gradle b/prebuilts/gradle/AppRestrictionSchema/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/AppRestrictionSchema/Application/build.gradle
+++ b/prebuilts/gradle/AppRestrictionSchema/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AppRestrictionSchema/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AppRestrictionSchema/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AppRestrictionSchema/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AppRestrictionSchema/NOTICE b/prebuilts/gradle/AppRestrictionSchema/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionSchema/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AppRestrictionSchema/README.md b/prebuilts/gradle/AppRestrictionSchema/README.md
new file mode 100644
index 0000000..4c1c99f
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictionSchema/README.md
@@ -0,0 +1,101 @@
+Android AppRestrictionSchema Sample
+===================================
+
+A basic app showing how to allow a device administrator to restrict user
+activities using the Android Device Administration API. The app exports
+a custom policy that enables or disables a UI control. Device Administration
+applications are able to enforce a specific value for this policy, as
+directed by enterprise administrators.
+
+Introduction
+------------
+
+The [Android Device Administration API][1] allows enterprise administrators to
+enforce specific policies on a managed device. The system provides policies
+that control settings such as password complexity, screen lock, or camera
+availability. Developers can also augment this list with custom policies
+that control specific features within their applications. For example,
+a web browser could provide access to a whitelist of allowed domains.
+
+The list of policies exposed by an app must be specified using a file
+inside of the `res/xml` directory, using the `<restriction>` tag:
+
+```xml
+<restrictions xmlns:android="http://schemas.android.com/apk/res/android">
+
+    <restriction
+            android:defaultValue="false"
+            android:description="@string/description_can_say_hello"
+            android:key="can_say_hello"
+            android:restrictionType="bool"
+            android:title="@string/title_can_say_hello" />
+
+</restrictions>
+```
+
+In this sample, that file can be found at
+`Application/src/main/res/xml/app_restrictions.xml`. This file must be
+also be declared inside of `ApplicationManifest.xml` using a `<meta-data>`
+element:
+
+```xml
+<meta-data
+        android:name="android.content.APP_RESTRICTIONS"
+        android:resource="@xml/app_restrictions" />
+```
+
+At runtime, the current list of restrictions enforced by policy can be
+checked by calling [RestrictionsManager.getApplicationRestrictions()][2].
+
+[1]: http://developer.android.com/guide/topics/admin/device-admin.html
+[2]: https://developer.android.com/reference/android/content/RestrictionsManager.html#getApplicationRestrictions()
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-AppRestrictionSchema
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/AppRestrictionSchema/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AppRestrictionSchema/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/AppRestrictionSchema/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AppRestrictionSchema/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/AppRestrictions/.google/packaging.yaml b/prebuilts/gradle/AppRestrictions/.google/packaging.yaml
new file mode 100644
index 0000000..93686da
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictions/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Content]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-AppRestrictions
+license: apache2
diff --git a/prebuilts/gradle/AppRestrictions/Application/build.gradle b/prebuilts/gradle/AppRestrictions/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/AppRestrictions/Application/build.gradle
+++ b/prebuilts/gradle/AppRestrictions/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/AppRestrictions/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/AppRestrictions/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/AppRestrictions/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/AppRestrictions/NOTICE b/prebuilts/gradle/AppRestrictions/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/AppRestrictions/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/AppRestrictions/README.md b/prebuilts/gradle/AppRestrictions/README.md
index f533628..3709256 100644
--- a/prebuilts/gradle/AppRestrictions/README.md
+++ b/prebuilts/gradle/AppRestrictions/README.md
@@ -1,5 +1,5 @@
 Android AppRestrictions Sample
-==============================
+===================================
 
 This sample demonstrates the use of the App Restriction feature, which is available on
 Android 4.3 and above tablet device with the multiuser feature.
@@ -11,8 +11,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -45,7 +45,7 @@
 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
+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
diff --git a/prebuilts/gradle/AppRestrictions/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/AppRestrictions/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/AppRestrictions/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/AppRestrictions/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicAccessibility/.google/packaging.yaml b/prebuilts/gradle/BasicAccessibility/.google/packaging.yaml
new file mode 100644
index 0000000..256db80
--- /dev/null
+++ b/prebuilts/gradle/BasicAccessibility/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicAccessibility
+level:        BEGINNER
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.view.View
+    - android:android.view.accessibility.AccessibilityEvent
+license: apache2
diff --git a/prebuilts/gradle/BasicAccessibility/Application/build.gradle b/prebuilts/gradle/BasicAccessibility/Application/build.gradle
index 4713f6b..4a839f4 100644
--- a/prebuilts/gradle/BasicAccessibility/Application/build.gradle
+++ b/prebuilts/gradle/BasicAccessibility/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 11
diff --git a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-hdpi/ic_launcher.png b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-hdpi/ic_launcher.png
index 6c0b5ee..c8342cb 100644
--- a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-hdpi/ic_launcher.png
+++ b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-mdpi/ic_launcher.png b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-mdpi/ic_launcher.png
index 4ce0b82..0e883dd 100644
--- a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-mdpi/ic_launcher.png
+++ b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xhdpi/ic_launcher.png b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xhdpi/ic_launcher.png
index 6ded707..4096b65 100644
--- a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xhdpi/ic_launcher.png
+++ b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xxhdpi/ic_launcher.png b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
index 74ae891..b00fc9b 100644
--- a/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
+++ b/prebuilts/gradle/BasicAccessibility/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicAccessibility/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicAccessibility/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicAccessibility/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicAccessibility/NOTICE b/prebuilts/gradle/BasicAccessibility/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicAccessibility/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicAccessibility/README.md b/prebuilts/gradle/BasicAccessibility/README.md
index 427da22..a9f347a 100644
--- a/prebuilts/gradle/BasicAccessibility/README.md
+++ b/prebuilts/gradle/BasicAccessibility/README.md
@@ -1,15 +1,33 @@
 Android BasicAccessibility Sample
-==============================
+===================================
 
-This sample demonstrates how to create an accessible application, using a mix of different widgets demonstrating different ways of adding accessibility markup to a UI.
+This sample demonstrates how to create an accessible application, using a mix of different widgets
+demonstrating different ways of adding accessibility markup to a UI.
+
+Introduction
+------------
+
+This sample demonstrates how to create an accessible application, showing
+how to add accessibility to both framework and custom widgets.
+
+To run this sample as intended you will need to turn on TalkBack (or another text to speach system)
+on your Android device. Go to Settings > Accessibility > TalkBack to turn TalkBack on.
+
+When you run the sample with TalkBack mode on, TalkBack will read aloud the
+description of the in-focus widget.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +58,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicAccessibility/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicAccessibility/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicAccessibility/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicAccessibility/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicAccessibility/screenshots/icon-web.png b/prebuilts/gradle/BasicAccessibility/screenshots/icon-web.png
new file mode 100644
index 0000000..7164cad
--- /dev/null
+++ b/prebuilts/gradle/BasicAccessibility/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAccessibility/screenshots/main.png b/prebuilts/gradle/BasicAccessibility/screenshots/main.png
new file mode 100644
index 0000000..0a0c1b2
--- /dev/null
+++ b/prebuilts/gradle/BasicAccessibility/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/packaging.yaml b/prebuilts/gradle/BasicAndroidKeyStore/.google/packaging.yaml
similarity index 60%
rename from prebuilts/gradle/BasicAndroidKeyStore/packaging.yaml
rename to prebuilts/gradle/BasicAndroidKeyStore/.google/packaging.yaml
index a2cbd14..69ab508 100644
--- a/prebuilts/gradle/BasicAndroidKeyStore/packaging.yaml
+++ b/prebuilts/gradle/BasicAndroidKeyStore/.google/packaging.yaml
@@ -3,13 +3,14 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
 categories:   [Security]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-BasicAndroidKeyStore
-level:        BEGINNER
-icon:         BasicAndroidKeyStoreSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+github:       android-BasicAndroidKeyStore
+level:        ADVANCED
+icon:         screenshots/big-icon.png
+apiRefs:
+    - android:android.security.KeyPairGeneratorSpec
+license: apache2
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/Application/build.gradle b/prebuilts/gradle/BasicAndroidKeyStore/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/BasicAndroidKeyStore/Application/build.gradle
+++ b/prebuilts/gradle/BasicAndroidKeyStore/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/BasicAndroidKeyStore/Application/src/main/res/values/base-strings.xml
index 484618c..7a83818 100644
--- a/prebuilts/gradle/BasicAndroidKeyStore/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/BasicAndroidKeyStore/Application/src/main/res/values/base-strings.xml
@@ -19,14 +19,15 @@
     <string name="intro_message">
         <![CDATA[
         
-            
-                Welcome to the <b>Basic Android Key Store</b> sample!\n\n
-                This sample demonstrates how to use the Android Key Store to safely create and store
-                encryption keys that only your application can access.  You can also sign data
-                using those keys.\n\n
-                To create a new KeyPair, click \"Create\".\n\n
-                To sign some data using a KeyPair, click \"Sign\".\n\n
-                To verify the data using the signature provided, click \"Verify\".\n\n            
+
+Welcome to the <b>Basic Android Key Store</b> sample!\n\n
+This sample demonstrates how to use the Android Key Store to safely create and store
+encryption keys that only your application can access.  You can also sign data
+using those keys.\n\n
+To create a new KeyPair, click \"Create\".\n\n
+To sign some data using a KeyPair, click \"Sign\".\n\n
+To verify the data using the signature provided, click \"Verify\".\n\n
+
         
         ]]>
     </string>
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicAndroidKeyStore/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicAndroidKeyStore/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicAndroidKeyStore/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/NOTICE b/prebuilts/gradle/BasicAndroidKeyStore/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/README.md b/prebuilts/gradle/BasicAndroidKeyStore/README.md
index 93faf82..b585378 100644
--- a/prebuilts/gradle/BasicAndroidKeyStore/README.md
+++ b/prebuilts/gradle/BasicAndroidKeyStore/README.md
@@ -1,26 +1,36 @@
 Android BasicAndroidKeyStore Sample
-==============================
+===================================
 
-Welcome to the <b>Basic Android Key Store</b> sample!
+An advanced sample displaying the creation and usage of data integrity mechanisms
 
-This sample demonstrates how to use the Android Key Store to safely create and store
-encryption keys that only your application can access.You can also sign data
-using those keys.
+Introduction
+------------
 
-To create a new KeyPair, click "Create".
+This sample demonstrates how to use the Android [KeyStore][1] to safely create and store
+encryption keys that only your application can access.
 
-To sign some data using a KeyPair, click "Sign".
+A [KeyPair][2] consisting of a [PrivateKey][3] and a [PublicKey][4] is being generated.
+The private key then is being used to sign and verify a String.
 
-To verify the data using the signature provided, click "Verify".
+Next to that appropriate exception handling for potential errors is being displayed.
 
+[1]: https://developer.android.com/reference/java/security/KeyStore.html
+[2]: https://developer.android.com/reference/java/security/KeyPair.html
+[3]: https://developer.android.com/reference/java/security/PrivateKey.html
+[4]: https://developer.android.com/reference/java/security/PublicKey.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/screenshot1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot2.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot3.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot4.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot5.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -51,7 +61,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicAndroidKeyStore/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicAndroidKeyStore/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicAndroidKeyStore/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/big_icon.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/big_icon.png
new file mode 100644
index 0000000..004d80c
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/big_icon.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot1.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot1.png
new file mode 100644
index 0000000..e09a209
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot1.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot2.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot2.png
new file mode 100644
index 0000000..24bfa43
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot2.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot3.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot3.png
new file mode 100644
index 0000000..aafbbfb
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot3.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot4.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot4.png
new file mode 100644
index 0000000..3f77b54
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot4.png
Binary files differ
diff --git a/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot5.png b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot5.png
new file mode 100644
index 0000000..4965dc5
--- /dev/null
+++ b/prebuilts/gradle/BasicAndroidKeyStore/screenshots/screenshot5.png
Binary files differ
diff --git a/prebuilts/gradle/BasicContactables/.google/packaging.yaml b/prebuilts/gradle/BasicContactables/.google/packaging.yaml
new file mode 100644
index 0000000..c17e1fc
--- /dev/null
+++ b/prebuilts/gradle/BasicContactables/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Content]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicContactables
+license: apache2
diff --git a/prebuilts/gradle/BasicContactables/Application/build.gradle b/prebuilts/gradle/BasicContactables/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/BasicContactables/Application/build.gradle
+++ b/prebuilts/gradle/BasicContactables/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicContactables/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicContactables/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicContactables/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicContactables/NOTICE b/prebuilts/gradle/BasicContactables/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicContactables/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicContactables/README.md b/prebuilts/gradle/BasicContactables/README.md
index 36a53b6..883cd6c 100644
--- a/prebuilts/gradle/BasicContactables/README.md
+++ b/prebuilts/gradle/BasicContactables/README.md
@@ -1,5 +1,5 @@
 Android BasicContactables Sample
-==============================
+===================================
 
 This sample demonstrates how to use the Contactables table to search for contacts.
 
@@ -9,8 +9,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -43,7 +43,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicContactables/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicContactables/gradle/wrapper/gradle-wrapper.properties
index 96bdeaf..542898d 100644
--- a/prebuilts/gradle/BasicContactables/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicContactables/gradle/wrapper/gradle-wrapper.properties
@@ -4,4 +4,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicGestureDetect/.google/packaging.yaml b/prebuilts/gradle/BasicGestureDetect/.google/packaging.yaml
new file mode 100644
index 0000000..a467944
--- /dev/null
+++ b/prebuilts/gradle/BasicGestureDetect/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, Input]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicGestureDetect
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.view.GestureDetector
+    - android:android.view.MotionEvent
+license: apache2
diff --git a/prebuilts/gradle/BasicGestureDetect/Application/build.gradle b/prebuilts/gradle/BasicGestureDetect/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/BasicGestureDetect/Application/build.gradle
+++ b/prebuilts/gradle/BasicGestureDetect/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicGestureDetect/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicGestureDetect/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicGestureDetect/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicGestureDetect/NOTICE b/prebuilts/gradle/BasicGestureDetect/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicGestureDetect/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicGestureDetect/README.md b/prebuilts/gradle/BasicGestureDetect/README.md
index 933fa62..835ea30 100644
--- a/prebuilts/gradle/BasicGestureDetect/README.md
+++ b/prebuilts/gradle/BasicGestureDetect/README.md
@@ -1,16 +1,37 @@
 Android BasicGestureDetect Sample
-==============================
+===================================
 
-Welcome to Basic Gesture Detect!
-In order to try this sample out, try dragging or tapping this text to see what happens!
+This sample detects gestures on a view and logs them. In order to try this
+sample out, try dragging or tapping the text.
+
+Introduction
+------------
+
+In this sample, the gestures are detected using a custom gesture listener that extends
+[SimpleOnGestureListener][1] and writes the detected [MotionEvent][2] into the log.
+
+In this example, the steps followed to set up the gesture detector are:
+1. Create the GestureListener that includes all your callbacks.
+2. Create the GestureDetector ([SimpleOnGestureListener][1]) that will take the listener as an argument.
+3. For the view where the gestures will occur, create an [onTouchListener][3]
+that sends all motion events to the gesture detector.
+
+[1]: http://developer.android.com/reference/android/view/GestureDetector.SimpleOnGestureListener.html
+[2]: http://developer.android.com/reference/android/view/MotionEvent.html
+[3]: http://developer.android.com/reference/android/view/View.OnTouchListener.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +62,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicGestureDetect/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicGestureDetect/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicGestureDetect/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicGestureDetect/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicGestureDetect/screenshots/1-main.png b/prebuilts/gradle/BasicGestureDetect/screenshots/1-main.png
new file mode 100644
index 0000000..e7c3419
--- /dev/null
+++ b/prebuilts/gradle/BasicGestureDetect/screenshots/1-main.png
Binary files differ
diff --git a/prebuilts/gradle/BasicGestureDetect/screenshots/icon-web.png b/prebuilts/gradle/BasicGestureDetect/screenshots/icon-web.png
new file mode 100644
index 0000000..04d0248
--- /dev/null
+++ b/prebuilts/gradle/BasicGestureDetect/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/BasicImmersiveMode/.google/packaging.yaml b/prebuilts/gradle/BasicImmersiveMode/.google/packaging.yaml
new file mode 100644
index 0000000..5423cc5
--- /dev/null
+++ b/prebuilts/gradle/BasicImmersiveMode/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicImmersiveMode
+license: apache2
diff --git a/prebuilts/gradle/BasicImmersiveMode/Application/build.gradle b/prebuilts/gradle/BasicImmersiveMode/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/BasicImmersiveMode/Application/build.gradle
+++ b/prebuilts/gradle/BasicImmersiveMode/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicImmersiveMode/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicImmersiveMode/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicImmersiveMode/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicImmersiveMode/NOTICE b/prebuilts/gradle/BasicImmersiveMode/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicImmersiveMode/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicImmersiveMode/README.md b/prebuilts/gradle/BasicImmersiveMode/README.md
index 66f74b1..303530d 100644
--- a/prebuilts/gradle/BasicImmersiveMode/README.md
+++ b/prebuilts/gradle/BasicImmersiveMode/README.md
@@ -1,5 +1,5 @@
 Android BasicImmersiveMode Sample
-==============================
+===================================
 
 "Immersive Mode" is a new UI mode which improves "hide full screen" and
 "hide nav bar" modes, by letting users swipe the bars in and out.This sample
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicImmersiveMode/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicImmersiveMode/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicImmersiveMode/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicImmersiveMode/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicManagedProfile/.google/packaging.yaml b/prebuilts/gradle/BasicManagedProfile/.google/packaging.yaml
new file mode 100644
index 0000000..82535d2
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Device Admin]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicManagedProfile
+level:        ADVANCED
+icon:         screenshotsicon-web.png
+apiRefs:
+    - android:android.app.admin.DevicePolicyManager
+    - android:android.app.admin.DeviceAdminReceiver
+license: apache2
diff --git a/prebuilts/gradle/BasicManagedProfile/Application/build.gradle b/prebuilts/gradle/BasicManagedProfile/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/BasicManagedProfile/Application/build.gradle
+++ b/prebuilts/gradle/BasicManagedProfile/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicManagedProfile/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicManagedProfile/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicManagedProfile/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicManagedProfile/NOTICE b/prebuilts/gradle/BasicManagedProfile/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicManagedProfile/README.md b/prebuilts/gradle/BasicManagedProfile/README.md
index c1e4fde..8fcda8e 100644
--- a/prebuilts/gradle/BasicManagedProfile/README.md
+++ b/prebuilts/gradle/BasicManagedProfile/README.md
@@ -1,18 +1,51 @@
 Android BasicManagedProfile Sample
-==============================
+===================================
 
-This sample demonstrates how to create a managed profile. You can also learn how to enable or
-disable other apps and how to set restrictions to them. Intents can be configured to be forwarded
-between primary account and managed profile. Finally, you can wipe all the data associated with the
-profile. Note that there can only be one managed profile on a device. 
+This sample demonstrates basic functionalities of Managed Profile API
+introduced in Android 5.0 Lollipop. You can set up this app as a
+profile owner, and use this app to enable/disable apps in the newly
+created managed profile. You can also set restrictions to some apps,
+enable/disable Intent forwarding between profiles, and wipe out all
+the data associated with the profile.
+
+Introduction
+------------
+
+As of Android 5.0, DevicePolicyManager introduces new features to
+support managed profile.
+
+To set up this app as a profile owner, you need to encrypt your device
+(you are prompted to do if you haven't). This doesn't wipe out the
+device, but be aware that you can set up only one managed profile at a
+time.
+
+[isProfileOwnerApp][1] can be used to determine if a particular
+package is registered as the profile owner for the current user. You
+can initiate the provisioning flow of a managed profile with Intent of
+[ACTION_PROVISION_MANAGED_PROFILE][2].
+
+You have to implement a class extending [DeviceAdminReceiver][3] to
+receive the result of the provisioning flow. Use
+[setProfileEnabled][4] to enable the newly created profile, and your
+app is now set up as a profile owner.
+
+[1]: http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#isProfileOwnerApp(java.lang.String)
+[2]: http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#ACTION_PROVISION_MANAGED_PROFILE
+[3]: http://developer.android.com/reference/android/app/admin/DeviceAdminReceiver.html
+[4]: http://developer.android.com/reference/android/app/admin/DevicePolicyManager.html#setProfileEnabled(android.content.ComponentName)
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/not_set_up.png" height="400" alt="Screenshot"/> <img src="screenshots/set_up.png" height="400" alt="Screenshot"/> <img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -43,7 +76,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicManagedProfile/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicManagedProfile/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicManagedProfile/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicManagedProfile/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicManagedProfile/screenshots/icon-web.png b/prebuilts/gradle/BasicManagedProfile/screenshots/icon-web.png
new file mode 100755
index 0000000..9ffff0d
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/BasicManagedProfile/screenshots/main.png b/prebuilts/gradle/BasicManagedProfile/screenshots/main.png
new file mode 100644
index 0000000..ecb066e
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/BasicManagedProfile/screenshots/not_set_up.png b/prebuilts/gradle/BasicManagedProfile/screenshots/not_set_up.png
new file mode 100644
index 0000000..4db7e9f
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/screenshots/not_set_up.png
Binary files differ
diff --git a/prebuilts/gradle/BasicManagedProfile/screenshots/set_up.png b/prebuilts/gradle/BasicManagedProfile/screenshots/set_up.png
new file mode 100644
index 0000000..18d3998
--- /dev/null
+++ b/prebuilts/gradle/BasicManagedProfile/screenshots/set_up.png
Binary files differ
diff --git a/prebuilts/gradle/BasicMediaDecoder/.google/packaging.yaml b/prebuilts/gradle/BasicMediaDecoder/.google/packaging.yaml
new file mode 100644
index 0000000..a602f83
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaDecoder/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Media]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicMediaDecoder
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.media.MediaCodec
+    - android:android.media.MediaExtractor
+    - android:android.animation.TimeAnimator
+license: apache2
diff --git a/prebuilts/gradle/BasicMediaDecoder/Application/build.gradle b/prebuilts/gradle/BasicMediaDecoder/Application/build.gradle
index c71524c..c03c254 100644
--- a/prebuilts/gradle/BasicMediaDecoder/Application/build.gradle
+++ b/prebuilts/gradle/BasicMediaDecoder/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 17
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicMediaDecoder/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicMediaDecoder/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicMediaDecoder/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicMediaDecoder/NOTICE b/prebuilts/gradle/BasicMediaDecoder/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaDecoder/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicMediaDecoder/README.md b/prebuilts/gradle/BasicMediaDecoder/README.md
index 5663b3c..1f5ec4a 100644
--- a/prebuilts/gradle/BasicMediaDecoder/README.md
+++ b/prebuilts/gradle/BasicMediaDecoder/README.md
@@ -1,16 +1,67 @@
 Android BasicMediaDecoder Sample
-==============================
+===================================
 
-This activity uses a TextureView to render the frames of a video decoded using the
-MediaCodec API.
+This sample shows how to use the MediaCoder to decode a video,
+use a TimeAnimator to sync the rendering commands with the system
+display frame rendering and finally render it to a TextureView.
+
+Introduction
+------------
+
+[MediaCodec][1] was introduced in API 16, and can be used for low level (decoding/encoding) operations.
+In the same API was also introduced [TimeAnimator][2], which can be used to synchronise animation frames.
+Finally, [MediaExtractor][3] provides a simple way to extract demuxed media data from a data source.
+
+The main steps are described below:
+
+1. Create a layout with a [TextureView][4] for your activity.
+2. Initialise a MediaExtractor instance with `new MediaExtractor()` and a TimeAnimator instance with
+`new TimeAnimator()`.
+3. To start video playback, call `setDataSource(this, videoUri, null)` on your MediaExtractor instance,
+where `videoUri` is the URI of your video source.
+4. On your MediaExtractor instance, call `getTrackCount()` to know how many tracks you have in your streams.
+They may not all be video tracks. Deselect all tracks by calling `unselectTrack(i)` where `i` is
+the index of the track.
+5. Get the mime type of a track by calling `getTrackFormat(i).getString(MediaFormat.KEY_MIME)`
+on your MediaExtractor instance, where `i` is the index of your selected track.
+If the mime type contains "video/", then this is a video track so you can select it, using `selectTrack(i)`
+on your MediaExtractor instance.
+6. Create a MediaCodec instance by calling `MediaCodec.createDecoderByType(mimeType)`.
+7. Configure your MediaCodec instance with `configure(trackFormat, textureView, null,  0)`,
+where `trackFormat` is obtained by calling `getTrackFormat(i)` on your MediaExtractor instance.
+8. Set a TimeListener on your TimeAnimation instance, and override its `onTimeUpdate(final TimeAnimator animation,
+final long totalTime, final long deltaTime)` method.
+9. In `onTimeUpdate`, check if the media track has reached the end of stream, using `getSampleFlags()`
+on  your MediaExtractor instance and looking for `MediaCodec.BUFFER_FLAG_END_OF_STREAM` flag.
+10. Still in `onTimeUpdate`, assuming this isn't the end of the sample, write the media sample to your
+MediaDecoder instance, using `queueInputBuffer(index, 0, size, presentationTimeUs, flags)` method.
+You will need to set up your buffers, refer to [MediaCodec][1] documentation for details.
+11. After writing the media sample, you need to advance the sample, calling `advance()` on your
+TimeExtractor instance (this is a blocking operation and should be done outside the main thread).
+12. Finally, you can release and render the media sample by calling
+`dequeueOutputBuffer(info, timeout)` and `releaseOutputBuffer(i, true)`, refer to [MediaCodec][1]
+documentation for details.
+13. In `onPause()` or if you have reached the end of the stream, call `end()` on your TimeAnimation instance,
+then call `stop()` and `release()` on your MediaCodec instance, and finally, call `release()` on your
+MediaExtractor instance.
+
+[1]: http://developer.android.com/reference/android/media/MediaCodec.html
+[2]: http://developer.android.com/reference/android/animation/TimeAnimator.html
+[3]: http://developer.android.com/reference/android/media/MediaExtractor.html
+[4]: http://developer.android.com/reference/android/view/TextureView.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-launch.png" height="400" alt="Screenshot"/> <img src="screenshots/2-play-video.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +92,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicMediaDecoder/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicMediaDecoder/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicMediaDecoder/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicMediaDecoder/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicMediaDecoder/screenshots/1-launch.png b/prebuilts/gradle/BasicMediaDecoder/screenshots/1-launch.png
new file mode 100644
index 0000000..87c246f
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaDecoder/screenshots/1-launch.png
Binary files differ
diff --git a/prebuilts/gradle/BasicMediaDecoder/screenshots/2-play-video.png b/prebuilts/gradle/BasicMediaDecoder/screenshots/2-play-video.png
new file mode 100644
index 0000000..17f61fa
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaDecoder/screenshots/2-play-video.png
Binary files differ
diff --git a/prebuilts/gradle/BasicMediaDecoder/screenshots/icon-web.png b/prebuilts/gradle/BasicMediaDecoder/screenshots/icon-web.png
new file mode 100644
index 0000000..c67722e
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaDecoder/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/BasicMediaRouter/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/BasicMediaRouter/.google/packaging.yaml
index 13cd2e9..a69b176 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/BasicMediaRouter/.google/packaging.yaml
@@ -3,13 +3,10 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
 categories:   [Media]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
-level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+github:       android-BasicMediaRouter
+license: apache2
diff --git a/prebuilts/gradle/BasicMediaRouter/Application/build.gradle b/prebuilts/gradle/BasicMediaRouter/Application/build.gradle
index c71524c..c03c254 100644
--- a/prebuilts/gradle/BasicMediaRouter/Application/build.gradle
+++ b/prebuilts/gradle/BasicMediaRouter/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 17
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicMediaRouter/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicMediaRouter/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicMediaRouter/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicMediaRouter/NOTICE b/prebuilts/gradle/BasicMediaRouter/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicMediaRouter/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicMediaRouter/README.md b/prebuilts/gradle/BasicMediaRouter/README.md
index 7131411..330f476 100644
--- a/prebuilts/gradle/BasicMediaRouter/README.md
+++ b/prebuilts/gradle/BasicMediaRouter/README.md
@@ -1,5 +1,5 @@
 Android BasicMediaRouter Sample
-==============================
+===================================
 
 This sample demonstrates the use of the MediaRouter API to display
  content on a secondary display.
@@ -13,8 +13,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -47,7 +47,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicMediaRouter/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicMediaRouter/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicMediaRouter/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicMediaRouter/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicMultitouch/.google/packaging.yaml b/prebuilts/gradle/BasicMultitouch/.google/packaging.yaml
new file mode 100644
index 0000000..ecee2f8
--- /dev/null
+++ b/prebuilts/gradle/BasicMultitouch/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Input]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicMultitouch
+license: apache2
diff --git a/prebuilts/gradle/BasicMultitouch/Application/build.gradle b/prebuilts/gradle/BasicMultitouch/Application/build.gradle
index b4e63e8..45ed855 100644
--- a/prebuilts/gradle/BasicMultitouch/Application/build.gradle
+++ b/prebuilts/gradle/BasicMultitouch/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 8
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicMultitouch/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicMultitouch/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicMultitouch/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicMultitouch/NOTICE b/prebuilts/gradle/BasicMultitouch/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicMultitouch/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicMultitouch/README.md b/prebuilts/gradle/BasicMultitouch/README.md
index 0b0be8f..c387a6d 100644
--- a/prebuilts/gradle/BasicMultitouch/README.md
+++ b/prebuilts/gradle/BasicMultitouch/README.md
@@ -1,5 +1,5 @@
 Android BasicMultitouch Sample
-==============================
+===================================
 
 This samples demonstrates the use of MotionEvent properties to keep track of individual touches
 across multiple touch events.
@@ -10,8 +10,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -44,7 +44,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicMultitouch/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicMultitouch/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicMultitouch/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicMultitouch/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicNetworking/.google/packaging.yaml b/prebuilts/gradle/BasicNetworking/.google/packaging.yaml
new file mode 100644
index 0000000..57f2796
--- /dev/null
+++ b/prebuilts/gradle/BasicNetworking/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicNetworking
+license: apache2
diff --git a/prebuilts/gradle/BasicNetworking/Application/build.gradle b/prebuilts/gradle/BasicNetworking/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/BasicNetworking/Application/build.gradle
+++ b/prebuilts/gradle/BasicNetworking/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicNetworking/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicNetworking/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicNetworking/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicNetworking/NOTICE b/prebuilts/gradle/BasicNetworking/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicNetworking/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicNetworking/README.md b/prebuilts/gradle/BasicNetworking/README.md
index 0350917..9a5eead 100644
--- a/prebuilts/gradle/BasicNetworking/README.md
+++ b/prebuilts/gradle/BasicNetworking/README.md
@@ -1,5 +1,5 @@
 Android BasicNetworking Sample
-==============================
+===================================
 
 This sample demonstrates how to use the ConnectivityManager to determine if you have
 a network connection, and if so, what type of connection it is.
@@ -10,8 +10,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -44,7 +44,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicNetworking/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicNetworking/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicNetworking/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicNetworking/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicNotifications/.google/packaging.yaml b/prebuilts/gradle/BasicNotifications/.google/packaging.yaml
new file mode 100644
index 0000000..3b69f93
--- /dev/null
+++ b/prebuilts/gradle/BasicNotifications/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Notification]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicNotifications
+level:        BEGINNER
+icon:         Application/src/main/big_icon.png
+apiRefs:
+    - android:android.app.NotificationManager
+    - android:android.support.v4.app.NotificationCompat
+license: apache2
diff --git a/prebuilts/gradle/BasicNotifications/Application/build.gradle b/prebuilts/gradle/BasicNotifications/Application/build.gradle
index b4e63e8..45ed855 100644
--- a/prebuilts/gradle/BasicNotifications/Application/build.gradle
+++ b/prebuilts/gradle/BasicNotifications/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 8
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicNotifications/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicNotifications/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicNotifications/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicNotifications/NOTICE b/prebuilts/gradle/BasicNotifications/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicNotifications/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicNotifications/README.md b/prebuilts/gradle/BasicNotifications/README.md
index fcff595..a421cfd 100644
--- a/prebuilts/gradle/BasicNotifications/README.md
+++ b/prebuilts/gradle/BasicNotifications/README.md
@@ -1,17 +1,66 @@
 Android BasicNotifications Sample
-==============================
+===================================
 
-This sample demonstrates how to display events in the system\'s notification bar. The
+A basic app showing how to display events in the system's notification bar using
+the NotificationCompat API.
 NotificationCompat API is used for compatibility with older devices, running Android
-2.2 (Froyo) or newer.
+1.6 (Donut) (API level 4) or newer.
+
+Introduction
+------------
+
+The [Notification API][1] allows the app developers to display a message outside
+of your application's normal UI.
+
+The class [Notification][2] was added in the Android 3.0 (API level 11), but this
+sample refers to the [NotificationCompat][3] class (part of the [support library][4]),
+ which offers the same functionality for Android 1.6 (API level 4) or newer.
+
+A Notificaiton can be created using Notification.Builder object.
+At bare minimum, a Builder object must include the following:
+- A small icon, set by [setSmallIcon()][5]
+- A title, set by [setContentTitle()][6]
+- Detail text, set by [setContentText()][7]
+
+in the code snippet, it looks like following.
+```java
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this);
+builder.setSmallIcon(R.drawable.ic_stat_notification);
+builder.setContentTitle("BasicNotifications Sample");
+builder.setContentText("Time to learn about notifications!");
+```
+
+To issue the notification, call notify() method in the [NotificationManager][8].
+The code snippet will immediately display the notification icon in the
+notification bar.
+
+```java
+NotificationManager notificationManager = (NotificationManager) getSystemService(
+        NOTIFICATION_SERVICE);
+notificationManager.notify(NOTIFICATION_ID, builder.build());
+```
+
+[1]: http://developer.android.com/guide/topics/ui/notifiers/notifications.html
+[2]: http://developer.android.com/reference/android/app/Notification.html
+[3]: http://developer.android.com/reference/android/support/v4/app/NotificationCompat.html
+[4]: http://developer.android.com/tools/support-library/index.html
+[5]: http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html#setSmallIcon(int)
+[6]: http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html#setContentTitle(java.lang.CharSequence) 
+[7]: http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html#setContentText(java.lang.CharSequence)
+[8]: http://developer.android.com/reference/android/app/NotificationManager.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -42,7 +91,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicNotifications/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicNotifications/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicNotifications/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicNotifications/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicNotifications/screenshots/main.png b/prebuilts/gradle/BasicNotifications/screenshots/main.png
new file mode 100644
index 0000000..6e65b5e
--- /dev/null
+++ b/prebuilts/gradle/BasicNotifications/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/BasicRenderScript/.google/packaging.yaml b/prebuilts/gradle/BasicRenderScript/.google/packaging.yaml
new file mode 100644
index 0000000..53cd2c7
--- /dev/null
+++ b/prebuilts/gradle/BasicRenderScript/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [RenderScript]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicRenderScript
+license: apache2
diff --git a/prebuilts/gradle/BasicRenderScript/Application/build.gradle b/prebuilts/gradle/BasicRenderScript/Application/build.gradle
index df1e705..1424cb5 100644
--- a/prebuilts/gradle/BasicRenderScript/Application/build.gradle
+++ b/prebuilts/gradle/BasicRenderScript/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 8
@@ -54,7 +54,7 @@
         defaultConfig {
         
             renderscriptTargetApi 18
-            renderscriptSupportMode true
+            renderscriptSupportModeEnabled true
     
         }
     }
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicRenderScript/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicRenderScript/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicRenderScript/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicRenderScript/NOTICE b/prebuilts/gradle/BasicRenderScript/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicRenderScript/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicRenderScript/README.md b/prebuilts/gradle/BasicRenderScript/README.md
index 5a6380d..3ecc406 100644
--- a/prebuilts/gradle/BasicRenderScript/README.md
+++ b/prebuilts/gradle/BasicRenderScript/README.md
@@ -1,14 +1,14 @@
 Android BasicRenderScript Sample
-==============================
+===================================
 
 BasicRenderScript sample demonstrates basic steps how to use renderScript.
-			In the sample, it performs graphical filter operation on a image with renderScript.
+In the sample, it performs graphical filter operation on a image with renderScript.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicRenderScript/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicRenderScript/gradle/wrapper/gradle-wrapper.properties
index c68abf9..6c90366 100644
--- a/prebuilts/gradle/BasicRenderScript/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicRenderScript/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicSyncAdapter/.google/packaging.yaml b/prebuilts/gradle/BasicSyncAdapter/.google/packaging.yaml
new file mode 100644
index 0000000..cead24a
--- /dev/null
+++ b/prebuilts/gradle/BasicSyncAdapter/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicSyncAdapter
+license: apache2
diff --git a/prebuilts/gradle/BasicSyncAdapter/Application/build.gradle b/prebuilts/gradle/BasicSyncAdapter/Application/build.gradle
index fa951ff..f68e347 100644
--- a/prebuilts/gradle/BasicSyncAdapter/Application/build.gradle
+++ b/prebuilts/gradle/BasicSyncAdapter/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicSyncAdapter/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicSyncAdapter/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicSyncAdapter/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicSyncAdapter/NOTICE b/prebuilts/gradle/BasicSyncAdapter/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicSyncAdapter/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicSyncAdapter/README.md b/prebuilts/gradle/BasicSyncAdapter/README.md
index 8262d7e..fc21471 100644
--- a/prebuilts/gradle/BasicSyncAdapter/README.md
+++ b/prebuilts/gradle/BasicSyncAdapter/README.md
@@ -1,8 +1,8 @@
 Android BasicSyncAdapter Sample
-==============================
+===================================
 
 This sample demonstrates using SyncAdapter to fetch background data for an app that
-doesn\'t require a user-visible account type or 2-way synchronization.
+doesn't require a user-visible account type or 2-way synchronization.
 
 
 This sample periodically downloads the feed from the Android Developer Blog and
@@ -12,8 +12,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -46,7 +46,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicSyncAdapter/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicSyncAdapter/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicSyncAdapter/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicSyncAdapter/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicTransition/.google/packaging.yaml b/prebuilts/gradle/BasicTransition/.google/packaging.yaml
new file mode 100644
index 0000000..1e4b5f9
--- /dev/null
+++ b/prebuilts/gradle/BasicTransition/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Transition, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BasicTransition
+level:        ADVANCED
+icon:         Application/src/main/big_icon.png
+apiRefs:
+    - android:android.transition.TransitionManager
+    - android:android.transition.Transition
+    - android:android.transition.Scene
+license: apache2
diff --git a/prebuilts/gradle/BasicTransition/Application/build.gradle b/prebuilts/gradle/BasicTransition/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/BasicTransition/Application/build.gradle
+++ b/prebuilts/gradle/BasicTransition/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BasicTransition/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BasicTransition/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BasicTransition/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BasicTransition/NOTICE b/prebuilts/gradle/BasicTransition/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BasicTransition/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BasicTransition/README.md b/prebuilts/gradle/BasicTransition/README.md
index 0a95d6d..51f22cb 100644
--- a/prebuilts/gradle/BasicTransition/README.md
+++ b/prebuilts/gradle/BasicTransition/README.md
@@ -1,16 +1,46 @@
 Android BasicTransition Sample
-==============================
+===================================
 
-This sample demonstrates the basic use of the transition framework introduced in KitKat.
-	Select each of the RadioButtons to switch between the Scenes.
+A basic app showing how to use the Transition framework introduced in
+KitKat. The app shows radioboxes to select between different Scenes,
+and uses various ways to transition between them.
+
+Introduction
+------------
+
+A Scene is an encapsulation of the state of a view hierarchy,
+including the views in that hierarchy and the various values
+(layout-related and otherwise) that those views have. A scene can be
+defined by a layout hierarchy directly or by code which sets up the
+scene dynamically as it is entered.
+
+A Transition is a mechanism to automatically animate changes that
+occur when a new scene is entered. Some transition capabilities are
+automatic. That is, entering a scene may cause animations to run which
+fade out views that go away, changeBounds and resize existing views
+that change, and fade in views that become visible. There are
+additional transitions that can animate other attributes, such as
+color changes, and which can optionally be specified to take place
+during particular scene changes. Finally, developers can define their
+own Transition subclasses which monitor particular property changes
+and which run custom animations when those properties change values.
+
+TransitionManager is used to specify custom transitions for particular
+scene changes, and to cause scene changes with specific transitions to
+take place.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +71,7 @@
 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
+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
diff --git a/prebuilts/gradle/BasicTransition/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BasicTransition/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BasicTransition/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BasicTransition/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BasicTransition/screenshots/icon-web.png b/prebuilts/gradle/BasicTransition/screenshots/icon-web.png
new file mode 100644
index 0000000..943b3d7
--- /dev/null
+++ b/prebuilts/gradle/BasicTransition/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/BasicTransition/screenshots/main.png b/prebuilts/gradle/BasicTransition/screenshots/main.png
new file mode 100644
index 0000000..f15c7af
--- /dev/null
+++ b/prebuilts/gradle/BasicTransition/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/BatchStepSensor/.google/packaging.yaml b/prebuilts/gradle/BatchStepSensor/.google/packaging.yaml
new file mode 100644
index 0000000..6d2c1bc
--- /dev/null
+++ b/prebuilts/gradle/BatchStepSensor/.google/packaging.yaml
@@ -0,0 +1,19 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Sensors]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BatchStepSensor
+level:        ADVANCED
+icon:         screenshots/big_icon.png
+apiRefs:
+    - android:android.hardware.Sensor
+    - android:android.hardware.SensorEvent
+    - android:android.hardware.SensorEventListener
+    - android:android.hardware.SensorManager
+license: apache2
diff --git a/prebuilts/gradle/BatchStepSensor/Application/build.gradle b/prebuilts/gradle/BatchStepSensor/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/BatchStepSensor/Application/build.gradle
+++ b/prebuilts/gradle/BatchStepSensor/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BatchStepSensor/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BatchStepSensor/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BatchStepSensor/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BatchStepSensor/NOTICE b/prebuilts/gradle/BatchStepSensor/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BatchStepSensor/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BatchStepSensor/README.md b/prebuilts/gradle/BatchStepSensor/README.md
index 1d4f99b..c7dff78 100644
--- a/prebuilts/gradle/BatchStepSensor/README.md
+++ b/prebuilts/gradle/BatchStepSensor/README.md
@@ -1,26 +1,44 @@
 Android BatchStepSensor Sample
-==============================
+===================================
 
-This sample demonstrates the use of the two step sensors (step detector and counter) and
+Sample demonstrating how to set up SensorEventListeners for step
+detectors and step counters.
+
+Introduction
+------------
+
+This sample demonstrates the use of the two step [sensors][1] (step detector and counter) and
 sensor batching.
- It shows how to register a SensorEventListener with and without
+
+It shows how to register a [SensorEventListener][2] with and without
 batching and shows how these events are received.
+
 The Step Detector sensor fires an
 event when a step is detected, while the step counter returns the total number of
 steps since a listener was first registered for this sensor.
+
 Both sensors only count steps while a listener is registered. This sample only covers the
 basic case, where a listener is only registered while the app is running. Likewise,
 batched sensors can be used in the background (when the CPU is suspended), which
-requires manually flushing the sensor event queue before it overflows, which is not
+requires manually flushing the [sensor event][3] queue before it overflows, which is not
 covered in this sample.
 
+[1]: https://developer.android.com/reference/android/hardware/Sensor.html
+[2]: https://developer.android.com/reference/android/hardware/SensorEventListener.html
+[3]: https://developer.android.com/reference/android/hardware/SensorEvent.html
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/screenshot1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot2.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot3.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot4.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot5.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot6.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -51,7 +69,7 @@
 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
+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
diff --git a/prebuilts/gradle/BatchStepSensor/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BatchStepSensor/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BatchStepSensor/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BatchStepSensor/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BluetoothChat/.google/packaging.yaml b/prebuilts/gradle/BluetoothChat/.google/packaging.yaml
new file mode 100644
index 0000000..9768c65
--- /dev/null
+++ b/prebuilts/gradle/BluetoothChat/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BluetoothChat
+license: apache2
diff --git a/prebuilts/gradle/BluetoothChat/Application/build.gradle b/prebuilts/gradle/BluetoothChat/Application/build.gradle
index 4713f6b..4a839f4 100644
--- a/prebuilts/gradle/BluetoothChat/Application/build.gradle
+++ b/prebuilts/gradle/BluetoothChat/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 11
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BluetoothChat/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BluetoothChat/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BluetoothChat/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BluetoothChat/NOTICE b/prebuilts/gradle/BluetoothChat/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BluetoothChat/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BluetoothChat/README.md b/prebuilts/gradle/BluetoothChat/README.md
new file mode 100644
index 0000000..7a5a7fb
--- /dev/null
+++ b/prebuilts/gradle/BluetoothChat/README.md
@@ -0,0 +1,55 @@
+Android BluetoothChat Sample
+===================================
+
+This application allows two Android devices to carry out two-way text chat over
+Bluetooth. It demonstrates all the fundamental Bluetooth API capabilites, such as:
+(1) Scanning for other Bluetooth devices
+(2) Querying the local Bluetooth adapter for paired Bluetooth devices
+(3) Establishing RFCOMM channels/sockets
+(4) Connecting to a remote device
+(5) Transfering data over Bluetooth
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-BluetoothChat
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/BluetoothChat/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BluetoothChat/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BluetoothChat/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BluetoothChat/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BluetoothLeGatt/.google/packaging.yaml b/prebuilts/gradle/BluetoothLeGatt/.google/packaging.yaml
new file mode 100644
index 0000000..558b040
--- /dev/null
+++ b/prebuilts/gradle/BluetoothLeGatt/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BluetoothLeGatt
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.app.Service
+    - android:android.bluetooth.BluetoothGattService
+license: apache2
diff --git a/prebuilts/gradle/BluetoothLeGatt/Application/build.gradle b/prebuilts/gradle/BluetoothLeGatt/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/BluetoothLeGatt/Application/build.gradle
+++ b/prebuilts/gradle/BluetoothLeGatt/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BluetoothLeGatt/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BluetoothLeGatt/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BluetoothLeGatt/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BluetoothLeGatt/NOTICE b/prebuilts/gradle/BluetoothLeGatt/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BluetoothLeGatt/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BluetoothLeGatt/README.md b/prebuilts/gradle/BluetoothLeGatt/README.md
index 951a82c..593fe14 100644
--- a/prebuilts/gradle/BluetoothLeGatt/README.md
+++ b/prebuilts/gradle/BluetoothLeGatt/README.md
@@ -1,16 +1,36 @@
 Android BluetoothLeGatt Sample
-==============================
+===================================
 
 This sample demonstrates how to use the Bluetooth LE Generic Attribute Profile (GATT)
 to transmit arbitrary data between devices.
 
+Introduction
+------------
+
+This sample shows a list of available Bluetooth LE devices and provides
+an interface to connect, display data and display GATT services and
+characteristics supported by the devices.
+
+It creates a [Service][1] for managing connection and data communication with a GATT server
+hosted on a given Bluetooth LE device.
+
+The Activities communicate with the Service, which in turn interacts with the [Bluetooth LE API][2].
+
+[1]:http://developer.android.com/reference/android/app/Service.html
+[2]:https://developer.android.com/reference/android/bluetooth/BluetoothGatt.html
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> <img src="screenshots/2-detail.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +61,7 @@
 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
+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
diff --git a/prebuilts/gradle/BluetoothLeGatt/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BluetoothLeGatt/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BluetoothLeGatt/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BluetoothLeGatt/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/BluetoothLeGatt/screenshots/1-main.png b/prebuilts/gradle/BluetoothLeGatt/screenshots/1-main.png
new file mode 100644
index 0000000..19ceb47
--- /dev/null
+++ b/prebuilts/gradle/BluetoothLeGatt/screenshots/1-main.png
Binary files differ
diff --git a/prebuilts/gradle/BluetoothLeGatt/screenshots/2-detail.png b/prebuilts/gradle/BluetoothLeGatt/screenshots/2-detail.png
new file mode 100644
index 0000000..0bb0598
--- /dev/null
+++ b/prebuilts/gradle/BluetoothLeGatt/screenshots/2-detail.png
Binary files differ
diff --git a/prebuilts/gradle/BluetoothLeGatt/screenshots/icon-web.png b/prebuilts/gradle/BluetoothLeGatt/screenshots/icon-web.png
new file mode 100644
index 0000000..9420668
--- /dev/null
+++ b/prebuilts/gradle/BluetoothLeGatt/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/BorderlessButtons/.google/packaging.yaml b/prebuilts/gradle/BorderlessButtons/.google/packaging.yaml
new file mode 100644
index 0000000..789aa79
--- /dev/null
+++ b/prebuilts/gradle/BorderlessButtons/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-BorderlessButtons
+license: apache2
diff --git a/prebuilts/gradle/BorderlessButtons/Application/build.gradle b/prebuilts/gradle/BorderlessButtons/Application/build.gradle
index 98488a4..7207697 100644
--- a/prebuilts/gradle/BorderlessButtons/Application/build.gradle
+++ b/prebuilts/gradle/BorderlessButtons/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 14
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/BorderlessButtons/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/BorderlessButtons/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/BorderlessButtons/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/BorderlessButtons/NOTICE b/prebuilts/gradle/BorderlessButtons/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/BorderlessButtons/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/BorderlessButtons/README.md b/prebuilts/gradle/BorderlessButtons/README.md
index 7db92f5..a8e7091 100644
--- a/prebuilts/gradle/BorderlessButtons/README.md
+++ b/prebuilts/gradle/BorderlessButtons/README.md
@@ -1,5 +1,5 @@
 Android BorderlessButtons Sample
-==============================
+===================================
 
 This sample demonstrates the use of borderless buttons, bottom button bars
 (OK and Cancel) and dividers to establish visual structure.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/BorderlessButtons/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/BorderlessButtons/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/BorderlessButtons/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/BorderlessButtons/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Camera2Basic/.google/packaging.yaml b/prebuilts/gradle/Camera2Basic/.google/packaging.yaml
new file mode 100644
index 0000000..7669484
--- /dev/null
+++ b/prebuilts/gradle/Camera2Basic/.google/packaging.yaml
@@ -0,0 +1,22 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Media, Camera, Camera2]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Camera2Basic
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.hardware.camera2.CameraManager
+    - android:android.hardware.camera2.CameraDevice
+    - android:android.hardware.camera2.CameraCharacteristics
+    - android:android.hardware.camera2.CameraCaptureSession
+    - android:android.hardware.camera2.CaptureRequest
+    - android:android.hardware.camera2.CaptureResult
+    - android:android.view.TextureView
+license: apache2
diff --git a/prebuilts/gradle/Camera2Basic/Application/build.gradle b/prebuilts/gradle/Camera2Basic/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/Camera2Basic/Application/build.gradle
+++ b/prebuilts/gradle/Camera2Basic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/Camera2Basic/Application/src/main/java/com/example/android/camera2basic/Camera2BasicFragment.java b/prebuilts/gradle/Camera2Basic/Application/src/main/java/com/example/android/camera2basic/Camera2BasicFragment.java
index f4bf220..4b55358 100644
--- a/prebuilts/gradle/Camera2Basic/Application/src/main/java/com/example/android/camera2basic/Camera2BasicFragment.java
+++ b/prebuilts/gradle/Camera2Basic/Application/src/main/java/com/example/android/camera2basic/Camera2BasicFragment.java
@@ -266,8 +266,10 @@
                     int afState = result.get(CaptureResult.CONTROL_AF_STATE);
                     if (CaptureResult.CONTROL_AF_STATE_FOCUSED_LOCKED == afState ||
                             CaptureResult.CONTROL_AF_STATE_NOT_FOCUSED_LOCKED == afState) {
-                        int aeState = result.get(CaptureResult.CONTROL_AE_STATE);
-                        if (aeState == CaptureResult.CONTROL_AE_STATE_CONVERGED) {
+                        // CONTROL_AE_STATE can be null on some devices
+                        Integer aeState = result.get(CaptureResult.CONTROL_AE_STATE);
+                        if (aeState == null ||
+                                aeState == CaptureResult.CONTROL_AE_STATE_CONVERGED) {
                             mState = STATE_WAITING_NON_PRECAPTURE;
                             captureStillPicture();
                         } else {
@@ -277,17 +279,19 @@
                     break;
                 }
                 case STATE_WAITING_PRECAPTURE: {
-                    int aeState = result.get(CaptureResult.CONTROL_AE_STATE);
-                    if (CaptureResult.CONTROL_AE_STATE_PRECAPTURE == aeState) {
-                        mState = STATE_WAITING_NON_PRECAPTURE;
-                    } else if (CaptureRequest.CONTROL_AE_STATE_FLASH_REQUIRED == aeState) {
+                    // CONTROL_AE_STATE can be null on some devices
+                    Integer aeState = result.get(CaptureResult.CONTROL_AE_STATE);
+                    if (aeState == null ||
+                            aeState == CaptureResult.CONTROL_AE_STATE_PRECAPTURE ||
+                            aeState == CaptureRequest.CONTROL_AE_STATE_FLASH_REQUIRED) {
                         mState = STATE_WAITING_NON_PRECAPTURE;
                     }
                     break;
                 }
                 case STATE_WAITING_NON_PRECAPTURE: {
-                    int aeState = result.get(CaptureResult.CONTROL_AE_STATE);
-                    if (CaptureResult.CONTROL_AE_STATE_PRECAPTURE != aeState) {
+                    // CONTROL_AE_STATE can be null on some devices
+                    Integer aeState = result.get(CaptureResult.CONTROL_AE_STATE);
+                    if (aeState == null || aeState != CaptureResult.CONTROL_AE_STATE_PRECAPTURE) {
                         mState = STATE_PICTURE_TAKEN;
                         captureStillPicture();
                     }
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Camera2Basic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Camera2Basic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Camera2Basic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Camera2Basic/NOTICE b/prebuilts/gradle/Camera2Basic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Camera2Basic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Camera2Basic/README.md b/prebuilts/gradle/Camera2Basic/README.md
index 73b9eac..b848e02 100644
--- a/prebuilts/gradle/Camera2Basic/README.md
+++ b/prebuilts/gradle/Camera2Basic/README.md
@@ -1,16 +1,55 @@
 Android Camera2Basic Sample
-==============================
+===================================
 
-This sample demonstrates the basic use of Camera2 API. Check the source code to see how you can
-display camera preview and take pictures.
+This sample demonstrates how to use basic functionalities of Camera2
+API. You can learn how to iterate through characteristics of all the
+cameras attached to the device, display a camera preview, and take
+pictures.
+
+Introduction
+------------
+
+The [Camera2 API][1] provides an interface to individual camera
+devices connected to an Android device. It replaces the deprecated
+Camera class.
+
+Use [getCameraIdList][2] to get a list of all the available
+cameras. You can then use [getCameraCharacteristics][3] and find the
+best camera that suits your need (front/rear facing, resolution etc).
+
+Create an instance of [CameraDevice.StateCallback][4] and open a
+camera. It is ready to start camera preview when the camera is opened.
+
+This sample uses TextureView to show the camera preview. Create a
+[CameraCaptureSession][5] and set a repeating [CaptureRequest][6] to it.
+
+Still image capture takes several steps. First, you need to lock the
+focus of the camera by updating the CaptureRequest for the camera
+preview. Then, in a similar way, you need to run a precapture
+sequence. After that, it is ready to capture a picture. Create a new
+CaptureRequest and call [capture][7]. Don't forget to unlock the focus
+when you are done.
+
+[1]: https://developer.android.com/reference/android/hardware/camera2/package-summary.html
+[2]: https://developer.android.com/reference/android/hardware/camera2/CameraManager.html#getCameraIdList()
+[3]: https://developer.android.com/reference/android/hardware/camera2/CameraManager.html#getCameraCharacteristics(java.lang.String)
+[4]: https://developer.android.com/reference/android/hardware/camera2/CameraDevice.StateCallback.html
+[5]: https://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.html
+[6]: https://developer.android.com/reference/android/hardware/camera2/CaptureRequest.html
+[7]: https://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.html#capture(android.hardware.camera2.CaptureRequest, android.hardware.camera2.CameraCaptureSession.CaptureCallback, android.os.Handler)
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -32,7 +71,7 @@
 License
 -------
 
-Copyright 2014 The Android Open Source Project
+Copyright 2014 The Android Open Source Project, Inc.
 
 Licensed to the Apache Software Foundation (ASF) under one or more contributor
 license agreements.  See the NOTICE file distributed with this work for
@@ -41,7 +80,7 @@
 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
+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
diff --git a/prebuilts/gradle/Camera2Basic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Camera2Basic/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Camera2Basic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Camera2Basic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Camera2Basic/screenshots/icon-web.png b/prebuilts/gradle/Camera2Basic/screenshots/icon-web.png
new file mode 100644
index 0000000..d9bd4c4
--- /dev/null
+++ b/prebuilts/gradle/Camera2Basic/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/Camera2Basic/screenshots/main.png b/prebuilts/gradle/Camera2Basic/screenshots/main.png
new file mode 100644
index 0000000..47419eb
--- /dev/null
+++ b/prebuilts/gradle/Camera2Basic/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/Camera2Video/.google/packaging.yaml b/prebuilts/gradle/Camera2Video/.google/packaging.yaml
new file mode 100644
index 0000000..8537d95
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Media]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Camera2Video
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.hardware.camera2.CameraCaptureSession
+    - android:android.hardware.camera2.CameraDevice
+    - android:android.view.TextureView
+license: apache2
diff --git a/prebuilts/gradle/Camera2Video/Application/build.gradle b/prebuilts/gradle/Camera2Video/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/Camera2Video/Application/build.gradle
+++ b/prebuilts/gradle/Camera2Video/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Camera2Video/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Camera2Video/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Camera2Video/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Camera2Video/NOTICE b/prebuilts/gradle/Camera2Video/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Camera2Video/README.md b/prebuilts/gradle/Camera2Video/README.md
index 543d7cd..52dd730 100644
--- a/prebuilts/gradle/Camera2Video/README.md
+++ b/prebuilts/gradle/Camera2Video/README.md
@@ -1,15 +1,56 @@
 Android Camera2Video Sample
-==============================
+===================================
 
-This sample demonstrates how to record video using Camera2 API.
+This sample shows how to record video using the new Camera2 API in Android Lollipop.
+
+Introduction
+------------
+
+Android Lollipop introduced a new camera API, called camera2. This sample uses [CameraDevice][1]
+and [CameraCaptureSession][2] to record video. It also uses a custom [TextureView][3] to render the output.
+
+The main steps are:
+
+1. Create a custom TextureView class and add it to the layout. The purpose of the custom TextureView is
+to be able to draw itself according to an aspect ratio, which is set via a public method. Additionally,
+the `onMeasure(int widthMeasureSpec, int heightMeasureSpec)` method is overridden, using the aspect ratio.
+2. Implement a `TextureView.SurfaceTextureListener` on your TextureView, and override its
+`onSurfaceTextureSizeChanged(SurfaceTexture surfaceTexture, int width, int height)` method to calculate
+the matrix to apply to the TextureView so the camera output fits. Use the method `setTransform(matrix)` on
+the TextureView.
+3. Implement a [`CameraDevice.StateCallback`][4] to receive events about changes of the state of the
+camera device. Override its methods to set your CameraDevice instance, start the preview, and stop
+and release the camera.
+4. When starting the preview, set up the MediaRecorder to accept video format.
+5. Then, set up a [`CaptureRequest.Builder`][5] using `createCaptureRequest(CameraDevice.TEMPLATE_RECORD)`
+on your CameraDevice instance.
+6. Then, implement a [`CameraCaptureSession.StateCallback`][6], using the method
+`createCaptureSession(surfaces, new CameraCaptureSession.StateCallback(){})` on your CameraDevice instance,
+where `surfaces` is a list consisting of the surface view of your TextureView and the surface of
+your MediaRecorder instance.
+7. Use `start()` and `stop()` methods on your MediaRecorder instance to actually start and stop the recording.
+8. Lastly, set up and clean up your camera device in `onResume()` and `onPause()`.
+
+
+[1]: https://developer.android.com/reference/android/hardware/camera2/CameraDevice.html
+[2]: http://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.html
+[3]: http://developer.android.com/reference/android/view/TextureView.html
+[4]: https://developer.android.com/reference/android/hardware/camera2/CameraDevice.StateCallback.html
+[5]: http://developer.android.com/reference/android/hardware/camera2/CaptureRequest.Builder.html
+[6]: http://developer.android.com/reference/android/hardware/camera2/CameraCaptureSession.StateCallback.html
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-launch.png" height="400" alt="Screenshot"/> <img src="screenshots/2-record.png" height="400" alt="Screenshot"/> <img src="screenshots/3-save.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +81,7 @@
 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
+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
diff --git a/prebuilts/gradle/Camera2Video/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Camera2Video/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Camera2Video/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Camera2Video/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Camera2Video/screenshots/1-launch.png b/prebuilts/gradle/Camera2Video/screenshots/1-launch.png
new file mode 100644
index 0000000..24105bb
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/screenshots/1-launch.png
Binary files differ
diff --git a/prebuilts/gradle/Camera2Video/screenshots/2-record.png b/prebuilts/gradle/Camera2Video/screenshots/2-record.png
new file mode 100644
index 0000000..bf79522
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/screenshots/2-record.png
Binary files differ
diff --git a/prebuilts/gradle/Camera2Video/screenshots/3-save.png b/prebuilts/gradle/Camera2Video/screenshots/3-save.png
new file mode 100644
index 0000000..a070da4
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/screenshots/3-save.png
Binary files differ
diff --git a/prebuilts/gradle/Camera2Video/screenshots/icon-web.png b/prebuilts/gradle/Camera2Video/screenshots/icon-web.png
new file mode 100644
index 0000000..a0a61c0
--- /dev/null
+++ b/prebuilts/gradle/Camera2Video/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/CardEmulation/.google/packaging.yaml b/prebuilts/gradle/CardEmulation/.google/packaging.yaml
new file mode 100644
index 0000000..03dec4d
--- /dev/null
+++ b/prebuilts/gradle/CardEmulation/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CardEmulation
+license: apache2
diff --git a/prebuilts/gradle/CardEmulation/Application/build.gradle b/prebuilts/gradle/CardEmulation/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/CardEmulation/Application/build.gradle
+++ b/prebuilts/gradle/CardEmulation/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CardEmulation/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CardEmulation/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CardEmulation/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CardEmulation/NOTICE b/prebuilts/gradle/CardEmulation/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CardEmulation/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CardEmulation/README.md b/prebuilts/gradle/CardEmulation/README.md
index c10c393..ce885e9 100644
--- a/prebuilts/gradle/CardEmulation/README.md
+++ b/prebuilts/gradle/CardEmulation/README.md
@@ -1,5 +1,5 @@
 Android CardEmulation Sample
-==============================
+===================================
 
 This sample demonstrates how to emulate an NFC card, using the "host card emulation"
 feature added in Android 4.4. This sample makes the device appear as a loyalty card
@@ -11,8 +11,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -45,7 +45,7 @@
 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
+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
diff --git a/prebuilts/gradle/CardEmulation/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CardEmulation/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/CardEmulation/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CardEmulation/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/CardReader/.google/packaging.yaml b/prebuilts/gradle/CardReader/.google/packaging.yaml
new file mode 100644
index 0000000..1077c39
--- /dev/null
+++ b/prebuilts/gradle/CardReader/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CardReader
+license: apache2
diff --git a/prebuilts/gradle/CardReader/Application/build.gradle b/prebuilts/gradle/CardReader/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/CardReader/Application/build.gradle
+++ b/prebuilts/gradle/CardReader/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CardReader/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CardReader/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CardReader/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CardReader/NOTICE b/prebuilts/gradle/CardReader/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CardReader/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CardReader/README.md b/prebuilts/gradle/CardReader/README.md
index fddbeac..0eaa5e0 100644
--- a/prebuilts/gradle/CardReader/README.md
+++ b/prebuilts/gradle/CardReader/README.md
@@ -1,5 +1,5 @@
 Android CardReader Sample
-==============================
+===================================
 
 This sample demonstrates how to implement a low-level NFC card reader, for reading cards
 that do not contain NDEF or Android Beam data. This sample is designed to read the virtual
@@ -12,8 +12,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -46,7 +46,7 @@
 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
+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
diff --git a/prebuilts/gradle/CardReader/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CardReader/gradle/wrapper/gradle-wrapper.properties
index a7bd4a7..4819af8 100644
--- a/prebuilts/gradle/CardReader/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CardReader/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/CardView/.google/packaging.yaml b/prebuilts/gradle/CardView/.google/packaging.yaml
new file mode 100644
index 0000000..e5dc053
--- /dev/null
+++ b/prebuilts/gradle/CardView/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CardView Sample
+license: apache2
diff --git a/prebuilts/gradle/CardView/Application/build.gradle b/prebuilts/gradle/CardView/Application/build.gradle
index 0fc8a01..26ea951 100644
--- a/prebuilts/gradle/CardView/Application/build.gradle
+++ b/prebuilts/gradle/CardView/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/CardView/CONTRIB.md b/prebuilts/gradle/CardView/CONTRIB.md
index 14a4fcf..8ddb52d 100644
--- a/prebuilts/gradle/CardView/CONTRIB.md
+++ b/prebuilts/gradle/CardView/CONTRIB.md
@@ -27,8 +27,8 @@
 1. Fork the desired repo, develop and test your code changes.
 1. Ensure that your code adheres to the existing style in the sample to which
    you are contributing. Refer to the
-   [Android Code Style Guide]
-   (https://source.android.com/source/code-style.html) for the
+   [Google Cloud Platform Samples Style Guide]
+   (https://github.com/GoogleCloudPlatform/Template/wiki/style.html) for the
    recommended coding standards for this organization.
 1. Ensure that your code has an appropriate set of unit tests which all pass.
 1. Submit a pull request.
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CardView/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CardView/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CardView/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CardView/NOTICE b/prebuilts/gradle/CardView/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CardView/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CardView/README.md b/prebuilts/gradle/CardView/README.md
index afa2483..9b59602 100644
--- a/prebuilts/gradle/CardView/README.md
+++ b/prebuilts/gradle/CardView/README.md
@@ -1,13 +1,14 @@
-Android CardView Sample
-=======================
+Android CardView Sample Sample
+===================================
 
-Demonstration of the CardView API introduced in Android L.
+This sample demonstrates how to use CardView introduced in the support library for the
+Android L preview.
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -23,7 +24,7 @@
 - Stack Overflow: http://stackoverflow.com/questions/tagged/android
 
 If you've found an error in this sample, please file an issue:
-https://github.com/googlesamples/android-BasicAndroidKeyStore
+https://github.com/googlesamples/android-CardView Sample
 
 Patches are encouraged, and may be submitted by forking this project and
 submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
@@ -40,8 +41,8 @@
 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
-  
+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
diff --git a/prebuilts/gradle/CardView/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CardView/gradle/wrapper/gradle-wrapper.properties
index 588fabb..78c4ddd 100644
--- a/prebuilts/gradle/CardView/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CardView/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/ClippingBasic/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/ClippingBasic/.google/packaging.yaml
index 13cd2e9..477ed94 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/ClippingBasic/.google/packaging.yaml
@@ -3,13 +3,14 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
-categories:   [Media]
+categories:   [UI Views]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
+github:       android-ClippingBasic
 level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+icon:         screenshots/web-icon.png
+apiRefs:
+    - android:android.view.ViewOutlineProvider
+license: apache2
diff --git a/prebuilts/gradle/ClippingBasic/Application/build.gradle b/prebuilts/gradle/ClippingBasic/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/ClippingBasic/Application/build.gradle
+++ b/prebuilts/gradle/ClippingBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ClippingBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ClippingBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ClippingBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ClippingBasic/NOTICE b/prebuilts/gradle/ClippingBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ClippingBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ClippingBasic/README.md b/prebuilts/gradle/ClippingBasic/README.md
index f6347ea..966fc2d 100644
--- a/prebuilts/gradle/ClippingBasic/README.md
+++ b/prebuilts/gradle/ClippingBasic/README.md
@@ -1,15 +1,60 @@
 Android ClippingBasic Sample
-==============================
+===================================
 
-Basic sample to demonstrate clipping on a View.
+A basic app showing how to clip on a View using [ViewOutlineProvider][1] interface,
+by which a View builds its outline, used for shadowing and clipping.
+
+Introduction
+------------
+
+The [ViewOutlineProvider][1] interface offers you a method to populate the outline of a View.
+You need to implement a getOutline(android.view.View, android.graphics.Outline)
+method to clip a View in a specific shape.
+
+This example clips the outline of a View as a rounded rectangle by defining a class that
+ implements ViewOutlineProvider by following code:
+
+```java
+private class ClipOutlineProvider extends ViewOutlineProvider {
+    @Override
+    public void getOutline(View view, Outline outline) {
+        final int margin = Math.min(view.getWidth(), view.getHeight()) / 10;
+        outline.setRoundRect(margin, margin, view.getWidth() - margin,
+                view.getHeight() - margin, margin / 2);
+    }
+}
+```
+
+To clip a View by the defined outline, setting a OutlineProvider to a View
+to be clipped is needed like following:
+
+```java
+final View clippedView = view.findViewById(R.id.frame);
+clippedView.setOutlineProvider(mOutlineProvider);
+```
+
+You can toggle if the View is clipped by calling [setClipToOutline(boolean)][2]
+like following code:
+
+```java
+clippedView.setClipToOutline(true); // Setting false disable clipping
+```
+
+[1]: https://developer.android.com/reference/android/view/ViewOutlineProvider.html
+[2]: https://developer.android.com/reference/android/view/View.html#setClipToOutline(boolean)
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/screenshot-1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot-2.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +85,7 @@
 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
+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
diff --git a/prebuilts/gradle/ClippingBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ClippingBasic/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ClippingBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ClippingBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ClippingBasic/screenshots/screenshot-1.png b/prebuilts/gradle/ClippingBasic/screenshots/screenshot-1.png
new file mode 100644
index 0000000..9a36e78
--- /dev/null
+++ b/prebuilts/gradle/ClippingBasic/screenshots/screenshot-1.png
Binary files differ
diff --git a/prebuilts/gradle/ClippingBasic/screenshots/screenshot-2.png b/prebuilts/gradle/ClippingBasic/screenshots/screenshot-2.png
new file mode 100644
index 0000000..2e2f10c
--- /dev/null
+++ b/prebuilts/gradle/ClippingBasic/screenshots/screenshot-2.png
Binary files differ
diff --git a/prebuilts/gradle/ClippingBasic/screenshots/web-icon.png b/prebuilts/gradle/ClippingBasic/screenshots/web-icon.png
new file mode 100755
index 0000000..e14cdfb
--- /dev/null
+++ b/prebuilts/gradle/ClippingBasic/screenshots/web-icon.png
Binary files differ
diff --git a/prebuilts/gradle/CustomChoiceList/.google/packaging.yaml b/prebuilts/gradle/CustomChoiceList/.google/packaging.yaml
new file mode 100644
index 0000000..e6eae45
--- /dev/null
+++ b/prebuilts/gradle/CustomChoiceList/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CustomChoiceList
+license: apache2
diff --git a/prebuilts/gradle/CustomChoiceList/Application/build.gradle b/prebuilts/gradle/CustomChoiceList/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/CustomChoiceList/Application/build.gradle
+++ b/prebuilts/gradle/CustomChoiceList/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CustomChoiceList/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CustomChoiceList/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CustomChoiceList/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CustomChoiceList/NOTICE b/prebuilts/gradle/CustomChoiceList/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CustomChoiceList/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CustomChoiceList/README.md b/prebuilts/gradle/CustomChoiceList/README.md
index 2af24f9..2813e90 100644
--- a/prebuilts/gradle/CustomChoiceList/README.md
+++ b/prebuilts/gradle/CustomChoiceList/README.md
@@ -1,14 +1,14 @@
 Android CustomChoiceList Sample
-==============================
+===================================
 
-This sample demonstrates how to create custom checkable layouts, for use with ListView\'s choiceMode
+This sample demonstrates how to create custom checkable layouts, for use with ListView's choiceMode
 attribute.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/CustomChoiceList/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CustomChoiceList/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/CustomChoiceList/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CustomChoiceList/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/CustomNotifications/.google/packaging.yaml b/prebuilts/gradle/CustomNotifications/.google/packaging.yaml
new file mode 100644
index 0000000..63f8b91
--- /dev/null
+++ b/prebuilts/gradle/CustomNotifications/.google/packaging.yaml
@@ -0,0 +1,20 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Notification, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CustomNotifications
+level:        BEGINNER
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.app.Notification
+    - android:android.app.NotificationManager
+    - android:android.app.PendingIntent
+    - android:android.support.v4.app.NotificationCompat
+    - android:android.widget.RemoteViews
+license: apache2
diff --git a/prebuilts/gradle/CustomNotifications/Application/build.gradle b/prebuilts/gradle/CustomNotifications/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/CustomNotifications/Application/build.gradle
+++ b/prebuilts/gradle/CustomNotifications/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CustomNotifications/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CustomNotifications/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CustomNotifications/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CustomNotifications/NOTICE b/prebuilts/gradle/CustomNotifications/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CustomNotifications/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CustomNotifications/README.md b/prebuilts/gradle/CustomNotifications/README.md
index 99b732e..a5da801 100644
--- a/prebuilts/gradle/CustomNotifications/README.md
+++ b/prebuilts/gradle/CustomNotifications/README.md
@@ -1,15 +1,38 @@
 Android CustomNotifications Sample
-==============================
+===================================
 
 This sample demonstrates notifications with custom content views.
+The use of collapsed and expanded notification views are shown.
+
+Introduction
+------------
+
+This sample demonstrates notifications with custom content views. It
+also demonstrates the expanded notification introduced in API level 16.
+
+This sample shows all the required steps to create and display custom
+notifications:
+
+- Create Intent to launch Activity when notification is clicked.
+- Define custom layouts for collapsed and expanded views.
+- Use NotificationManager's notify to show notification.
+
+In the sample, click on the "SHOW NOTIFICATION" button to create
+a notification. Use two-fingered gestures up and down to collapse
+and expand the notification.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main-notification.png" height="400" alt="Screenshot"/> <img src="screenshots/notification.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +63,7 @@
 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
+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
diff --git a/prebuilts/gradle/CustomNotifications/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CustomNotifications/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/CustomNotifications/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CustomNotifications/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/CustomNotifications/screenshots/icon-web.png b/prebuilts/gradle/CustomNotifications/screenshots/icon-web.png
new file mode 100644
index 0000000..183e592
--- /dev/null
+++ b/prebuilts/gradle/CustomNotifications/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/CustomNotifications/screenshots/main-notification.png b/prebuilts/gradle/CustomNotifications/screenshots/main-notification.png
new file mode 100644
index 0000000..00d4e5a
--- /dev/null
+++ b/prebuilts/gradle/CustomNotifications/screenshots/main-notification.png
Binary files differ
diff --git a/prebuilts/gradle/CustomNotifications/screenshots/notification.png b/prebuilts/gradle/CustomNotifications/screenshots/notification.png
new file mode 100644
index 0000000..a6abfcb
--- /dev/null
+++ b/prebuilts/gradle/CustomNotifications/screenshots/notification.png
Binary files differ
diff --git a/prebuilts/gradle/CustomTransition/.google/packaging.yaml b/prebuilts/gradle/CustomTransition/.google/packaging.yaml
new file mode 100644
index 0000000..87c04c7
--- /dev/null
+++ b/prebuilts/gradle/CustomTransition/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Transition, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-CustomTransition
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.transition.TransitionManager
+    - android:android.transition.Transition
+    - android:android.transition.Scene
+license: apache2
diff --git a/prebuilts/gradle/CustomTransition/Application/build.gradle b/prebuilts/gradle/CustomTransition/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/CustomTransition/Application/build.gradle
+++ b/prebuilts/gradle/CustomTransition/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/CustomTransition/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/CustomTransition/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/CustomTransition/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/CustomTransition/NOTICE b/prebuilts/gradle/CustomTransition/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/CustomTransition/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/CustomTransition/README.md b/prebuilts/gradle/CustomTransition/README.md
index 76ac022..0ad4d3c 100644
--- a/prebuilts/gradle/CustomTransition/README.md
+++ b/prebuilts/gradle/CustomTransition/README.md
@@ -1,15 +1,45 @@
 Android CustomTransition Sample
-==============================
+===================================
 
-This sample demonstrates how to create and use a custom Transition.
+This sample shows how to implement a custom Transition extending the
+standard Transition class.
+
+Introduction
+------------
+
+In order to create a custom Transition, you first need to override
+[captureStartValues][1] and [captureEndValues][2]. In those method, you have to
+extract all the relevant properties from a View. These methods are called for
+each of the Views in the hierarchy.
+
+Then, you need to override [createAnimator][3] and create an Animator based on
+the property values you extracted. This method will also be called for each of
+the Views in the hierarchy. If you want to skip some Views, simply return null.
+
+The instantiated custom Transition can be applied by passing it as the second
+parameter of [TransitionManager.go][4].
+
+```java
+TransitionManager.go(mScenes[mCurrentScene], mTransition);
+```
+
+[1]: https://developer.android.com/reference/android/transition/Transition.html#captureStartValues(android.transition.TransitionValues)
+[2]: https://developer.android.com/reference/android/transition/Transition.html#captureEndValues(android.transition.TransitionValues)
+[3]: https://developer.android.com/reference/android/transition/Transition.html#createAnimator(android.view.ViewGroup, android.transition.TransitionValues, android.transition.TransitionValues)
+[4]: https://developer.android.com/reference/android/transition/TransitionManager.html#go(android.transition.Scene, android.transition.Transition)
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +70,7 @@
 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
+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
diff --git a/prebuilts/gradle/CustomTransition/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/CustomTransition/gradle/wrapper/gradle-wrapper.properties
index 684b39c..4cd80b2 100644
--- a/prebuilts/gradle/CustomTransition/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/CustomTransition/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/CustomTransition/screenshots/icon-web.png b/prebuilts/gradle/CustomTransition/screenshots/icon-web.png
new file mode 100755
index 0000000..51149ad
--- /dev/null
+++ b/prebuilts/gradle/CustomTransition/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/CustomTransition/screenshots/main.png b/prebuilts/gradle/CustomTransition/screenshots/main.png
new file mode 100644
index 0000000..d016b60
--- /dev/null
+++ b/prebuilts/gradle/CustomTransition/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/DataLayer/.google/packaging.yaml b/prebuilts/gradle/DataLayer/.google/packaging.yaml
new file mode 100644
index 0000000..6519791
--- /dev/null
+++ b/prebuilts/gradle/DataLayer/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DataLayer
+level:        ADVANCED
+icon:         Application/src/main/res/drawable-xxhdpi/ic_launcher.png
+apiRefs:
+    - com.google.android.gms.wearable.DataApi
+    - com.google.android.gms.wearable.DataEvent
+    - com.google.android.gms.wearable.WearableListenerService
+license: apache2
diff --git a/prebuilts/gradle/DataLayer/Application/build.gradle b/prebuilts/gradle/DataLayer/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/DataLayer/Application/build.gradle
+++ b/prebuilts/gradle/DataLayer/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DataLayer/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/DataLayer/Application/src/main/res/values/base-strings.xml
index b335734..856ec54 100644
--- a/prebuilts/gradle/DataLayer/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/DataLayer/Application/src/main/res/values/base-strings.xml
@@ -20,9 +20,9 @@
         <![CDATA[
         
             
-            You can cause the wearable to start an activity by pressing a button in the
-            companion app UI. You can also take a picture on the companion device, which will be transmitted as
-            an Asset for display on the wearable.
+            Sample demonstrating the usage of the GoogleApiClient in order to send data
+            from a handheld device to a wearable. The data transmitted is a picture taken by
+            the user of the sample.
             
         
         ]]>
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DataLayer/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DataLayer/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DataLayer/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DataLayer/NOTICE b/prebuilts/gradle/DataLayer/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DataLayer/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DataLayer/README.md b/prebuilts/gradle/DataLayer/README.md
new file mode 100644
index 0000000..4b2efea
--- /dev/null
+++ b/prebuilts/gradle/DataLayer/README.md
@@ -0,0 +1,74 @@
+Android DataLayer Sample
+===================================
+
+This sample demonstrates how to work with a WearableListenerService,
+to produce and consume DataEvents and effectively work with the DataLayer.
+
+Introduction
+------------
+
+This sample demonstrates how to make a handheld and an Android Wear device communicate
+using the [DataApi][2].
+It does this by sending a picture between connected devices.
+
+An Activity is being used for both the connected devices which implement their parts of
+the required interfaces.
+
+It showcases how to use an [WearableListenerService][1] to consume DataEvents
+as well as implementations for various required listeners when using the [DataApi][2],
+[MessageApi][3] and [NodeApi][4].
+
+[1]: https://developer.android.com/reference/com/google/android/gms/wearable/WearableListenerService.html
+[2]: https://developer.android.com/reference/com/google/android/gms/wearable/DataApi.html
+[3]: https://developer.android.com/reference/com/google/android/gms/wearable/MessageApi.html
+[4]: https://developer.android.com/reference/com/google/android/gms/wearable/NodeApi.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/phone_image.png" height="400" alt="Screenshot"/> <img src="screenshots/wearable_background_image.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-DataLayer
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/DataLayer/Wearable/build.gradle b/prebuilts/gradle/DataLayer/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/DataLayer/Wearable/build.gradle
+++ b/prebuilts/gradle/DataLayer/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/DataLayer/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DataLayer/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/DataLayer/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DataLayer/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DelayedConfirmation/.google/packaging.yaml b/prebuilts/gradle/DelayedConfirmation/.google/packaging.yaml
new file mode 100644
index 0000000..e949663
--- /dev/null
+++ b/prebuilts/gradle/DelayedConfirmation/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DelayedConfirmation
+license: apache2
diff --git a/prebuilts/gradle/DelayedConfirmation/Application/build.gradle b/prebuilts/gradle/DelayedConfirmation/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/DelayedConfirmation/Application/build.gradle
+++ b/prebuilts/gradle/DelayedConfirmation/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DelayedConfirmation/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DelayedConfirmation/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DelayedConfirmation/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DelayedConfirmation/NOTICE b/prebuilts/gradle/DelayedConfirmation/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DelayedConfirmation/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DelayedConfirmation/README.md b/prebuilts/gradle/DelayedConfirmation/README.md
new file mode 100644
index 0000000..363d187
--- /dev/null
+++ b/prebuilts/gradle/DelayedConfirmation/README.md
@@ -0,0 +1,54 @@
+Android DelayedConfirmation Sample
+===================================
+
+Demonstrates how to create a DelayedConfirmationView in your wearable app. In this
+sample, pressing a button on the phone app sends a message to the wearable to start a simple
+activity. This activity displays a DelayedConfirmationView that starts when the user presses "Start
+Timer." Then, callbacks are implemented on both the wearable and phone to show when the timer is
+selected or finishes. The activity on the wearable uses BoxInsetLayout to automatically apply
+appropriate margins based on whether the display is square or circular.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-DelayedConfirmation
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/DelayedConfirmation/Wearable/build.gradle b/prebuilts/gradle/DelayedConfirmation/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/DelayedConfirmation/Wearable/build.gradle
+++ b/prebuilts/gradle/DelayedConfirmation/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/DelayedConfirmation/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DelayedConfirmation/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/DelayedConfirmation/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DelayedConfirmation/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DisplayingBitmaps/.google/packaging.yaml b/prebuilts/gradle/DisplayingBitmaps/.google/packaging.yaml
new file mode 100644
index 0000000..63a219a
--- /dev/null
+++ b/prebuilts/gradle/DisplayingBitmaps/.google/packaging.yaml
@@ -0,0 +1,21 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, Background, Views]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DisplayingBitmaps
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.widget.ImageView
+    - android:android.widget.GridView
+    - android:android.graphics.BitmapFactory
+    - android:android.os.AsyncTask
+    - android:android.util.LruCache
+    - android:android.support.v4.view.ViewPager
+license: apache2
diff --git a/prebuilts/gradle/DisplayingBitmaps/Application/build.gradle b/prebuilts/gradle/DisplayingBitmaps/Application/build.gradle
index fa951ff..f68e347 100644
--- a/prebuilts/gradle/DisplayingBitmaps/Application/build.gradle
+++ b/prebuilts/gradle/DisplayingBitmaps/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DisplayingBitmaps/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DisplayingBitmaps/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DisplayingBitmaps/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DisplayingBitmaps/NOTICE b/prebuilts/gradle/DisplayingBitmaps/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DisplayingBitmaps/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DisplayingBitmaps/README.md b/prebuilts/gradle/DisplayingBitmaps/README.md
index 95ea0d7..d5e8c22 100644
--- a/prebuilts/gradle/DisplayingBitmaps/README.md
+++ b/prebuilts/gradle/DisplayingBitmaps/README.md
@@ -1,22 +1,33 @@
 Android DisplayingBitmaps Sample
-==============================
+===================================
 
-This is a sample application for the Android Training class
-&quot;Displaying Bitmaps Efficiently&quot;
-(http://developer.android.com/training/displaying-bitmaps/).
+Sample demonstrating how to load large bitmaps efficiently off the main UI thread,
+caching bitmaps (both in memory and on disk), managing bitmap memory and displaying
+bitmaps in UI elements such as ViewPager and ListView/GridView.
 
+Introduction
+------------
+
+This is a sample application for the Android Training class [Displaying Bitmaps Efficiently][1].
 
 It demonstrates how to load large bitmaps efficiently off the main UI thread, caching
 bitmaps (both in memory and on disk), managing bitmap memory and displaying bitmaps
 in UI elements such as ViewPager and ListView/GridView.
 
+[1]: http://developer.android.com/training/displaying-bitmaps/
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-gridview.png" height="400" alt="Screenshot"/> <img src="screenshots/2-detail.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -47,7 +58,7 @@
 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
+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
diff --git a/prebuilts/gradle/DisplayingBitmaps/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DisplayingBitmaps/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/DisplayingBitmaps/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DisplayingBitmaps/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DisplayingBitmaps/screenshots/1-gridview.png b/prebuilts/gradle/DisplayingBitmaps/screenshots/1-gridview.png
new file mode 100644
index 0000000..11f9ab7
--- /dev/null
+++ b/prebuilts/gradle/DisplayingBitmaps/screenshots/1-gridview.png
Binary files differ
diff --git a/prebuilts/gradle/DisplayingBitmaps/screenshots/2-detail.png b/prebuilts/gradle/DisplayingBitmaps/screenshots/2-detail.png
new file mode 100644
index 0000000..32babd9
--- /dev/null
+++ b/prebuilts/gradle/DisplayingBitmaps/screenshots/2-detail.png
Binary files differ
diff --git a/prebuilts/gradle/DisplayingBitmaps/screenshots/icon-web.png b/prebuilts/gradle/DisplayingBitmaps/screenshots/icon-web.png
new file mode 100644
index 0000000..7bad768
--- /dev/null
+++ b/prebuilts/gradle/DisplayingBitmaps/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/DocumentCentricApps/.google/packaging.yaml b/prebuilts/gradle/DocumentCentricApps/.google/packaging.yaml
new file mode 100644
index 0000000..3ed3e4f
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricApps/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DocumentCentricRecents
+license: apache2
diff --git a/prebuilts/gradle/DocumentCentricApps/Application/build.gradle b/prebuilts/gradle/DocumentCentricApps/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/DocumentCentricApps/Application/build.gradle
+++ b/prebuilts/gradle/DocumentCentricApps/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DocumentCentricApps/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DocumentCentricApps/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DocumentCentricApps/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DocumentCentricApps/NOTICE b/prebuilts/gradle/DocumentCentricApps/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricApps/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DocumentCentricApps/README.md b/prebuilts/gradle/DocumentCentricApps/README.md
new file mode 100644
index 0000000..e481418
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricApps/README.md
@@ -0,0 +1,52 @@
+Android DocumentCentricRecents Sample
+===================================
+
+This sample shows the basic usage of the new "Document Centric Apps" API.
+It let's you create new documents in the system overview menu and persists its
+state through reboots. If "Task per document" is checked a new task will be
+created for every new document in the overview menu.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-DocumentCentricRecents
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/DocumentCentricApps/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DocumentCentricApps/gradle/wrapper/gradle-wrapper.properties
index 56f685a..0c71e76 100644
--- a/prebuilts/gradle/DocumentCentricApps/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DocumentCentricApps/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/.google/packaging.yaml b/prebuilts/gradle/DocumentCentricRelinquishIdentity/.google/packaging.yaml
new file mode 100644
index 0000000..1555296
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DocumentCentricRelinquishIdentity
+license: apache2
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/Application/build.gradle b/prebuilts/gradle/DocumentCentricRelinquishIdentity/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/Application/build.gradle
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/NOTICE b/prebuilts/gradle/DocumentCentricRelinquishIdentity/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/README.md b/prebuilts/gradle/DocumentCentricRelinquishIdentity/README.md
new file mode 100644
index 0000000..7812f8a
--- /dev/null
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/README.md
@@ -0,0 +1,49 @@
+Android DocumentCentricRelinquishIdentity Sample
+===================================
+
+This sample shows how to relinquish identity to activities above it in the task stack.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-DocumentCentricRelinquishIdentity
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DocumentCentricRelinquishIdentity/gradle/wrapper/gradle-wrapper.properties
index 56f685a..0c71e76 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DocumentCentricRelinquishIdentity/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DoneBar/.google/packaging.yaml b/prebuilts/gradle/DoneBar/.google/packaging.yaml
new file mode 100644
index 0000000..0ec3378
--- /dev/null
+++ b/prebuilts/gradle/DoneBar/.google/packaging.yaml
@@ -0,0 +1,16 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DoneBar
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.app.ActionBar
+license: apache2
diff --git a/prebuilts/gradle/DoneBar/Application/build.gradle b/prebuilts/gradle/DoneBar/Application/build.gradle
index 98488a4..7207697 100644
--- a/prebuilts/gradle/DoneBar/Application/build.gradle
+++ b/prebuilts/gradle/DoneBar/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 14
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DoneBar/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DoneBar/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DoneBar/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DoneBar/NOTICE b/prebuilts/gradle/DoneBar/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DoneBar/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DoneBar/README.md b/prebuilts/gradle/DoneBar/README.md
index 800b60b..254879d 100644
--- a/prebuilts/gradle/DoneBar/README.md
+++ b/prebuilts/gradle/DoneBar/README.md
@@ -1,21 +1,44 @@
 Android DoneBar Sample
-==============================
+===================================
 
-This sample demonstrates two alternative presentations of the
-action bar that are well-suited for simple data entry scenarios.
+This sample shows how to create a custom view in the ActionBar to show a done button, using
+2 alternative layouts. This is well suited for simple data entry activities, where the only
+options for the user are to cancel or confirm the data changes.
 
-In this presentation, a done bar replaces the action
-bar entirely, providing two direct actions to persist or dismiss changes. This is
-suitable for cases where no additional view details or actions are needed in the
-action bar.
+Introduction
+------------
+
+API 11 introduced the [ActionBar][1] as a navigational UI element. In most cases, a custom view isn't required
+or even recommended, as using a menu xml file is all that is needed to add action icons to it. However, it is
+possible to use a custom view and it is useful in some cases.
+
+This sample contains two activities with custom views in their action bar, each with a "done" button. These are
+designed to be used with simple data entry screen where the only options for the user are to cancel or confirm
+the changes.
+
+1. Create a layout for the [ActionBar][2].
+2. In the activity, before setting the content view, inflate the view using the LayoutInflater.
+3. Use `getActionBar()` to get the ActionBar, and set the display options with `ActionBar.DISPLAY_SHOW_CUSTOM`.
+4. Set the custom view by calling `setCustomView(customActionBarView, new ActionBar.LayoutParams(
+ViewGroup.LayoutParams.MATCH_PARENT,ViewGroup.LayoutParams.MATCH_PARENT))` on the ActionBar.
+5. You can now set the content view of the Activity.
+
+
+[1]: http://developer.android.com/design/patterns/actionbar.html
+[2]: http://developer.android.com/reference/android/app/ActionBar.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> <img src="screenshots/2-done-bar.png" height="400" alt="Screenshot"/> <img src="screenshots/3-done-button.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -46,7 +69,7 @@
 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
+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
diff --git a/prebuilts/gradle/DoneBar/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DoneBar/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/DoneBar/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DoneBar/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/DrawableTinting/.google/packaging.yaml b/prebuilts/gradle/DrawableTinting/.google/packaging.yaml
new file mode 100644
index 0000000..9e54a1b
--- /dev/null
+++ b/prebuilts/gradle/DrawableTinting/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-DrawableTinting
+license: apache2
diff --git a/prebuilts/gradle/DrawableTinting/Application/build.gradle b/prebuilts/gradle/DrawableTinting/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/DrawableTinting/Application/build.gradle
+++ b/prebuilts/gradle/DrawableTinting/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/DrawableTinting/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/DrawableTinting/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/DrawableTinting/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/DrawableTinting/NOTICE b/prebuilts/gradle/DrawableTinting/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/DrawableTinting/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/DrawableTinting/README.md b/prebuilts/gradle/DrawableTinting/README.md
index db2efaa..da2ca32 100644
--- a/prebuilts/gradle/DrawableTinting/README.md
+++ b/prebuilts/gradle/DrawableTinting/README.md
@@ -1,12 +1,9 @@
 Android DrawableTinting Sample
-==============================
+===================================
 
 Sample that shows applying tinting and color filters to Drawables both programmatically
 and as Drawable resources in XML.
 
-Introduction
-------------
-
 Tinting is set on a nine-patch drawable through the "tint" and "tintMode" parameters.
 A color state list is referenced as the tint color, which defines colors for different
 states of a View (for example disabled/enabled, focused, pressed or selected).
@@ -18,8 +15,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -52,7 +49,7 @@
 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
+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
diff --git a/prebuilts/gradle/DrawableTinting/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/DrawableTinting/gradle/wrapper/gradle-wrapper.properties
index 56f685a..0c71e76 100644
--- a/prebuilts/gradle/DrawableTinting/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/DrawableTinting/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ElevationBasic/.google/packaging.yaml b/prebuilts/gradle/ElevationBasic/.google/packaging.yaml
new file mode 100644
index 0000000..51e5aa0
--- /dev/null
+++ b/prebuilts/gradle/ElevationBasic/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ElevationBasic
+license: apache2
diff --git a/prebuilts/gradle/ElevationBasic/Application/build.gradle b/prebuilts/gradle/ElevationBasic/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/ElevationBasic/Application/build.gradle
+++ b/prebuilts/gradle/ElevationBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ElevationBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ElevationBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ElevationBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ElevationBasic/NOTICE b/prebuilts/gradle/ElevationBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ElevationBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ElevationBasic/README.md b/prebuilts/gradle/ElevationBasic/README.md
index b40a734..42db0ac 100644
--- a/prebuilts/gradle/ElevationBasic/README.md
+++ b/prebuilts/gradle/ElevationBasic/README.md
@@ -1,5 +1,5 @@
 Android ElevationBasic Sample
-==============================
+===================================
 
 This sample demonstrates two alternative ways to move a view in the z-axis. The
 first view has a fixed elevation using XML and the second one is raised when the user
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/ElevationBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ElevationBasic/gradle/wrapper/gradle-wrapper.properties
index fe5a0cf..2aebf9c 100644
--- a/prebuilts/gradle/ElevationBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ElevationBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.11-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/ElevationDrag/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/ElevationDrag/.google/packaging.yaml
index 13cd2e9..0689c8f 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/ElevationDrag/.google/packaging.yaml
@@ -3,13 +3,14 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
-categories:   [Media]
+categories:   [UI, Views]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
+github:       android-ElevationDrag
 level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.view.View
+license: apache2
diff --git a/prebuilts/gradle/ElevationDrag/Application/build.gradle b/prebuilts/gradle/ElevationDrag/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/ElevationDrag/Application/build.gradle
+++ b/prebuilts/gradle/ElevationDrag/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ElevationDrag/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ElevationDrag/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ElevationDrag/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ElevationDrag/NOTICE b/prebuilts/gradle/ElevationDrag/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ElevationDrag/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ElevationDrag/README.md b/prebuilts/gradle/ElevationDrag/README.md
index f3c2129..0890f75 100644
--- a/prebuilts/gradle/ElevationDrag/README.md
+++ b/prebuilts/gradle/ElevationDrag/README.md
@@ -1,17 +1,37 @@
 Android ElevationDrag Sample
-==============================
+===================================
 
 This sample demonstrates a drag and drop action on different shapes. Elevation and
 z-translation are used to render the shadows and the views are clipped using different
 Outlines.
 
+Introduction
+------------
+
+This sample demonstrates a drag and drop action on different shapes. Elevation and
+z-translation are used to render the shadows and the views are clipped using different
+Outlines.
+
+Elevation is considered the static or initial position of a view on the z axis, while
+translationZ exists for transient states, like animations.
+
+`Z = elevation + translationZ`
+
+See [Assign Elevation to Your Views][1] for more info.
+[1]:https://developer.android.com/training/material/shadows-clipping.html#Elevation
+
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -42,7 +62,7 @@
 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
+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
diff --git a/prebuilts/gradle/ElevationDrag/gradle/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ElevationDrag/gradle/gradle/wrapper/gradle-wrapper.properties
index eefbc0a..a51db8c 100644
--- a/prebuilts/gradle/ElevationDrag/gradle/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ElevationDrag/gradle/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ElevationDrag/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ElevationDrag/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ElevationDrag/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ElevationDrag/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ElevationDrag/screenshots/1-main.png b/prebuilts/gradle/ElevationDrag/screenshots/1-main.png
new file mode 100644
index 0000000..c2e385f
--- /dev/null
+++ b/prebuilts/gradle/ElevationDrag/screenshots/1-main.png
Binary files differ
diff --git a/prebuilts/gradle/ElevationDrag/screenshots/icon-web.png b/prebuilts/gradle/ElevationDrag/screenshots/icon-web.png
new file mode 100644
index 0000000..b0a031a
--- /dev/null
+++ b/prebuilts/gradle/ElevationDrag/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/ElizaChat/.google/packaging.yaml b/prebuilts/gradle/ElizaChat/.google/packaging.yaml
new file mode 100644
index 0000000..e1e5e76
--- /dev/null
+++ b/prebuilts/gradle/ElizaChat/.google/packaging.yaml
@@ -0,0 +1,16 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ElizaChat
+level:        INTERMEDIATE
+icon:         screenshots/wearable_eliza_notification.png
+apiRefs:
+    - android:android.support.v4.app.NotificationCompat.WearableExtender
+license: apache2
diff --git a/prebuilts/gradle/ElizaChat/Application/build.gradle b/prebuilts/gradle/ElizaChat/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/ElizaChat/Application/build.gradle
+++ b/prebuilts/gradle/ElizaChat/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ElizaChat/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ElizaChat/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ElizaChat/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ElizaChat/NOTICE b/prebuilts/gradle/ElizaChat/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ElizaChat/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ElizaChat/README.md b/prebuilts/gradle/ElizaChat/README.md
new file mode 100644
index 0000000..07f95e7
--- /dev/null
+++ b/prebuilts/gradle/ElizaChat/README.md
@@ -0,0 +1,114 @@
+Android ElizaChat Sample
+===================================
+
+A basic sample showing how to add extensions to notifications on wearable using
+[NotificationCompat.WearableExtender][1] API by providing a chat experience.
+
+Introduction
+------------
+
+[NotificationCompat.WearableExtender][1] API offers you a functionality to
+ add wearable extensions to notifications like [Add the Voice Input as a Notification Action][2].
+
+This example also adds the wearable notifications as a voice input by the following code:
+
+```java
+NotificationCompat.Builder builder = new NotificationCompat.Builder(this)
+        .setContentTitle(getString(R.string.eliza))
+        .setContentText(mLastResponse)
+        .setLargeIcon(BitmapFactory.decodeResource(getResources(), R.drawable.bg_eliza))
+        .setSmallIcon(R.drawable.bg_eliza)
+        .setPriority(NotificationCompat.PRIORITY_MIN);
+
+Intent intent = new Intent(ACTION_RESPONSE);
+PendingIntent pendingIntent = PendingIntent.getService(this, 0, intent,
+        PendingIntent.FLAG_ONE_SHOT | PendingIntent.FLAG_CANCEL_CURRENT);
+Notification notification = builder
+        .extend(new NotificationCompat.WearableExtender()
+                .addAction(new NotificationCompat.Action.Builder(
+                        R.drawable.ic_full_reply, getString(R.string.reply), pendingIntent)
+                        .addRemoteInput(new RemoteInput.Builder(EXTRA_REPLY)
+                                .setLabel(getString(R.string.reply))
+                                .build())
+                        .build()))
+        .build();
+NotificationManagerCompat.from(this).notify(0, notification);
+```
+
+When you issue this notification, users can swipe to the left to see the "Reply" action button.
+
+When you receive the response, you can do it by the following code:
+
+```java
+@Override
+public int onStartCommand(Intent intent, int flags, int startId) {
+    if (null == intent || null == intent.getAction()) {
+        return Service.START_STICKY;
+    }
+    String action = intent.getAction();
+    if (action.equals(ACTION_RESPONSE)) {
+        Bundle remoteInputResults = RemoteInput.getResultsFromIntent(intent);
+        CharSequence replyMessage = "";
+        if (remoteInputResults != null) {
+            replyMessage = remoteInputResults.getCharSequence(EXTRA_REPLY);
+        }
+        processIncoming(replyMessage.toString());
+    } else if (action.equals(MainActivity.ACTION_GET_CONVERSATION)) {
+        broadcastMessage(mCompleteConversation.toString());
+    }
+    return Service.START_STICKY;
+}
+```
+
+[1]: https://developer.android.com/reference/android/support/v4/app/NotificationCompat.WearableExtender.html
+[2]: https://developer.android.com/training/wearables/notifications/voice-input.html#AddAction
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/companion_eliza_chat_response.png" height="400" alt="Screenshot"/> <img src="screenshots/companion_eliza_chat.png" height="400" alt="Screenshot"/> <img src="screenshots/wearable_eliza_notification.png" height="400" alt="Screenshot"/> <img src="screenshots/wearable_voice_reply.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-ElizaChat
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/ElizaChat/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ElizaChat/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ElizaChat/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ElizaChat/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/EmbeddedApp/.google/packaging.yaml b/prebuilts/gradle/EmbeddedApp/.google/packaging.yaml
new file mode 100644
index 0000000..3e65c65
--- /dev/null
+++ b/prebuilts/gradle/EmbeddedApp/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-EmbeddedApp
+license: apache2
diff --git a/prebuilts/gradle/EmbeddedApp/Application/build.gradle b/prebuilts/gradle/EmbeddedApp/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/EmbeddedApp/Application/build.gradle
+++ b/prebuilts/gradle/EmbeddedApp/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/EmbeddedApp/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/EmbeddedApp/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/EmbeddedApp/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/EmbeddedApp/NOTICE b/prebuilts/gradle/EmbeddedApp/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/EmbeddedApp/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/EmbeddedApp/README.md b/prebuilts/gradle/EmbeddedApp/README.md
new file mode 100644
index 0000000..020d611
--- /dev/null
+++ b/prebuilts/gradle/EmbeddedApp/README.md
@@ -0,0 +1,49 @@
+Android EmbeddedApp Sample
+===================================
+
+This simple app demonstrates how to embed a wearable app into a phone app.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-EmbeddedApp
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/EmbeddedApp/Wearable/build.gradle b/prebuilts/gradle/EmbeddedApp/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/EmbeddedApp/Wearable/build.gradle
+++ b/prebuilts/gradle/EmbeddedApp/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/EmbeddedApp/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/EmbeddedApp/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/EmbeddedApp/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/EmbeddedApp/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/FindMyPhone/.google/packaging.yaml b/prebuilts/gradle/FindMyPhone/.google/packaging.yaml
new file mode 100644
index 0000000..cfd2918
--- /dev/null
+++ b/prebuilts/gradle/FindMyPhone/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-FindMyPhone
+license: apache2
diff --git a/prebuilts/gradle/FindMyPhone/Application/build.gradle b/prebuilts/gradle/FindMyPhone/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/FindMyPhone/Application/build.gradle
+++ b/prebuilts/gradle/FindMyPhone/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/FindMyPhone/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/FindMyPhone/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/FindMyPhone/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/FindMyPhone/NOTICE b/prebuilts/gradle/FindMyPhone/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/FindMyPhone/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/FindMyPhone/README.md b/prebuilts/gradle/FindMyPhone/README.md
new file mode 100644
index 0000000..9726cf2
--- /dev/null
+++ b/prebuilts/gradle/FindMyPhone/README.md
@@ -0,0 +1,52 @@
+Android FindMyPhone Sample
+===================================
+
+This sample application notifies you when you may have left your phone behind
+(specifically, when your companion and wearable disconnect). If you have misplaced your phone, but
+it is still connected to your wearable, you can also start an activity on the wearable to sound an
+alarm on your phone.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-FindMyPhone
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/FindMyPhone/Wearable/build.gradle b/prebuilts/gradle/FindMyPhone/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/FindMyPhone/Wearable/build.gradle
+++ b/prebuilts/gradle/FindMyPhone/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/FindMyPhone/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/FindMyPhone/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/FindMyPhone/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/FindMyPhone/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Flashlight/.google/packaging.yaml b/prebuilts/gradle/Flashlight/.google/packaging.yaml
new file mode 100644
index 0000000..fd613ac
--- /dev/null
+++ b/prebuilts/gradle/Flashlight/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Flashlight
+license: apache2
diff --git a/prebuilts/gradle/Flashlight/Application/build.gradle b/prebuilts/gradle/Flashlight/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/Flashlight/Application/build.gradle
+++ b/prebuilts/gradle/Flashlight/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Flashlight/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Flashlight/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Flashlight/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Flashlight/NOTICE b/prebuilts/gradle/Flashlight/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Flashlight/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Flashlight/README.md b/prebuilts/gradle/Flashlight/README.md
new file mode 100644
index 0000000..ef3af8b
--- /dev/null
+++ b/prebuilts/gradle/Flashlight/README.md
@@ -0,0 +1,50 @@
+Android Flashlight Sample
+===================================
+
+Wearable activity that uses your wearable screen as a flashlight. There is also
+a party-mode option, if you want to make things interesting.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Flashlight
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/Flashlight/Wearable/build.gradle b/prebuilts/gradle/Flashlight/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/Flashlight/Wearable/build.gradle
+++ b/prebuilts/gradle/Flashlight/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/Flashlight/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Flashlight/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Flashlight/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Flashlight/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/.google/packaging.yaml b/prebuilts/gradle/FloatingActionButtonBasic/.google/packaging.yaml
new file mode 100644
index 0000000..ce7bd5b
--- /dev/null
+++ b/prebuilts/gradle/FloatingActionButtonBasic/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Getting Started, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-FloatingActionButtonBasic
+level:        BEGINNER
+icon:         screenshots/big_icon.png
+apiRefs:
+    - android:android.graphics.Outline
+    - android:android.view.ViewOutlineProvider
+    - android:android.widget.Checkable
+license: apache2
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/Application/build.gradle b/prebuilts/gradle/FloatingActionButtonBasic/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/FloatingActionButtonBasic/Application/build.gradle
+++ b/prebuilts/gradle/FloatingActionButtonBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/FloatingActionButtonBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/FloatingActionButtonBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/FloatingActionButtonBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/NOTICE b/prebuilts/gradle/FloatingActionButtonBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/FloatingActionButtonBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/README.md b/prebuilts/gradle/FloatingActionButtonBasic/README.md
new file mode 100644
index 0000000..02a7c92
--- /dev/null
+++ b/prebuilts/gradle/FloatingActionButtonBasic/README.md
@@ -0,0 +1,72 @@
+Android FloatingActionButtonBasic Sample
+===================================
+
+This sample shows the two sizes of Floating Action Buttons and
+how to interact with them.
+
+Introduction
+------------
+
+This sample shows how to implement a [Checkable][1] Floating Action Button.
+
+Floating action buttons are used for a special type of promoted action.
+They are distinguished by a circled icon floating above the UI and have
+special motion behaviors related to morphing, launching, and the transferring anchor point.
+
+Floating action buttons come in two sizes:
+the default, which should be used in most cases, and the mini,
+which should only be used to create visual continuity with other elements on the screen.
+
+Both sizes of Floating Action Buttons are displayed on screen.
+
+[1]: https://developer.android.com/reference/android/widget/Checkable.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/screenshot1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot2.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot3.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot4.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot5.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-FloatingActionButtonBasic
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/gradle/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/FloatingActionButtonBasic/gradle/gradle/wrapper/gradle-wrapper.properties
index 893a63e..12dab4c 100644
--- a/prebuilts/gradle/FloatingActionButtonBasic/gradle/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/FloatingActionButtonBasic/gradle/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=https\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/FloatingActionButtonBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/FloatingActionButtonBasic/gradle/wrapper/gradle-wrapper.properties
index fc0d638..a4c577a 100644
--- a/prebuilts/gradle/FloatingActionButtonBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/FloatingActionButtonBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/FragmentTransition/.google/packaging.yaml b/prebuilts/gradle/FragmentTransition/.google/packaging.yaml
new file mode 100644
index 0000000..5756d0a
--- /dev/null
+++ b/prebuilts/gradle/FragmentTransition/.google/packaging.yaml
@@ -0,0 +1,18 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Transition, UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-FragmentTransition
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.transition.TransitionManager
+    - android:android.transition.Transition
+    - android:android.transition.Scene
+license: apache2
diff --git a/prebuilts/gradle/FragmentTransition/Application/build.gradle b/prebuilts/gradle/FragmentTransition/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/FragmentTransition/Application/build.gradle
+++ b/prebuilts/gradle/FragmentTransition/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/FragmentTransition/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/FragmentTransition/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/FragmentTransition/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/FragmentTransition/NOTICE b/prebuilts/gradle/FragmentTransition/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/FragmentTransition/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/FragmentTransition/README.md b/prebuilts/gradle/FragmentTransition/README.md
index c39c327..44f12ed 100644
--- a/prebuilts/gradle/FragmentTransition/README.md
+++ b/prebuilts/gradle/FragmentTransition/README.md
@@ -1,15 +1,40 @@
 Android FragmentTransition Sample
-==============================
+===================================
 
-This sample demonstrates how to start a transition right after a fragment transaction.
+This sample demonstrates how to start a Transition after a Fragment Transaction.
+
+Introduction
+------------
+
+This sample uses [the Transition framework][1] to show a nice visual effect on
+Fragment Transaction.
+
+Animation for fragment _transaction_ can be customized by overriding
+[onCreateAnimation][2]. In this sample, we set up an AnimationListener
+for this Animation, and start our Transition on [onAnimationEnd][3].
+
+Transition is started by calling [TransitionManager.go][4]. We don't
+instantiate a Scene for the initial state of Transition, as we never
+go back. One thing we need to be careful here is that we need to
+populate the content of Views after starting the Transition.
+
+[1]: https://developer.android.com/reference/android/transition/package-summary.html
+[2]: http://developer.android.com/reference/android/support/v4/app/Fragment.html#onCreateAnimation(int, boolean, int)
+[3]: http://developer.android.com/reference/android/view/animation/Animation.AnimationListener.html#onAnimationEnd(android.view.animation.Animation)
+[4]: http://developer.android.com/reference/android/transition/TransitionManager.html#go(android.transition.Scene)
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/grid.png" height="400" alt="Screenshot"/> <img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -40,7 +65,7 @@
 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
+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
diff --git a/prebuilts/gradle/FragmentTransition/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/FragmentTransition/gradle/wrapper/gradle-wrapper.properties
index 00daa77..0c71e76 100644
--- a/prebuilts/gradle/FragmentTransition/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/FragmentTransition/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/FragmentTransition/screenshots/grid.png b/prebuilts/gradle/FragmentTransition/screenshots/grid.png
new file mode 100644
index 0000000..a974669
--- /dev/null
+++ b/prebuilts/gradle/FragmentTransition/screenshots/grid.png
Binary files differ
diff --git a/prebuilts/gradle/FragmentTransition/screenshots/icon-web.png b/prebuilts/gradle/FragmentTransition/screenshots/icon-web.png
new file mode 100755
index 0000000..b0d5dde
--- /dev/null
+++ b/prebuilts/gradle/FragmentTransition/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/FragmentTransition/screenshots/main.png b/prebuilts/gradle/FragmentTransition/screenshots/main.png
new file mode 100644
index 0000000..dbd5c22
--- /dev/null
+++ b/prebuilts/gradle/FragmentTransition/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/Geofencing/.google/packaging.yaml b/prebuilts/gradle/Geofencing/.google/packaging.yaml
new file mode 100644
index 0000000..7dcc6ea
--- /dev/null
+++ b/prebuilts/gradle/Geofencing/.google/packaging.yaml
@@ -0,0 +1,16 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable, Sensors]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Geofencing
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:com.google.android.gms.location.Geofence
+license: apache2
diff --git a/prebuilts/gradle/Geofencing/Application/build.gradle b/prebuilts/gradle/Geofencing/Application/build.gradle
index 80aa1d0..33ea7f7 100644
--- a/prebuilts/gradle/Geofencing/Application/build.gradle
+++ b/prebuilts/gradle/Geofencing/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,8 +13,9 @@
 
 dependencies {
 
+    compile "com.google.android.gms:play-services-location:6.5.+"
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +31,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Geofencing/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Geofencing/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Geofencing/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Geofencing/NOTICE b/prebuilts/gradle/Geofencing/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Geofencing/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Geofencing/README.md b/prebuilts/gradle/Geofencing/README.md
new file mode 100644
index 0000000..2eb3b08
--- /dev/null
+++ b/prebuilts/gradle/Geofencing/README.md
@@ -0,0 +1,83 @@
+Android Geofencing Sample
+===================================
+
+When the user enters the vicinity of the Android building (B44) or the Yerba Buena
+Gardens near the Moscone center in San Francisco, a notification silently appears on their
+wearable with an option to check in. This notification automatically disappears when they leave
+the area, and reappears the next time they are at one of these locations.
+
+Introduction
+------------
+
+Geofencing combines awareness of the user's current location with awareness of
+nearby features, defined as the user's proximity to locations that may be of
+interest. To mark a location of interest, you specify its latitude and longitude.
+To adjust the proximity for the location, you add a radius. The latitude,
+longitude, and radius define a geofence. You can have multiple active
+geofences at one time.
+
+To use geofencing, start by defining the geofences you want to monitor.
+Although you usually store geofence data in a local database or download
+it from the network, you need to send a geofence to Location Services as
+an instance of [Geofence][2], which you create with `Geofence.Builder`. Each
+Geofence object contains the following information:
+
+1. Latitude, longitude, and radius
+2. Expiration time
+3. Transition type
+4. Geofence ID
+
+Read more about geofences in [Creating and Monitoring Geofences][1].
+
+[1]:http://developer.android.com/training/location/geofencing.html
+[2]:http://developer.android.com/reference/com/google/android/gms/location/Geofence.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/android_building_check_in.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Geofencing
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/Geofencing/Wearable/build.gradle b/prebuilts/gradle/Geofencing/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/Geofencing/Wearable/build.gradle
+++ b/prebuilts/gradle/Geofencing/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/Geofencing/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Geofencing/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Geofencing/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Geofencing/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Geofencing/screenshots/icon-web.png b/prebuilts/gradle/Geofencing/screenshots/icon-web.png
new file mode 100644
index 0000000..81c1008
--- /dev/null
+++ b/prebuilts/gradle/Geofencing/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/GridViewPager/.google/packaging.yaml b/prebuilts/gradle/GridViewPager/.google/packaging.yaml
new file mode 100644
index 0000000..3c0c5e3
--- /dev/null
+++ b/prebuilts/gradle/GridViewPager/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-GridViewPager
+license: apache2
diff --git a/prebuilts/gradle/GridViewPager/Application/build.gradle b/prebuilts/gradle/GridViewPager/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/GridViewPager/Application/build.gradle
+++ b/prebuilts/gradle/GridViewPager/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/GridViewPager/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/GridViewPager/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/GridViewPager/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/GridViewPager/NOTICE b/prebuilts/gradle/GridViewPager/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/GridViewPager/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/GridViewPager/README.md b/prebuilts/gradle/GridViewPager/README.md
new file mode 100644
index 0000000..8fe8038
--- /dev/null
+++ b/prebuilts/gradle/GridViewPager/README.md
@@ -0,0 +1,49 @@
+Android GridViewPager Sample
+===================================
+
+Demonstrates how to implement a GridViewPager in your wearable app.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-GridViewPager
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/GridViewPager/Wearable/build.gradle b/prebuilts/gradle/GridViewPager/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/GridViewPager/Wearable/build.gradle
+++ b/prebuilts/gradle/GridViewPager/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/GridViewPager/Wearable/src/main/res/layout/activity_main.xml b/prebuilts/gradle/GridViewPager/Wearable/src/main/res/layout/activity_main.xml
index 8da1474..8c077ab 100644
--- a/prebuilts/gradle/GridViewPager/Wearable/src/main/res/layout/activity_main.xml
+++ b/prebuilts/gradle/GridViewPager/Wearable/src/main/res/layout/activity_main.xml
@@ -14,7 +14,6 @@
      limitations under the License.
 -->
 <FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
-    xmlns:app="http://schemas.android.com/apk/res/com.example.android.wearable.gridviewpager"
     android:layout_width="match_parent"
     android:layout_height="match_parent" >
 
diff --git a/prebuilts/gradle/GridViewPager/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/GridViewPager/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/GridViewPager/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/GridViewPager/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/HdrViewfinder/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/HdrViewfinder/.google/packaging.yaml
index 13cd2e9..e3712a0 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/HdrViewfinder/.google/packaging.yaml
@@ -3,13 +3,10 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
 categories:   [Media]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
-level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+github:       android-HdrViewfinder
+license: apache2
diff --git a/prebuilts/gradle/HdrViewfinder/Application/build.gradle b/prebuilts/gradle/HdrViewfinder/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/HdrViewfinder/Application/build.gradle
+++ b/prebuilts/gradle/HdrViewfinder/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/HdrViewfinder/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/HdrViewfinder/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/HdrViewfinder/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/HdrViewfinder/NOTICE b/prebuilts/gradle/HdrViewfinder/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/HdrViewfinder/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/HdrViewfinder/README.md b/prebuilts/gradle/HdrViewfinder/README.md
index 46adfbb..380ae0a 100644
--- a/prebuilts/gradle/HdrViewfinder/README.md
+++ b/prebuilts/gradle/HdrViewfinder/README.md
@@ -1,41 +1,15 @@
 Android HdrViewfinder Sample
-==============================
+===================================
 
-This demo shows how to use Camera2 API and RenderScript to implement an HDR viewfinder.
-
-Introduction
-------------
-
-This demo implements a real-time high-dynamic-range camera viewfinder, by alternating the sensor's
-exposure time between two exposure values on even and odd frames, and then compositing together the
-latest two frames whenever a new frame is captured.
-
-The demo has three modes: Regular auto-exposure viewfinder, split-screen manual exposure, and the
-fused HDR viewfinder.  The latter two use manual exposure controlled by the user, by swiping up/down
-on the right and left halves of the viewfinder.  The left half controls the exposure time of even
-frames, and the right half controls the exposure time of odd frames.
-
-In split-screen mode, the even frames are shown on the left and the odd frames on the right, so the
-user can see two different exposures of the scene simultaneously.  In fused HDR mode, the even/odd
-frames are merged together into a single image.  By selecting different exposure values for the
-even/odd frames, the fused image has a higher dynamic range than the regular viewfinder.
-
-The HDR fusion and the split-screen viewfinder processing is done with RenderScript; as is the
-necessary YUV->RGB conversion. The camera subsystem outputs YUV images naturally, while the GPU and
-display subsystems generally only accept RGB data.  Therefore, after the images are
-fused/composited, a standard YUV->RGB color transform is applied before the the data is written to
-the output Allocation. The HDR fusion algorithm is very simple, and tends to result in
-lower-contrast scenes, but has very few artifacts and can run very fast.
-
-Data is passed between the subsystems (camera, RenderScript, and display) using the Android {@link
-android.view.Surface} class, which allows for zero-copy transport of large buffers between processes
-and subsystems.
+This demo implements a real-time high-dynamic-range camera viewfinder, by alternating
+the sensor's exposure time between two exposure values on even and odd frames, and then
+compositing together the latest two frames whenever a new frame is captured.
 
 Pre-requisites
 --------------
 
 - Android SDK v21
-- Android Build Tools v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -44,11 +18,6 @@
 This sample uses the Gradle build system. To build this project, use the
 "gradlew build" command or use "Import Project" in Android Studio.
 
-Screenshots
------------
-
-![Split mode](screenshots/image1.png)
-
 Support
 -------
 
@@ -73,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/HdrViewfinder/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/HdrViewfinder/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/HdrViewfinder/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/HdrViewfinder/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/HorizontalPaging/.google/packaging.yaml b/prebuilts/gradle/HorizontalPaging/.google/packaging.yaml
new file mode 100644
index 0000000..7f87e59
--- /dev/null
+++ b/prebuilts/gradle/HorizontalPaging/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       DEPRECATED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-HorizontalPaging
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.support.v4.view.ViewPager
+    - android:android.support.v4.app.FragmentPagerAdapter
+license: apache2
diff --git a/prebuilts/gradle/HorizontalPaging/Application/build.gradle b/prebuilts/gradle/HorizontalPaging/Application/build.gradle
index 4713f6b..4a839f4 100644
--- a/prebuilts/gradle/HorizontalPaging/Application/build.gradle
+++ b/prebuilts/gradle/HorizontalPaging/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 11
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/HorizontalPaging/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/HorizontalPaging/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/HorizontalPaging/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/HorizontalPaging/NOTICE b/prebuilts/gradle/HorizontalPaging/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/HorizontalPaging/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/HorizontalPaging/README.md b/prebuilts/gradle/HorizontalPaging/README.md
index 4a51eb5..37bc600 100644
--- a/prebuilts/gradle/HorizontalPaging/README.md
+++ b/prebuilts/gradle/HorizontalPaging/README.md
@@ -1,16 +1,43 @@
 Android HorizontalPaging Sample
-==============================
+===================================
 
-This sample demonstrates how to implement horizontal paging between fragments in
-applications that use ActionBar, using a ViewPager widget.
+This sample shows how to implement tabs, using Fragments and a ViewPager.
+
+Introduction
+------------
+
+This sample implements tabs using the deprecated [ActionBar.TabListener][1]. It uses [ViewPager][2] and
+[FragmentPagerAdapter][3] to handle swiping between tabs and displaying the selected tab content.
+
+
+1. Create an Activity that extends [FragmentActivity][4], with a [ViewPager][2] for its layout.
+2. Implement [ActionBar.TabListener][1] interface.
+3. Create a class that extends [FragmentPagerAdapter][3] and override its `getItem(int position)`,
+`getCount()` and `getPageTitle(int position)` methods.
+4. In the `onCreate(Bundle savedInstanceState)` method of your activity, set navigation mode to tabs for the
+ActionBar using `setNavigationMode(ActionBar.NAVIGATION_MODE_TABS)`. Note: This is DEPRECATED as of Android
+Lollipop.
+5. Set your custom [FragmentPagerAdapter][3] on your [ViewPager][2].
+6. Implement `setOnPageChangeListener(new ViewPager.SimpleOnPageChangeListener())` on your [ViewPager][2] to
+know the selected tab, so you can update your ActionBar with `setSelectedNavigationItem(position)`.
+
+[1]: http://developer.android.com/reference/android/support/v7/app/ActionBar.TabListener.html
+[2]: http://developer.android.com/reference/android/support/v4/view/ViewPager.html
+[3]: http://developer.android.com/reference/android/support/v4/app/FragmentPagerAdapter.html
+[4]: http://developer.android.com/reference/android/support/v4/app/FragmentActivity.html
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-tab1.png" height="400" alt="Screenshot"/> <img src="screenshots/2-tab2.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +68,7 @@
 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
+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
diff --git a/prebuilts/gradle/HorizontalPaging/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/HorizontalPaging/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/HorizontalPaging/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/HorizontalPaging/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/ImmersiveMode/.google/packaging.yaml b/prebuilts/gradle/ImmersiveMode/.google/packaging.yaml
new file mode 100644
index 0000000..bfa9aba
--- /dev/null
+++ b/prebuilts/gradle/ImmersiveMode/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-ImmersiveMode
+license: apache2
diff --git a/prebuilts/gradle/ImmersiveMode/Application/build.gradle b/prebuilts/gradle/ImmersiveMode/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/ImmersiveMode/Application/build.gradle
+++ b/prebuilts/gradle/ImmersiveMode/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/ImmersiveMode/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/ImmersiveMode/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/ImmersiveMode/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/ImmersiveMode/NOTICE b/prebuilts/gradle/ImmersiveMode/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/ImmersiveMode/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/ImmersiveMode/README.md b/prebuilts/gradle/ImmersiveMode/README.md
index 2dad098..6d5861b 100644
--- a/prebuilts/gradle/ImmersiveMode/README.md
+++ b/prebuilts/gradle/ImmersiveMode/README.md
@@ -1,5 +1,5 @@
 Android ImmersiveMode Sample
-==============================
+===================================
 
 One of the features introduced in KitKat is "immersive mode". Immersive mode gives the
 user the ability to show/hide the status bar and navigation bar with a swipe.To try,
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/ImmersiveMode/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/ImmersiveMode/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/ImmersiveMode/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/ImmersiveMode/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Interpolator/.google/packaging.yaml b/prebuilts/gradle/Interpolator/.google/packaging.yaml
new file mode 100644
index 0000000..a358450
--- /dev/null
+++ b/prebuilts/gradle/Interpolator/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Interpolator
+license: apache2
diff --git a/prebuilts/gradle/Interpolator/Application/build.gradle b/prebuilts/gradle/Interpolator/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/Interpolator/Application/build.gradle
+++ b/prebuilts/gradle/Interpolator/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Interpolator/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Interpolator/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Interpolator/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Interpolator/NOTICE b/prebuilts/gradle/Interpolator/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Interpolator/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Interpolator/README.md b/prebuilts/gradle/Interpolator/README.md
index faf9086..3859932 100644
--- a/prebuilts/gradle/Interpolator/README.md
+++ b/prebuilts/gradle/Interpolator/README.md
@@ -1,5 +1,5 @@
 Android Interpolator Sample
-==============================
+===================================
 
 This sample demonstrates the use of animation interpolators and path animations for
 Material Design. It shows how an ObjectAnimator is used to animate two properties of a
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/Interpolator/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Interpolator/gradle/wrapper/gradle-wrapper.properties
index 56f685a..0c71e76 100644
--- a/prebuilts/gradle/Interpolator/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Interpolator/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/JobScheduler/.google/packaging.yaml b/prebuilts/gradle/JobScheduler/.google/packaging.yaml
new file mode 100644
index 0000000..2b79eb8
--- /dev/null
+++ b/prebuilts/gradle/JobScheduler/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Background]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-JobScheduler
+license: apache2
diff --git a/prebuilts/gradle/JobScheduler/Application/build.gradle b/prebuilts/gradle/JobScheduler/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/JobScheduler/Application/build.gradle
+++ b/prebuilts/gradle/JobScheduler/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/JobScheduler/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/JobScheduler/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/JobScheduler/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/JobScheduler/NOTICE b/prebuilts/gradle/JobScheduler/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/JobScheduler/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/JobScheduler/README.md b/prebuilts/gradle/JobScheduler/README.md
index 6b285a9..b80c968 100644
--- a/prebuilts/gradle/JobScheduler/README.md
+++ b/prebuilts/gradle/JobScheduler/README.md
@@ -1,5 +1,5 @@
 Android JobScheduler Sample
-==============================
+===================================
 
 Demonstration of the JobScheduler API, which provides an interface for scheduling
 background tasks when certain tasks apply.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/JobScheduler/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/JobScheduler/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/JobScheduler/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/JobScheduler/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/JumpingJack/.google/packaging.yaml b/prebuilts/gradle/JumpingJack/.google/packaging.yaml
new file mode 100644
index 0000000..618c275
--- /dev/null
+++ b/prebuilts/gradle/JumpingJack/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-JumpingJack
+license: apache2
diff --git a/prebuilts/gradle/JumpingJack/Application/build.gradle b/prebuilts/gradle/JumpingJack/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/JumpingJack/Application/build.gradle
+++ b/prebuilts/gradle/JumpingJack/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/JumpingJack/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/JumpingJack/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/JumpingJack/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/JumpingJack/NOTICE b/prebuilts/gradle/JumpingJack/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/JumpingJack/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/JumpingJack/README.md b/prebuilts/gradle/JumpingJack/README.md
new file mode 100644
index 0000000..d87e86f
--- /dev/null
+++ b/prebuilts/gradle/JumpingJack/README.md
@@ -0,0 +1,49 @@
+Android JumpingJack Sample
+===================================
+
+Uses the Gravity sensor to count how many jumping jacks you have performed.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-JumpingJack
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/JumpingJack/Wearable/build.gradle b/prebuilts/gradle/JumpingJack/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/JumpingJack/Wearable/build.gradle
+++ b/prebuilts/gradle/JumpingJack/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/JumpingJack/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/JumpingJack/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/JumpingJack/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/JumpingJack/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/LNotifications/.google/packaging.yaml b/prebuilts/gradle/LNotifications/.google/packaging.yaml
new file mode 100644
index 0000000..3e5b7b6
--- /dev/null
+++ b/prebuilts/gradle/LNotifications/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Notification]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-LNotifications Sample
+license: apache2
diff --git a/prebuilts/gradle/LNotifications/Application/build.gradle b/prebuilts/gradle/LNotifications/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/LNotifications/Application/build.gradle
+++ b/prebuilts/gradle/LNotifications/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/LNotifications/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/LNotifications/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/LNotifications/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/LNotifications/NOTICE b/prebuilts/gradle/LNotifications/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/LNotifications/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/LNotifications/README.md b/prebuilts/gradle/LNotifications/README.md
index 56f330b..3b2333c 100644
--- a/prebuilts/gradle/LNotifications/README.md
+++ b/prebuilts/gradle/LNotifications/README.md
@@ -1,5 +1,5 @@
-Android RecyclerView Sample
-===========================
+Android LNotifications Sample Sample
+===================================
 
 This sample demonstrates how new features for notifications introduced in Android L
 are used such as Heads-Up notifications, visibility, people, category and priority
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -25,7 +25,7 @@
 - Stack Overflow: http://stackoverflow.com/questions/tagged/android
 
 If you've found an error in this sample, please file an issue:
-https://github.com/googlesamples/android-BasicAndroidKeyStore
+https://github.com/googlesamples/android-LNotifications Sample
 
 Patches are encouraged, and may be submitted by forking this project and
 submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
@@ -42,8 +42,8 @@
 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
-  
+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
diff --git a/prebuilts/gradle/LNotifications/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/LNotifications/gradle/wrapper/gradle-wrapper.properties
index fbe0ffd..9f9f676 100644
--- a/prebuilts/gradle/LNotifications/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/LNotifications/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/MediaBrowserService/.google/packaging.yaml
similarity index 62%
rename from prebuilts/gradle/MediaRecorder/packaging.yaml
rename to prebuilts/gradle/MediaBrowserService/.google/packaging.yaml
index 13cd2e9..a126b51 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/MediaBrowserService/.google/packaging.yaml
@@ -3,13 +3,10 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
 categories:   [Media]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
-level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+github:       android-MediaBrowserService
+license: apache2
diff --git a/prebuilts/gradle/MediaBrowserService/Application/build.gradle b/prebuilts/gradle/MediaBrowserService/Application/build.gradle
index e57466f..5c5b4ae 100644
--- a/prebuilts/gradle/MediaBrowserService/Application/build.gradle
+++ b/prebuilts/gradle/MediaBrowserService/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -29,7 +29,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/MediaBrowserService/Application/src/main/java/com/example/android/mediabrowserservice/PackageValidator.java b/prebuilts/gradle/MediaBrowserService/Application/src/main/java/com/example/android/mediabrowserservice/PackageValidator.java
index fec360f..090b6a4 100644
--- a/prebuilts/gradle/MediaBrowserService/Application/src/main/java/com/example/android/mediabrowserservice/PackageValidator.java
+++ b/prebuilts/gradle/MediaBrowserService/Application/src/main/java/com/example/android/mediabrowserservice/PackageValidator.java
@@ -159,7 +159,14 @@
      */
     public static boolean isCallerAllowed(Context context, String callingPackage, int callingUid) {
         // Always allow calls from the framework or development environment.
-        if (Process.SYSTEM_UID == callingUid || !"user".equals(Build.TYPE)) {
+        if (Process.SYSTEM_UID == callingUid || Process.myUid() == callingUid) {
+            return true;
+        }
+        if (BuildConfig.DEBUG) {
+            // When your app is built in debug mode, any app is allowed to connect to it and browse
+            // its media library. If you want to test the behavior of your app when it gets
+            // released, either build a release version or remove this clause.
+            Log.i(TAG, "Allowing caller '"+callingPackage+" because app was built in debug mode.");
             return true;
         }
         PackageInfo packageInfo;
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/MediaBrowserService/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/MediaBrowserService/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/MediaBrowserService/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/MediaBrowserService/NOTICE b/prebuilts/gradle/MediaBrowserService/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/MediaBrowserService/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/MediaBrowserService/README.md b/prebuilts/gradle/MediaBrowserService/README.md
index bda9824..0072d93 100644
--- a/prebuilts/gradle/MediaBrowserService/README.md
+++ b/prebuilts/gradle/MediaBrowserService/README.md
@@ -1,12 +1,5 @@
 Android MediaBrowserService Sample
-==============================
-
-This sample shows how to implement an audio media app that provides
-media library metadata and playback controls through a standard
-service. This sample is compatible with Android Auto.
-
-Introduction
-------------
+===================================
 
 This sample shows how to implement an audio media app that provides
 media library metadata and playback controls through a standard
@@ -19,64 +12,12 @@
 to the Android Auto UI in the same manner as it provides them to the
 local UI.
 
-To implement a MediaBrowserService, you need to:
-
-- extend android.service.media.MediaBrowserService, implementing the media
-  browsing related methods onGetRoot and onLoadChildren;
-
-- in onCreate, start a new MediaSession and call super.setSessionToken() with
-  this MediaSession's token;
-
-- set a MediaSession.Callback class on the MediaSession. The callback class
-  will receive all the user's actions, like play, pause, etc;
-
-- handle all the actual music playing using any method your app prefers
-  (for example, the Android MediaPlayer class)
-
-- whenever it changes, update info about the playing item and the playing
-  queue using MediaSession corresponding methods (setMetadata,
-  setPlaybackState, setQueue, setQueueTitle, etc)
-
-- handle AudioManager focus change events and react appropriately
-  (e.g. pause when audio focus is lost)
-
-
-To make it compatible with Android Auto, you also need to:
-
-- declare a meta-data tag in AndroidManifest.xml linking to a xml resource
-  with a automotiveApp root element. For a media app, this must include
-  an &lt;uses name="media"/&gt; element as a child.
-
-  For example, in AndroidManifest.xml:
-```
-     <meta-data android:name="com.google.android.gms.car.application"
-       android:resource="@xml/automotive_app_desc"/>
-```
-
-  And in res/xml/automotive\_app\_desc.xml:
-```
-      <?xml version="1.0" encoding="utf-8"?>
-      <automotiveApp>
-          <uses name="media"/>
-      </automotiveApp>
-```
-
-- declare and export the service in AndroidManifest.xml:
-```
-    <service
-        android:name=".service.MusicService"
-        android:exported="true">
-      <intent-filter>
-         <action android:name="android.media.browse.MediaBrowserService" />
-      </intent-filter>
-    </service>
-```
-
-
 Pre-requisites
 --------------
 
 - Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
 
 Getting Started
 ---------------
@@ -108,7 +49,7 @@
 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
+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
diff --git a/prebuilts/gradle/MediaBrowserService/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/MediaBrowserService/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/MediaBrowserService/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/MediaBrowserService/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaEffects/.google/packaging.yaml b/prebuilts/gradle/MediaEffects/.google/packaging.yaml
new file mode 100644
index 0000000..964a8f7
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/.google/packaging.yaml
@@ -0,0 +1,19 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Media, OpenGL]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-MediaEffects
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.media.effect.Effect
+    - android:android.media.effect.EffectContext
+    - android:android.media.effect.EffectFactory
+    - android:android.opengl.GLSurfaceView
+license: apache2
diff --git a/prebuilts/gradle/MediaEffects/Application/build.gradle b/prebuilts/gradle/MediaEffects/Application/build.gradle
index 98488a4..7207697 100644
--- a/prebuilts/gradle/MediaEffects/Application/build.gradle
+++ b/prebuilts/gradle/MediaEffects/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 14
diff --git a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-hdpi/ic_launcher.png b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-hdpi/ic_launcher.png
index 960dc8e..950d67b 100644
--- a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-hdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-mdpi/ic_launcher.png b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-mdpi/ic_launcher.png
index 9356f26..cf01e9a 100644
--- a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-mdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xhdpi/ic_launcher.png b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xhdpi/ic_launcher.png
index 230d558..b66c0fd 100644
--- a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xhdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xxhdpi/ic_launcher.png b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
index c825d4e..1e0344e 100644
--- a/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaEffects/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/CONTRIB.md b/prebuilts/gradle/MediaEffects/CONTRIB.md
deleted file mode 100644
index 14a4fcf..0000000
--- a/prebuilts/gradle/MediaEffects/CONTRIB.md
+++ /dev/null
@@ -1,35 +0,0 @@
-# How to become a contributor and submit your own code
-
-## Contributor License Agreements
-
-We'd love to accept your sample apps and patches! Before we can take them, we
-have to jump a couple of legal hurdles.
-
-Please fill out either the individual or corporate Contributor License Agreement (CLA).
-
-  * If you are an individual writing original source code and you're sure you
-    own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
-  * If you work for a company that wants to allow you to contribute your work,
-    then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
-
-Follow either of the two links above to access the appropriate CLA and
-instructions for how to sign and return it. Once we receive it, we'll be able to
-accept your pull requests.
-
-## Contributing A Patch
-
-1. Submit an issue describing your proposed change to the repo in question.
-1. The repo owner will respond to your issue promptly.
-1. If your proposed change is accepted, and you haven't already done so, sign a
-   Contributor License Agreement (see details above).
-1. Fork the desired repo, develop and test your code changes.
-1. Ensure that your code adheres to the existing style in the sample to which
-   you are contributing. Refer to the
-   [Android Code Style Guide]
-   (https://source.android.com/source/code-style.html) for the
-   recommended coding standards for this organization.
-1. Ensure that your code has an appropriate set of unit tests which all pass.
-1. Submit a pull request.
-
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/MediaEffects/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/MediaEffects/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/MediaEffects/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/MediaEffects/NOTICE b/prebuilts/gradle/MediaEffects/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/MediaEffects/README.md b/prebuilts/gradle/MediaEffects/README.md
new file mode 100644
index 0000000..9df3967
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/README.md
@@ -0,0 +1,68 @@
+Android MediaEffects Sample
+===================================
+
+This sample shows how to use the Media Effects APIs that were
+introduced in Android 4.0.
+
+Introduction
+------------
+
+The [Media Effects APIs][1] lets you apply effects to image frames
+represented as OpenGL ES 2.0 textures.  Image frames can be images
+loaded from disk, frames from the device's camera, or other video
+streams.
+
+For a list of available effects, refer to [EffectsFactory][2].
+
+[1]: http://developer.android.com/reference/android/media/effect/package-summary.html
+[2]: http://developer.android.com/reference/android/media/effect/EffectFactory.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/menu.png" height="400" alt="Screenshot"/> <img src="screenshots/duotone.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-MediaEffects
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/MediaEffects/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/MediaEffects/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/MediaEffects/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/MediaEffects/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaEffects/screenshots/duotone.png b/prebuilts/gradle/MediaEffects/screenshots/duotone.png
new file mode 100644
index 0000000..331c1a1
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/screenshots/duotone.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/screenshots/icon-web.png b/prebuilts/gradle/MediaEffects/screenshots/icon-web.png
new file mode 100644
index 0000000..e04452c
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/MediaEffects/screenshots/menu.png b/prebuilts/gradle/MediaEffects/screenshots/menu.png
new file mode 100644
index 0000000..851cda5
--- /dev/null
+++ b/prebuilts/gradle/MediaEffects/screenshots/menu.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/.google/packaging.yaml b/prebuilts/gradle/MediaRecorder/.google/packaging.yaml
new file mode 100644
index 0000000..55245f2
--- /dev/null
+++ b/prebuilts/gradle/MediaRecorder/.google/packaging.yaml
@@ -0,0 +1,19 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Media]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-MediaRecorder
+level:        ADVANCED
+icon:         screenshots/big_icon.png
+apiRefs:
+    - android:android.hardware.Camera
+    - android:android.media.CamcorderProfile
+    - android:android.media.MediaRecorder
+    - android:android.view.TextureView
+license: apache2
diff --git a/prebuilts/gradle/MediaRecorder/Application/build.gradle b/prebuilts/gradle/MediaRecorder/Application/build.gradle
index 98488a4..7207697 100644
--- a/prebuilts/gradle/MediaRecorder/Application/build.gradle
+++ b/prebuilts/gradle/MediaRecorder/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 14
diff --git a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-hdpi/ic_launcher.png b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-hdpi/ic_launcher.png
index 13cd1e8..bea32bc 100644
--- a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-hdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-hdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-mdpi/ic_launcher.png b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-mdpi/ic_launcher.png
index 00b2bd9..2a3a490 100644
--- a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-mdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-mdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xhdpi/ic_launcher.png b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xhdpi/ic_launcher.png
index 953f1cc..9674428 100644
--- a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xhdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xxhdpi/ic_launcher.png b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
index f2ccb10..61e322c 100644
--- a/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
+++ b/prebuilts/gradle/MediaRecorder/Application/src/main/res/drawable-xxhdpi/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/MediaRecorder/Application/src/main/res/values/base-strings.xml
index 3e2b6ba..91a0b44 100644
--- a/prebuilts/gradle/MediaRecorder/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/MediaRecorder/Application/src/main/res/values/base-strings.xml
@@ -19,11 +19,11 @@
     <string name="intro_message">
         <![CDATA[
         
-            
-            This sample uses the camera/camcorder as the A/V source for the MediaRecorder API.
-            A TextureView is used as the camera preview which limits the code to API 14+. This
-            can be easily replaced with a SurfaceView to run on older devices.
-            
+
+This sample uses the camera/camcorder as the A/V source for the MediaRecorder API.
+A TextureView is used as the camera preview which limits the code to API 14+. This
+can be easily replaced with a SurfaceView to run on older devices.
+
         
         ]]>
     </string>
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/MediaRecorder/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/MediaRecorder/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/MediaRecorder/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/MediaRecorder/NOTICE b/prebuilts/gradle/MediaRecorder/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/MediaRecorder/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/MediaRecorder/README.md b/prebuilts/gradle/MediaRecorder/README.md
index 46fb1d4..14f4355 100644
--- a/prebuilts/gradle/MediaRecorder/README.md
+++ b/prebuilts/gradle/MediaRecorder/README.md
@@ -1,17 +1,38 @@
 Android MediaRecorder Sample
-==============================
+===================================
 
 This sample uses the camera/camcorder as the A/V source for the MediaRecorder API.
 A TextureView is used as the camera preview which limits the code to API 14+. This
 can be easily replaced with a SurfaceView to run on older devices.
 
+Introduction
+------------
+
+This sample shows how to use the [MediaRecorder][1] API.
+It uses the [Camera][2] as input source and displays a preview on a [TextureView][3]
+The sample features a button to capture the input and stop capturing afterwards.
+
+It demonstrates how to correctly gain control and release the camera.
+The sample also shows how to save the captured audio and video to persistant storage
+and basic error handling.
+
+
+[1]: https://developer.android.com/reference/android/media/MediaRecorder.html
+[2]: https://developer.android.com/reference/android/graphics/Camera.html
+[3]: https://developer.android.com/reference/android/view/TextureView.html
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/screenshot1.png" height="400" alt="Screenshot"/> <img src="screenshots/screenshot2.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -42,7 +63,7 @@
 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
+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
diff --git a/prebuilts/gradle/MediaRecorder/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/MediaRecorder/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/MediaRecorder/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/MediaRecorder/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MediaRecorder/screenshots/big_icon.png b/prebuilts/gradle/MediaRecorder/screenshots/big_icon.png
new file mode 100644
index 0000000..99bd10c
--- /dev/null
+++ b/prebuilts/gradle/MediaRecorder/screenshots/big_icon.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/screenshots/screnshot1.png b/prebuilts/gradle/MediaRecorder/screenshots/screnshot1.png
new file mode 100644
index 0000000..888c042
--- /dev/null
+++ b/prebuilts/gradle/MediaRecorder/screenshots/screnshot1.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/screenshots/screnshot2.png b/prebuilts/gradle/MediaRecorder/screenshots/screnshot2.png
new file mode 100644
index 0000000..3ae570e
--- /dev/null
+++ b/prebuilts/gradle/MediaRecorder/screenshots/screnshot2.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/MediaRouter/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/MediaRouter/.google/packaging.yaml
index 13cd2e9..8413546 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/MediaRouter/.google/packaging.yaml
@@ -3,13 +3,10 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
 categories:   [Media]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
-level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+github:       android-MediaRouter
+license: apache2
diff --git a/prebuilts/gradle/MediaRouter/Application/build.gradle b/prebuilts/gradle/MediaRouter/Application/build.gradle
index 3267a85..aeaef5a 100644
--- a/prebuilts/gradle/MediaRouter/Application/build.gradle
+++ b/prebuilts/gradle/MediaRouter/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -35,7 +35,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 13
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/MediaRouter/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/MediaRouter/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/MediaRouter/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/MediaRouter/NOTICE b/prebuilts/gradle/MediaRouter/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/MediaRouter/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/MediaRouter/README.md b/prebuilts/gradle/MediaRouter/README.md
index 3ccbdeb..149ddb7 100644
--- a/prebuilts/gradle/MediaRouter/README.md
+++ b/prebuilts/gradle/MediaRouter/README.md
@@ -1,13 +1,13 @@
 Android MediaRouter Sample
-==============================
+===================================
 
 Demonstrates how to create a custom media route provider.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -40,7 +40,7 @@
 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
+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
diff --git a/prebuilts/gradle/MediaRouter/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/MediaRouter/gradle/wrapper/gradle-wrapper.properties
index 1e61d1f..0c71e76 100644
--- a/prebuilts/gradle/MediaRouter/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/MediaRouter/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MessagingService/.google/packaging.yaml b/prebuilts/gradle/MessagingService/.google/packaging.yaml
new file mode 100644
index 0000000..cf7dad0
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/.google/packaging.yaml
@@ -0,0 +1,19 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, Notification]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-MessagingService
+level:        ADVANCED
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.app.Service
+    - android:android.content.Intent
+    - android:android.support.v4.app.NotificationCompat
+    - android:android.support.v4.app.NotificationCompat.CarExtender
+license: apache2
diff --git a/prebuilts/gradle/MessagingService/Application/build.gradle b/prebuilts/gradle/MessagingService/Application/build.gradle
index e57466f..5c5b4ae 100644
--- a/prebuilts/gradle/MessagingService/Application/build.gradle
+++ b/prebuilts/gradle/MessagingService/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -29,7 +29,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/MessagingService/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/MessagingService/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/MessagingService/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/MessagingService/NOTICE b/prebuilts/gradle/MessagingService/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/MessagingService/README.md b/prebuilts/gradle/MessagingService/README.md
index 69e3aa3..bc7a365 100644
--- a/prebuilts/gradle/MessagingService/README.md
+++ b/prebuilts/gradle/MessagingService/README.md
@@ -1,52 +1,37 @@
 Android MessagingService Sample
-==============================
+===================================
 
 This sample shows a simple service that sends notifications using
 NotificationCompat. In addition to sending a notification, it also extends
 the notification with a CarExtender to make it compatible with Android Auto.
 Each unread conversation from a user is sent as a distinct notification.
 
-Checklist while building a messaging app that supports Android Auto:
--------------------------------------------------------------------
-1. Ensure that Message notifications are extended using
-NotificationCompat.Builder.extend(new CarExtender()...)
-2. Declare a meta-data tag to your AndroidManifest.xml to specify that your app
-is automotive enabled.
+Introduction
+------------
 
-example: AndroidManifest.xml
+This sample shows a simple service that sends [notifications][1] using
+NotificationCompat.
 
-```
-       <meta-data android:name="com.google.android.gms.car.application"
-                   android:resource="@xml/automotive_app_desc"/>
-```
+In addition to sending a notification, it also extends
+the notification with a [CarExtender][2] to make it compatible with Android Auto.
 
-Include the following to indicate that the application wants to show notifications on
-the Android Auto overview screen.
+Each unread conversation from a user is sent as a distinct notification.
 
-res/xml/automotive\_app\_desc.xml
-```
-<automotiveApp>
-    <uses name="notification"/>
-</automotiveApp>
-```
-
-Flow
------
-MessagingFragment is shown to the user. Depending on the button clicked, the MessagingService is
-sent a message. MessagingService in turn creates notifications which can be viewed either on the
-device or in the messaging-simulator.
-When a message is read, the associated PendingIntent is called and MessageReadReceiver is called
-with the appropriate conversationId. Similarly, when a reply is received, the MessageReplyReceiver
-is called with the appropriate conversationId. MessageLogger logs each event and shows them in a
-TextView in MessagingFragment for correlation.
-
+[1]: https://developer.android.com/guide/topics/ui/notifiers/notifications.html
+[2]: https://developer.android.com/reference/android/support/v4/app/NotificationCompat.CarExtender.html
 
 Pre-requisites
 --------------
 
 - Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-main.png" height="400" alt="Screenshot"/> <img src="screenshots/2-onemessage.png" height="400" alt="Screenshot"/> <img src="screenshots/3-threemessages.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -77,7 +62,7 @@
 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
+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
diff --git a/prebuilts/gradle/MessagingService/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/MessagingService/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/MessagingService/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/MessagingService/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/MessagingService/screenshots/1-main.png b/prebuilts/gradle/MessagingService/screenshots/1-main.png
new file mode 100644
index 0000000..a3e527c
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/screenshots/1-main.png
Binary files differ
diff --git a/prebuilts/gradle/MessagingService/screenshots/2-onemessage.png b/prebuilts/gradle/MessagingService/screenshots/2-onemessage.png
new file mode 100644
index 0000000..5970c51
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/screenshots/2-onemessage.png
Binary files differ
diff --git a/prebuilts/gradle/MessagingService/screenshots/2-threemessages.png b/prebuilts/gradle/MessagingService/screenshots/2-threemessages.png
new file mode 100644
index 0000000..9d36923
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/screenshots/2-threemessages.png
Binary files differ
diff --git a/prebuilts/gradle/MessagingService/screenshots/icon-web.png b/prebuilts/gradle/MessagingService/screenshots/icon-web.png
new file mode 100644
index 0000000..2476cbd
--- /dev/null
+++ b/prebuilts/gradle/MessagingService/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/NavigationDrawer/.google/packaging.yaml b/prebuilts/gradle/NavigationDrawer/.google/packaging.yaml
new file mode 100644
index 0000000..deee342
--- /dev/null
+++ b/prebuilts/gradle/NavigationDrawer/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Navigation Drawer
+license: apache2
diff --git a/prebuilts/gradle/NavigationDrawer/Application/build.gradle b/prebuilts/gradle/NavigationDrawer/Application/build.gradle
index 92594e8..e40389b 100644
--- a/prebuilts/gradle/NavigationDrawer/Application/build.gradle
+++ b/prebuilts/gradle/NavigationDrawer/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 14
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/NavigationDrawer/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/NavigationDrawer/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/NavigationDrawer/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/NavigationDrawer/NOTICE b/prebuilts/gradle/NavigationDrawer/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/NavigationDrawer/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/NavigationDrawer/README.md b/prebuilts/gradle/NavigationDrawer/README.md
index 26fb4d9..2466ade 100644
--- a/prebuilts/gradle/NavigationDrawer/README.md
+++ b/prebuilts/gradle/NavigationDrawer/README.md
@@ -1,5 +1,5 @@
 Android Navigation Drawer Sample
-==============================
+===================================
 
 This example illustrates a common usage of the DrawerLayout widget in the Android
 support library.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/NavigationDrawer/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/NavigationDrawer/gradle/wrapper/gradle-wrapper.properties
index c819e62..5f735f1 100644
--- a/prebuilts/gradle/NavigationDrawer/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/NavigationDrawer/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/NetworkConnect/.google/packaging.yaml b/prebuilts/gradle/NetworkConnect/.google/packaging.yaml
new file mode 100644
index 0000000..4184bf9
--- /dev/null
+++ b/prebuilts/gradle/NetworkConnect/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Connectivity]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-NetworkConnect
+license: apache2
diff --git a/prebuilts/gradle/NetworkConnect/Application/build.gradle b/prebuilts/gradle/NetworkConnect/Application/build.gradle
index b4e63e8..45ed855 100644
--- a/prebuilts/gradle/NetworkConnect/Application/build.gradle
+++ b/prebuilts/gradle/NetworkConnect/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 8
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/NetworkConnect/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/NetworkConnect/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/NetworkConnect/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/NetworkConnect/NOTICE b/prebuilts/gradle/NetworkConnect/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/NetworkConnect/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/NetworkConnect/README.md b/prebuilts/gradle/NetworkConnect/README.md
index a959085..dd7894e 100644
--- a/prebuilts/gradle/NetworkConnect/README.md
+++ b/prebuilts/gradle/NetworkConnect/README.md
@@ -1,5 +1,5 @@
 Android NetworkConnect Sample
-==============================
+===================================
 
 This sample demonstrates how to connect to the network and fetch raw HTML using
 HttpURLConnection. AsyncTask is used to perform the fetch on a background thread.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/NetworkConnect/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/NetworkConnect/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/NetworkConnect/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/NetworkConnect/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Notifications/.google/packaging.yaml b/prebuilts/gradle/Notifications/.google/packaging.yaml
new file mode 100644
index 0000000..081d559
--- /dev/null
+++ b/prebuilts/gradle/Notifications/.google/packaging.yaml
@@ -0,0 +1,20 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Wearable Notifications
+level:        INTERMEDIATE
+icon:         screenshots/ic_launcher.png
+apiRefs:
+    - android:android.app.Notification
+    - android:android.support.v4.app.NotificationCompat
+    - android:android.support.v4.app.NotificationManagerCompat
+    - android:android.support.v4.app.RemoteInput
+    - android:android.support.wearable.view.WearableListView
+license: apache2
diff --git a/prebuilts/gradle/Notifications/Application/build.gradle b/prebuilts/gradle/Notifications/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/Notifications/Application/build.gradle
+++ b/prebuilts/gradle/Notifications/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/MainActivity.java b/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/MainActivity.java
index c2be395..4ade3ed 100644
--- a/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/MainActivity.java
+++ b/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/MainActivity.java
@@ -170,12 +170,12 @@
     }
 
     private void updateTextEditors(NotificationPreset preset) {
+        mTitleEditText.setText(getString(preset.titleResId));
+        mTextEditText.setText(getString(preset.textResId));
         if (preset == NotificationPresets.BASIC) {
             findViewById(R.id.title_edit_field).setVisibility(View.VISIBLE);
-            mTitleEditText.setText(getString(preset.titleResId));
             mTitleEditText.addTextChangedListener(mTextChangedListener);
             findViewById(R.id.text_edit_field).setVisibility(View.VISIBLE);
-            mTextEditText.setText(getString(preset.textResId));
             mTextEditText.addTextChangedListener(mTextChangedListener);
         } else {
             findViewById(R.id.title_edit_field).setVisibility(View.GONE);
diff --git a/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/NotificationPresets.java b/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/NotificationPresets.java
index e175d11..641b861 100644
--- a/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/NotificationPresets.java
+++ b/prebuilts/gradle/Notifications/Application/src/main/java/com/example/android/support/wearable/notifications/NotificationPresets.java
@@ -50,6 +50,7 @@
     public static final NotificationPreset CONTENT_ICON = new ContentIconNotificationPreset();
     public static final NotificationPreset MULTIPLE_PAGE = new MultiplePageNotificationPreset();
     public static final NotificationPreset BUNDLE = new NotificationBundlePreset();
+    public static final NotificationPreset BARCODE = new NotificationBarcodePreset();
 
     public static final NotificationPreset[] PRESETS = new NotificationPreset[] {
             BASIC,
@@ -62,7 +63,8 @@
             CONTENT_ACTION,
             CONTENT_ICON,
             MULTIPLE_PAGE,
-            BUNDLE
+            BUNDLE,
+            BARCODE
     };
 
     private static NotificationCompat.Builder applyBasicOptions(Context context,
@@ -476,4 +478,33 @@
                     childBuilder2.build() };
         }
     }
+
+    private static class NotificationBarcodePreset extends NotificationPreset {
+        public NotificationBarcodePreset() {
+            super(R.string.barcode_example, R.string.barcode_content_title,
+                    R.string.barcode_content_text);
+        }
+
+        @Override
+        public Notification[] buildNotifications(Context context, BuildOptions options) {
+            NotificationCompat.Builder secondPageBuilder = new NotificationCompat.Builder(context)
+                    .extend(new NotificationCompat.WearableExtender()
+                            .setHintShowBackgroundOnly(true)
+                            .setBackground(BitmapFactory.decodeResource(context.getResources(),
+                                    R.drawable.qr_code))
+                            .setHintAvoidBackgroundClipping(true)
+                            .setHintScreenTimeout(
+                                    NotificationCompat.WearableExtender.SCREEN_TIMEOUT_LONG));
+
+            NotificationCompat.Builder firstPageBuilder = new NotificationCompat.Builder(context);
+            NotificationCompat.WearableExtender firstPageWearableOptions =
+                    new NotificationCompat.WearableExtender();
+            applyBasicOptions(context, firstPageBuilder, firstPageWearableOptions, options);
+
+            firstPageBuilder.extend(
+                    firstPageWearableOptions.addPage(secondPageBuilder.build()));
+
+            return new Notification[]{ firstPageBuilder.build() };
+        }
+    }
 }
diff --git a/prebuilts/gradle/Notifications/Application/src/main/res/drawable-nodpi/qr_code.png b/prebuilts/gradle/Notifications/Application/src/main/res/drawable-nodpi/qr_code.png
new file mode 100644
index 0000000..0dcd7b7
--- /dev/null
+++ b/prebuilts/gradle/Notifications/Application/src/main/res/drawable-nodpi/qr_code.png
Binary files differ
diff --git a/prebuilts/gradle/Notifications/Application/src/main/res/values/strings.xml b/prebuilts/gradle/Notifications/Application/src/main/res/values/strings.xml
index 52f0f10..ffcb9f3 100644
--- a/prebuilts/gradle/Notifications/Application/src/main/res/values/strings.xml
+++ b/prebuilts/gradle/Notifications/Application/src/main/res/values/strings.xml
@@ -38,6 +38,7 @@
     <string name="content_icon_example">Content icon example</string>
     <string name="multiple_page_example">Multiple page example</string>
     <string name="bundle_example">Bundle example</string>
+    <string name="barcode_example">Barcode example</string>
 
     <string name="min_priority">Min priority</string>
     <string name="low_priority">Low priority</string>
@@ -161,6 +162,9 @@
     <string name="big_picture_style_example_title">Big picture style example title</string>
     <string name="big_picture_style_example_summary_text">Big picture style example summary</string>
 
+    <string name="barcode_content_title">Barcode example</string>
+    <string name="barcode_content_text">Swipe to view</string>
+
     <string name="second_page_content_title">Second page title</string>
     <string name="second_page_content_text">Second page text</string>
 
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Notifications/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Notifications/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Notifications/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Notifications/NOTICE b/prebuilts/gradle/Notifications/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Notifications/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Notifications/README.md b/prebuilts/gradle/Notifications/README.md
new file mode 100644
index 0000000..b4fa653
--- /dev/null
+++ b/prebuilts/gradle/Notifications/README.md
@@ -0,0 +1,70 @@
+Android Wearable Notifications Sample
+===================================
+
+This sample showcases the available notification styles on a device and wearable.
+
+Introduction
+------------
+
+This sample app enables the user to choose a notification type (the selection is done on the phone),
+which it then displays on the phone and wearable. The notification is built using
+[NotificationCompat.Builder][1] and [NotificationCompat.WearableExtender][2].
+
+See [Creating a Notification][3] for all the details on how to create a notification with wearable features.
+
+On the wearable side, the sample also shows how to create a custom layout using [WearableListView][4].
+
+[1]: http://developer.android.com/reference/android/support/v4/app/NotificationCompat.Builder.html
+[2]: https://developer.android.com/reference/android/support/v4/app/NotificationCompat.WearableExtender.html
+[3]: https://developer.android.com/training/wearables/notifications/creating.html
+[4]: https://developer.android.com/training/wearables/apps/layouts.html#UiLibrary
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/companion-content-action.png" height="400" alt="Screenshot"/> <img src="screenshots/content-action" height="400" alt="Screenshot"/> <img src="screenshots/content-icon-menu" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Wearable Notifications
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/Notifications/Wearable/build.gradle b/prebuilts/gradle/Notifications/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/Notifications/Wearable/build.gradle
+++ b/prebuilts/gradle/Notifications/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/Notifications/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Notifications/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Notifications/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Notifications/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Notifications/screenshots/ic_launcher.png b/prebuilts/gradle/Notifications/screenshots/ic_launcher.png
new file mode 100644
index 0000000..163f1f0
--- /dev/null
+++ b/prebuilts/gradle/Notifications/screenshots/ic_launcher.png
Binary files differ
diff --git a/prebuilts/gradle/MediaRecorder/packaging.yaml b/prebuilts/gradle/PdfRendererBasic/.google/packaging.yaml
similarity index 62%
copy from prebuilts/gradle/MediaRecorder/packaging.yaml
copy to prebuilts/gradle/PdfRendererBasic/.google/packaging.yaml
index 13cd2e9..892bf42 100644
--- a/prebuilts/gradle/MediaRecorder/packaging.yaml
+++ b/prebuilts/gradle/PdfRendererBasic/.google/packaging.yaml
@@ -3,13 +3,14 @@
 # This file is used by Google as part of our samples packaging process.
 # End users may safely ignore this file. It has no relevance to other systems.
 ---
-
 status:       PUBLISHED
 technologies: [Android]
-categories:   [Media]
+categories:   [UI, Graphics]
 languages:    [Java]
 solutions:    [Mobile]
-github:       googlesamples/android-MediaRecorder
+github:       android-PdfRendererBasic
 level:        BEGINNER
-icon:         MediaRecorderSample/src/main/res/drawable-xxhdpi/ic_launcher.png
-license:      apache2-android
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.graphics.pdf.PdfRenderer
+license: apache2
diff --git a/prebuilts/gradle/PdfRendererBasic/Application/build.gradle b/prebuilts/gradle/PdfRendererBasic/Application/build.gradle
index ebac5a5..ecef867 100644
--- a/prebuilts/gradle/PdfRendererBasic/Application/build.gradle
+++ b/prebuilts/gradle/PdfRendererBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/PdfRendererBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/PdfRendererBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/PdfRendererBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/PdfRendererBasic/NOTICE b/prebuilts/gradle/PdfRendererBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/PdfRendererBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/PdfRendererBasic/README.md b/prebuilts/gradle/PdfRendererBasic/README.md
new file mode 100644
index 0000000..f440e18
--- /dev/null
+++ b/prebuilts/gradle/PdfRendererBasic/README.md
@@ -0,0 +1,82 @@
+Android PdfRendererBasic Sample
+===================================
+
+This sample demonstrates how to display PDF document on screen using
+the PdfRenderer introduced in Android 5.0 Lollipop.
+
+Introduction
+------------
+
+You can now render PDF document pages into bitmap images for printing by using
+the new [PdfRenderer][1] class. You must specify a [ParcelFileDescriptor][2]
+that is seekable (that is, the content can be randomly accessed) on which the
+system writes the the printable content. Your app can obtain a page for
+rendering with [openPage()][3], then call [render()][4] to turn the opened
+[PdfRenderer.Page][5] into a bitmap.
+
+This sample loads the PDF from assets. Contents of assets are compressed by
+default, but we disable it since PdfRenderer class cannot handle it.
+
+```groovy
+android {
+    aaptOptions {
+        noCompress "pdf"
+    }
+}
+```
+
+[1]: https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.html
+[2]: https://developer.android.com/reference/android/os/ParcelFileDescriptor.html
+[3]: https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.html#openPage(int)
+[4]: https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.Page.html#render(android.graphics.Bitmap, android.graphics.Rect, android.graphics.Matrix, int)
+[5]: https://developer.android.com/reference/android/graphics/pdf/PdfRenderer.Page.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/main.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-PdfRendererBasic
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/PdfRendererBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/PdfRendererBasic/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/PdfRendererBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/PdfRendererBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/PdfRendererBasic/screenshots/icon-web.png b/prebuilts/gradle/PdfRendererBasic/screenshots/icon-web.png
new file mode 100755
index 0000000..5ed38dc
--- /dev/null
+++ b/prebuilts/gradle/PdfRendererBasic/screenshots/icon-web.png
Binary files differ
diff --git a/prebuilts/gradle/PdfRendererBasic/screenshots/main.png b/prebuilts/gradle/PdfRendererBasic/screenshots/main.png
new file mode 100644
index 0000000..faff891
--- /dev/null
+++ b/prebuilts/gradle/PdfRendererBasic/screenshots/main.png
Binary files differ
diff --git a/prebuilts/gradle/Quiz/.google/packaging.yaml b/prebuilts/gradle/Quiz/.google/packaging.yaml
new file mode 100644
index 0000000..6c22ecd
--- /dev/null
+++ b/prebuilts/gradle/Quiz/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Quiz
+license: apache2
diff --git a/prebuilts/gradle/Quiz/Application/build.gradle b/prebuilts/gradle/Quiz/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/Quiz/Application/build.gradle
+++ b/prebuilts/gradle/Quiz/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Quiz/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Quiz/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Quiz/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Quiz/NOTICE b/prebuilts/gradle/Quiz/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Quiz/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Quiz/README.md b/prebuilts/gradle/Quiz/README.md
new file mode 100644
index 0000000..a7f8ba7
--- /dev/null
+++ b/prebuilts/gradle/Quiz/README.md
@@ -0,0 +1,55 @@
+Android Quiz Sample
+===================================
+
+This sample uses Google Play Services Wearable Data APIs to communicate between
+applications on a phone and a paired wearable device. Users can create quiz questions on the phone,
+each of which has an associated DataItem. These DataItems are then received on the wearable, which
+displays them as notifications. Each notification contains the question as the first page, followed
+by answers as actions. When an answer is selected, the corresponding question's DataItem is updated,
+which allows the phone application to update the status of the question (i.e. did the user answer it
+correctly or not) and prompt the next question.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Quiz
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/Quiz/Wearable/build.gradle b/prebuilts/gradle/Quiz/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/Quiz/Wearable/build.gradle
+++ b/prebuilts/gradle/Quiz/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/Quiz/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Quiz/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Quiz/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Quiz/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RecipeAssistant/.google/packaging.yaml b/prebuilts/gradle/RecipeAssistant/.google/packaging.yaml
new file mode 100644
index 0000000..f3770eb
--- /dev/null
+++ b/prebuilts/gradle/RecipeAssistant/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-RecipeAssistant
+license: apache2
diff --git a/prebuilts/gradle/RecipeAssistant/Application/build.gradle b/prebuilts/gradle/RecipeAssistant/Application/build.gradle
index 0679327..6439afb 100644
--- a/prebuilts/gradle/RecipeAssistant/Application/build.gradle
+++ b/prebuilts/gradle/RecipeAssistant/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/RecipeAssistant/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/RecipeAssistant/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/RecipeAssistant/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/RecipeAssistant/NOTICE b/prebuilts/gradle/RecipeAssistant/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/RecipeAssistant/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/RecipeAssistant/README.md b/prebuilts/gradle/RecipeAssistant/README.md
new file mode 100644
index 0000000..bf08bbf
--- /dev/null
+++ b/prebuilts/gradle/RecipeAssistant/README.md
@@ -0,0 +1,54 @@
+Android RecipeAssistant Sample
+===================================
+
+This phone application uses the enhanced notifications API to display recipe
+instructions using paged notifications. After starting the application on your phone, you can browse
+from a short list of recipes and select one to view. Each recipe is broken down into a number of
+steps; when ready, you can click on the START action in the action bar to send the steps to the
+wearable. On the wearable device, the steps are displayed as a multi-page notification, with one
+page for each step in the recipe.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-RecipeAssistant
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/RecipeAssistant/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RecipeAssistant/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/RecipeAssistant/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RecipeAssistant/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RecyclerView/.google/packaging.yaml b/prebuilts/gradle/RecyclerView/.google/packaging.yaml
new file mode 100644
index 0000000..84f7dff
--- /dev/null
+++ b/prebuilts/gradle/RecyclerView/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-RecyclerView
+license: apache2
diff --git a/prebuilts/gradle/RecyclerView/Application/build.gradle b/prebuilts/gradle/RecyclerView/Application/build.gradle
index 25e981c..5df4c5c 100644
--- a/prebuilts/gradle/RecyclerView/Application/build.gradle
+++ b/prebuilts/gradle/RecyclerView/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 7
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/CustomAdapter.java b/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/CustomAdapter.java
index f8e3bae..40f9375 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/CustomAdapter.java
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/CustomAdapter.java
@@ -34,21 +34,29 @@
 
     // BEGIN_INCLUDE(recyclerViewSampleViewHolder)
     /**
-     * Provide a reference to the type of views that you are using (custom viewholder)
+     * Provide a reference to the type of views that you are using (custom ViewHolder)
      */
     public static class ViewHolder extends RecyclerView.ViewHolder {
-        private final TextView mTextView;
+        private final TextView textView;
 
         public ViewHolder(View v) {
             super(v);
-            mTextView = (TextView) v.findViewById(R.id.textView);
+            // Define click listener for the ViewHolder's View.
+            v.setOnClickListener(new View.OnClickListener() {
+                @Override
+                public void onClick(View v) {
+                    Log.d(TAG, "Element " + getPosition() + " clicked.");
+                }
+            });
+            textView = (TextView) v.findViewById(R.id.textView);
         }
 
-        public TextView getmTextView() {
-            return mTextView;
+        public TextView getTextView() {
+            return textView;
         }
     }
     // END_INCLUDE(recyclerViewSampleViewHolder)
+
     /**
      * Initialize the dataset of the Adapter.
      *
@@ -61,25 +69,24 @@
     // BEGIN_INCLUDE(recyclerViewOnCreateViewHolder)
     // Create new views (invoked by the layout manager)
     @Override
-    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int position) {
+    public ViewHolder onCreateViewHolder(ViewGroup viewGroup, int viewType) {
         // Create a new view.
         View v = LayoutInflater.from(viewGroup.getContext())
                 .inflate(R.layout.text_row_item, viewGroup, false);
 
-        ViewHolder vh = new ViewHolder(v);
-        return vh;
+        return new ViewHolder(v);
     }
     // END_INCLUDE(recyclerViewOnCreateViewHolder)
 
     // BEGIN_INCLUDE(recyclerViewOnBindViewHolder)
     // Replace the contents of a view (invoked by the layout manager)
     @Override
-    public void onBindViewHolder(ViewHolder viewHolder, int position) {
+    public void onBindViewHolder(ViewHolder viewHolder, final int position) {
         Log.d(TAG, "Element " + position + " set.");
 
         // Get element from your dataset at this position and replace the contents of the view
         // with that element
-        viewHolder.getmTextView().setText(mDataSet[position]);
+        viewHolder.getTextView().setText(mDataSet[position]);
     }
     // END_INCLUDE(recyclerViewOnBindViewHolder)
 
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/RecyclerViewFragment.java b/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/RecyclerViewFragment.java
index 4f4a596..019657f 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/RecyclerViewFragment.java
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/java/com/example/android/recyclerview/RecyclerViewFragment.java
@@ -18,21 +18,37 @@
 
 import android.os.Bundle;
 import android.support.v4.app.Fragment;
+import android.support.v7.widget.GridLayoutManager;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.widget.RadioButton;
 
 /**
- * Demonstrates the use of RecyclerView with a LinearLayoutManager.
+ * Demonstrates the use of {@link RecyclerView} with a {@link LinearLayoutManager} and a
+ * {@link GridLayoutManager}.
  */
 public class RecyclerViewFragment extends Fragment {
 
     private static final String TAG = "RecyclerViewFragment";
+    private static final String KEY_LAYOUT_MANAGER = "layoutManager";
+    private static final int SPAN_COUNT = 2;
+    private static final int DATASET_COUNT = 60;
+
+    private enum LayoutManagerType {
+        GRID_LAYOUT_MANAGER,
+        LINEAR_LAYOUT_MANAGER
+    }
+
+    protected LayoutManagerType mCurrentLayoutManagerType;
+
+    protected RadioButton mLinearLayoutRadioButton;
+    protected RadioButton mGridLayoutRadioButton;
 
     protected RecyclerView mRecyclerView;
-    protected RecyclerView.Adapter mAdapter;
+    protected CustomAdapter mAdapter;
     protected RecyclerView.LayoutManager mLayoutManager;
     protected String[] mDataset;
 
@@ -58,23 +74,86 @@
         // to the way ListView would layout elements. The RecyclerView.LayoutManager defines how
         // elements are laid out.
         mLayoutManager = new LinearLayoutManager(getActivity());
-        mRecyclerView.setLayoutManager(mLayoutManager);
+
+        mCurrentLayoutManagerType = LayoutManagerType.LINEAR_LAYOUT_MANAGER;
+
+        if (savedInstanceState != null) {
+            // Restore saved layout manager type.
+            mCurrentLayoutManagerType = (LayoutManagerType) savedInstanceState
+                    .getSerializable(LAYOUT_MANAGER_KEY);
+        }
+        setRecyclerViewLayoutManager(mCurrentLayoutManagerType);
 
         mAdapter = new CustomAdapter(mDataset);
         // Set CustomAdapter as the adapter for RecyclerView.
         mRecyclerView.setAdapter(mAdapter);
         // END_INCLUDE(initializeRecyclerView)
 
+        mLinearLayoutRadioButton = (RadioButton) rootView.findViewById(R.id.linear_layout_rb);
+        mLinearLayoutRadioButton.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                setRecyclerViewLayoutManager(LayoutManagerType.LINEAR_LAYOUT_MANAGER);
+            }
+        });
+
+        mGridLayoutRadioButton = (RadioButton) rootView.findViewById(R.id.grid_layout_rb);
+        mGridLayoutRadioButton.setOnClickListener(new View.OnClickListener() {
+            @Override
+            public void onClick(View v) {
+                setRecyclerViewLayoutManager(LayoutManagerType.GRID_LAYOUT_MANAGER);
+            }
+        });
+
         return rootView;
     }
 
     /**
+     * Set RecyclerView's LayoutManager to the one given.
+     *
+     * @param layoutManagerType Type of layout manager to switch to.
+     */
+    public void setRecyclerViewLayoutManager(LayoutManagerType layoutManagerType) {
+        int scrollPosition = 0;
+
+        // If a layout manager has already been set, get current scroll position.
+        if (mRecyclerView.getLayoutManager() != null) {
+            scrollPosition = ((LinearLayoutManager) mRecyclerView.getLayoutManager())
+                    .findFirstCompletelyVisibleItemPosition();
+        }
+
+        switch (layoutManagerType) {
+            case GRID_LAYOUT_MANAGER:
+                mLayoutManager = new GridLayoutManager(getActivity(), SPAN_COUNT);
+                mCurrentLayoutManagerType = LayoutManagerType.GRID_LAYOUT_MANAGER;
+                break;
+            case LINEAR_LAYOUT_MANAGER:
+                mLayoutManager = new LinearLayoutManager(getActivity());
+                mCurrentLayoutManagerType = LayoutManagerType.LINEAR_LAYOUT_MANAGER;
+                break;
+            default:
+                mLayoutManager = new LinearLayoutManager(getActivity());
+                mCurrentLayoutManagerType = LayoutManagerType.LINEAR_LAYOUT_MANAGER;
+        }
+
+        mRecyclerView.setLayoutManager(mLayoutManager);
+        mRecyclerView.scrollToPosition(scrollPosition);
+    }
+
+    @Override
+    public void onSaveInstanceState(Bundle savedInstanceState) {
+        // Save currently selected layout manager.
+        savedInstanceState.putSerializable(LAYOUT_MANAGER_KEY, mCurrentLayoutManagerType);
+        super.onSaveInstanceState(savedInstanceState);
+    }
+
+    /**
      * Generates Strings for RecyclerView's adapter. This data would usually come
      * from a local content provider or remote server.
      */
     private void initDataset() {
-        mDataset = new String[60];
-        for (int i=0; i < 60; i++) {
+        mDataset = new String[DATASET_COUNT];
+        for (int i = 0; i < DATASET_COUNT; i++) {
             mDataset[i] = "This is element #" + i;
         }
     }
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/recycler_view_frag.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/recycler_view_frag.xml
index 6682468..dda99ce 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/recycler_view_frag.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/recycler_view_frag.xml
@@ -15,14 +15,28 @@
  limitations under the License.
 -->
 
-<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
     android:orientation="vertical">
+    <RadioGroup
+        android:layout_width="match_parent"
+        android:layout_height="wrap_content"
+        android:gravity="center_horizontal"
+        android:orientation="horizontal"
+        android:checkedButton="@+id/linear_layout_rb">
+        <RadioButton android:id="@+id/linear_layout_rb"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="@string/linear_layout_manager"/>
+        <RadioButton android:id="@+id/grid_layout_rb"
+            android:layout_width="wrap_content"
+            android:layout_height="wrap_content"
+            android:text="@string/grid_layout_manager"/>
+    </RadioGroup>
 
     <android.support.v7.widget.RecyclerView
         android:id="@+id/recyclerView"
         android:layout_width="match_parent"
-        android:layout_height="match_parent" />
-
-</FrameLayout>
+        android:layout_height="match_parent"/>
+</LinearLayout>
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/text_row_item.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/text_row_item.xml
index d552e0e..9b94684 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/text_row_item.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/layout/text_row_item.xml
@@ -15,17 +15,16 @@
  limitations under the License.
 -->
 
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
-              android:orientation="vertical"
-              android:layout_margin="@dimen/margin_small"
-              android:layout_width="wrap_content"
-              android:layout_height="wrap_content">
-
+<FrameLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    android:layout_width="match_parent"
+    android:layout_height="@dimen/list_item_height"
+    android:layout_marginLeft="@dimen/margin_medium"
+    android:layout_marginRight="@dimen/margin_medium"
+    android:gravity="center_vertical">
 
     <TextView
+        android:id="@+id/textView"
         android:layout_width="wrap_content"
         android:layout_height="wrap_content"
-        android:text="@string/element_text"
-        android:id="@+id/textView"
-        android:layout_gravity="center_horizontal"/>
-</LinearLayout>
\ No newline at end of file
+        android:text="@string/element_text"/>
+</FrameLayout>
\ No newline at end of file
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-colors.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-colors.xml
index 34c9cd1..16853b1 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-colors.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-colors.xml
@@ -16,5 +16,7 @@
 -->
 <resources>
 
+        <color name="colorPrimary">#00BCD4</color>
+        <color name="colorPrimaryDark">#00838F</color>
 
 </resources>
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-template-styles.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-template-styles.xml
index 0b2948f..c2b4c8e 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-template-styles.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/values-v21/base-template-styles.xml
@@ -18,6 +18,8 @@
 
     <!-- Activity themes -->
     <style name="Theme.Base" parent="android:Theme.Material.Light">
+            <item name="android:colorPrimary">@color/colorPrimary</item>
+            <item name="android:colorPrimaryDark">@color/colorPrimaryDark</item>
     </style>
 
 </resources>
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/base-strings.xml
index b6efd8e..7580f12 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/base-strings.xml
@@ -20,7 +20,9 @@
         <![CDATA[
         
             
-            Demonstration of using RecyclerView with a LayoutManager to create a vertical ListView.
+                Demonstration of using RecyclerView with a LinearLayoutManager and GridLayoutManager
+                to create a vertical list. Tap \"SHOW LOG\" to view elements as they are bound to
+                their ViewHolder. The log also displays elements that you tap.
             
         
         ]]>
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/values/dimens.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/dimens.xml
new file mode 100644
index 0000000..5af7e9e
--- /dev/null
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/dimens.xml
@@ -0,0 +1,20 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!--
+ Copyright 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.
+-->
+
+<resources>
+    <dimen name="list_item_height">72dp</dimen>
+</resources>
\ No newline at end of file
diff --git a/prebuilts/gradle/RecyclerView/Application/src/main/res/values/strings.xml b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/strings.xml
index 179529c..642e022 100644
--- a/prebuilts/gradle/RecyclerView/Application/src/main/res/values/strings.xml
+++ b/prebuilts/gradle/RecyclerView/Application/src/main/res/values/strings.xml
@@ -17,4 +17,6 @@
 
 <resources>
     <string name="element_text">Element</string>
+    <string name="grid_layout_manager">Grid Layout Manager</string>
+    <string name="linear_layout_manager">Linear Layout Manager</string>
 </resources>
\ No newline at end of file
diff --git a/prebuilts/gradle/RecyclerView/CONTRIB.md b/prebuilts/gradle/RecyclerView/CONTRIB.md
index 14a4fcf..8ddb52d 100644
--- a/prebuilts/gradle/RecyclerView/CONTRIB.md
+++ b/prebuilts/gradle/RecyclerView/CONTRIB.md
@@ -27,8 +27,8 @@
 1. Fork the desired repo, develop and test your code changes.
 1. Ensure that your code adheres to the existing style in the sample to which
    you are contributing. Refer to the
-   [Android Code Style Guide]
-   (https://source.android.com/source/code-style.html) for the
+   [Google Cloud Platform Samples Style Guide]
+   (https://github.com/GoogleCloudPlatform/Template/wiki/style.html) for the
    recommended coding standards for this organization.
 1. Ensure that your code has an appropriate set of unit tests which all pass.
 1. Submit a pull request.
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/RecyclerView/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/RecyclerView/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/RecyclerView/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/RecyclerView/NOTICE b/prebuilts/gradle/RecyclerView/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/RecyclerView/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/RecyclerView/README.md b/prebuilts/gradle/RecyclerView/README.md
index fdfa4f1..73db3c6 100644
--- a/prebuilts/gradle/RecyclerView/README.md
+++ b/prebuilts/gradle/RecyclerView/README.md
@@ -1,13 +1,15 @@
 Android RecyclerView Sample
-===========================
+===================================
 
-Demonstration of using RecyclerView with a LinearLayoutManager to create a vertical ListView.
+Demonstration of using RecyclerView with a LinearLayoutManager and GridLayoutManager
+to create a vertical list. Tap "SHOW LOG" to view elements as they are bound to
+their ViewHolder. The log also displays elements that you tap.
 
 Pre-requisites
 --------------
 
-- Android SDK (L Developer Preview)
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -23,7 +25,7 @@
 - Stack Overflow: http://stackoverflow.com/questions/tagged/android
 
 If you've found an error in this sample, please file an issue:
-https://github.com/googlesamples/android-BasicAndroidKeyStore
+https://github.com/googlesamples/android-RecyclerView
 
 Patches are encouraged, and may be submitted by forking this project and
 submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
@@ -40,8 +42,8 @@
 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
-  
+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
diff --git a/prebuilts/gradle/RecyclerView/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RecyclerView/gradle/wrapper/gradle-wrapper.properties
index 65fb80a..0e0523e 100644
--- a/prebuilts/gradle/RecyclerView/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RecyclerView/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.10-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RenderScriptIntrinsic/.google/packaging.yaml b/prebuilts/gradle/RenderScriptIntrinsic/.google/packaging.yaml
new file mode 100644
index 0000000..63c55b2
--- /dev/null
+++ b/prebuilts/gradle/RenderScriptIntrinsic/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [RenderScript]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-RenderScriptIntrinsic
+license: apache2
diff --git a/prebuilts/gradle/RenderScriptIntrinsic/Application/build.gradle b/prebuilts/gradle/RenderScriptIntrinsic/Application/build.gradle
index 0143d7e..ea55627 100644
--- a/prebuilts/gradle/RenderScriptIntrinsic/Application/build.gradle
+++ b/prebuilts/gradle/RenderScriptIntrinsic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -34,7 +34,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 8
@@ -54,7 +54,7 @@
         defaultConfig {
         
         renderscriptTargetApi 18
-        renderscriptSupportMode true
+        renderscriptSupportModeEnabled true
     
         }
     }
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/RenderScriptIntrinsic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/RenderScriptIntrinsic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/RenderScriptIntrinsic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/RenderScriptIntrinsic/NOTICE b/prebuilts/gradle/RenderScriptIntrinsic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/RenderScriptIntrinsic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/RenderScriptIntrinsic/README.md b/prebuilts/gradle/RenderScriptIntrinsic/README.md
index f2efbc9..eb40dfb 100644
--- a/prebuilts/gradle/RenderScriptIntrinsic/README.md
+++ b/prebuilts/gradle/RenderScriptIntrinsic/README.md
@@ -1,5 +1,5 @@
 Android RenderScriptIntrinsic Sample
-==============================
+===================================
 
 RenderScriptIntrinsic sample that demonstrates how to use RenderScript intrinsics.
 Creates several RenderScript intrinsics and shows a filtering result with various parameters.
@@ -8,8 +8,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/RenderScriptIntrinsic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RenderScriptIntrinsic/gradle/wrapper/gradle-wrapper.properties
index 42b0b0f..28f01d8 100644
--- a/prebuilts/gradle/RenderScriptIntrinsic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RenderScriptIntrinsic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RepeatingAlarm/.google/packaging.yaml b/prebuilts/gradle/RepeatingAlarm/.google/packaging.yaml
new file mode 100644
index 0000000..d40a029
--- /dev/null
+++ b/prebuilts/gradle/RepeatingAlarm/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Background]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-RepeatingAlarm
+license: apache2
diff --git a/prebuilts/gradle/RepeatingAlarm/Application/build.gradle b/prebuilts/gradle/RepeatingAlarm/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/RepeatingAlarm/Application/build.gradle
+++ b/prebuilts/gradle/RepeatingAlarm/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/RepeatingAlarm/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/RepeatingAlarm/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/RepeatingAlarm/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/RepeatingAlarm/NOTICE b/prebuilts/gradle/RepeatingAlarm/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/RepeatingAlarm/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/RepeatingAlarm/README.md b/prebuilts/gradle/RepeatingAlarm/README.md
index e725b0e..65586ad 100644
--- a/prebuilts/gradle/RepeatingAlarm/README.md
+++ b/prebuilts/gradle/RepeatingAlarm/README.md
@@ -1,5 +1,5 @@
 Android RepeatingAlarm Sample
-==============================
+===================================
 
 Introductory text that explains what the sample is intended to demonstrate. Edit
 in template-params.xml.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/RepeatingAlarm/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RepeatingAlarm/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/RepeatingAlarm/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RepeatingAlarm/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RevealEffectBasic/.google/packaging.yaml b/prebuilts/gradle/RevealEffectBasic/.google/packaging.yaml
new file mode 100644
index 0000000..56d956d
--- /dev/null
+++ b/prebuilts/gradle/RevealEffectBasic/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-RevealEffectBasic
+license: apache2
diff --git a/prebuilts/gradle/RevealEffectBasic/Application/build.gradle b/prebuilts/gradle/RevealEffectBasic/Application/build.gradle
index 574fa03..0f2f2d9 100644
--- a/prebuilts/gradle/RevealEffectBasic/Application/build.gradle
+++ b/prebuilts/gradle/RevealEffectBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 21
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/RevealEffectBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/RevealEffectBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/RevealEffectBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/RevealEffectBasic/NOTICE b/prebuilts/gradle/RevealEffectBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/RevealEffectBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/RevealEffectBasic/README.md b/prebuilts/gradle/RevealEffectBasic/README.md
new file mode 100644
index 0000000..1a495d5
--- /dev/null
+++ b/prebuilts/gradle/RevealEffectBasic/README.md
@@ -0,0 +1,49 @@
+Android RevealEffectBasic Sample
+===================================
+
+Basic sample to demonstrate the reveal effect.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-RevealEffectBasic
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/RevealEffectBasic/gradle/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RevealEffectBasic/gradle/gradle/wrapper/gradle-wrapper.properties
index 02df8c4..62a8a6c 100644
--- a/prebuilts/gradle/RevealEffectBasic/gradle/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RevealEffectBasic/gradle/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/RevealEffectBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/RevealEffectBasic/gradle/wrapper/gradle-wrapper.properties
index 19c6ed1..0c71e76 100644
--- a/prebuilts/gradle/RevealEffectBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/RevealEffectBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.11-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SkeletonWearableApp/.google/packaging.yaml b/prebuilts/gradle/SkeletonWearableApp/.google/packaging.yaml
new file mode 100644
index 0000000..c3b877c
--- /dev/null
+++ b/prebuilts/gradle/SkeletonWearableApp/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Getting Started, Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SkeletonWearableApp
+level:        BEGINNER
+icon:         Wearable/src/main/res/drawable-xhdpi/ic_launcher.png
+apiRefs:
+    - android:android.support.wearable.view.CardFragment
+    - android:android.support.wearable.view.GridViewPager
+license: apache2
diff --git a/prebuilts/gradle/SkeletonWearableApp/Application/build.gradle b/prebuilts/gradle/SkeletonWearableApp/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/SkeletonWearableApp/Application/build.gradle
+++ b/prebuilts/gradle/SkeletonWearableApp/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SkeletonWearableApp/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SkeletonWearableApp/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SkeletonWearableApp/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SkeletonWearableApp/NOTICE b/prebuilts/gradle/SkeletonWearableApp/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SkeletonWearableApp/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SkeletonWearableApp/README.md b/prebuilts/gradle/SkeletonWearableApp/README.md
new file mode 100644
index 0000000..6b17778
--- /dev/null
+++ b/prebuilts/gradle/SkeletonWearableApp/README.md
@@ -0,0 +1,68 @@
+Android SkeletonWearableApp Sample
+===================================
+
+This sample is a basic skeleton app which can be used as a starting point for wear development.
+
+Introduction
+------------
+
+This sample is a mostly empty wearable app that implements a fullscreen activity
+conforming to Android Wear best practices. Included in the sample are examples of [GridViewPager][1],
+[DelayedConfirmationView][2], and [DismissOverlayView][3].
+
+Developers who require a fullscreen activity for
+their wearable app can use this sample as a starting point.
+
+[1]: https://developer.android.com/reference/com/google/android/support/wearable/view/GridViewPager.html
+[2]: https://developer.android.com/reference/com/google/android/support/wearable/view/DelayedConfirmationView.html
+[3]: https://developer.android.com/reference/com/google/android/support/wearable/view/DismissOverlayView.html
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/skeleton_wearable_app.png" height="400" alt="Screenshot"/> <img src="screenshots/grid_view_pager.png" height="400" alt="Screenshot"/> <img src="screenshots/dismiss_overlay.png" height="400" alt="Screenshot"/> <img src="screenshots/delayed_confirmation.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-SkeletonWearableApp
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/SkeletonWearableApp/Wearable/build.gradle b/prebuilts/gradle/SkeletonWearableApp/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/SkeletonWearableApp/Wearable/build.gradle
+++ b/prebuilts/gradle/SkeletonWearableApp/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/SkeletonWearableApp/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SkeletonWearableApp/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/SkeletonWearableApp/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SkeletonWearableApp/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SlidingTabsBasic/.google/packaging.yaml b/prebuilts/gradle/SlidingTabsBasic/.google/packaging.yaml
new file mode 100644
index 0000000..4c17708
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsBasic/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SlidingTabsBasic
+license: apache2
diff --git a/prebuilts/gradle/SlidingTabsBasic/Application/build.gradle b/prebuilts/gradle/SlidingTabsBasic/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/SlidingTabsBasic/Application/build.gradle
+++ b/prebuilts/gradle/SlidingTabsBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SlidingTabsBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SlidingTabsBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SlidingTabsBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SlidingTabsBasic/NOTICE b/prebuilts/gradle/SlidingTabsBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SlidingTabsBasic/README.md b/prebuilts/gradle/SlidingTabsBasic/README.md
index 7cc1c42..3fc707f 100644
--- a/prebuilts/gradle/SlidingTabsBasic/README.md
+++ b/prebuilts/gradle/SlidingTabsBasic/README.md
@@ -1,5 +1,5 @@
 Android SlidingTabsBasic Sample
-==============================
+===================================
 
 A basic sample which shows how to use SlidingTabLayout to display a custom
 ViewPager title strip which gives continuous feedback to the user when scrolling.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/SlidingTabsBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SlidingTabsBasic/gradle/wrapper/gradle-wrapper.properties
index 7dc3dff..c25449e 100644
--- a/prebuilts/gradle/SlidingTabsBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SlidingTabsBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,5 +3,5 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
 
diff --git a/prebuilts/gradle/SlidingTabsColors/.google/packaging.yaml b/prebuilts/gradle/SlidingTabsColors/.google/packaging.yaml
new file mode 100644
index 0000000..a7c9f8d
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsColors/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI, Views]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SlidingTabsColors
+level:        ADVANCED
+icon:         Application/src/main/res/drawable-xxhdpi/ic_launcher.png
+apiRefs:
+    - android:android.widget.HorizontalScrollView
+    - android:android.support.v4.view.ViewPager
+license: apache2
diff --git a/prebuilts/gradle/SlidingTabsColors/Application/build.gradle b/prebuilts/gradle/SlidingTabsColors/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/SlidingTabsColors/Application/build.gradle
+++ b/prebuilts/gradle/SlidingTabsColors/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SlidingTabsColors/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SlidingTabsColors/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SlidingTabsColors/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SlidingTabsColors/NOTICE b/prebuilts/gradle/SlidingTabsColors/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsColors/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SlidingTabsColors/README.md b/prebuilts/gradle/SlidingTabsColors/README.md
index 300dd0c..bab83d3 100644
--- a/prebuilts/gradle/SlidingTabsColors/README.md
+++ b/prebuilts/gradle/SlidingTabsColors/README.md
@@ -1,16 +1,38 @@
 Android SlidingTabsColors Sample
-==============================
+===================================
 
 A more advanced sample which shows how to use SlidingTabLayout to display a custom
 ViewPager title strip, with custom coloring for each tab.
 
+Introduction
+------------
+
+This sample consists of a custom [HorizontalScrollView][1] called `SlidingTabLayout` that is used
+with a [ViewPager][2] to provide a tab indicator component which gives constant feedback as to
+the user's scroll progress.
+
+The colors can be customized in two ways. The first and simplest is to provide an
+array of colors and the alternative is via the `TabColorizer` interface which gives
+complete control over which color is used for any individual position.
+
+The views used as tabs can be customized by calling `setCustomTabView(int, int)` providing the
+layout ID of the custom layout.
+
+[1]: http://developer.android.com/reference/android/widget/HorizontalScrollView.html
+[2]: http://developer.android.com/reference/android/support/v4/view/ViewPager.html
+
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-pre.png" height="400" alt="Screenshot"/> <img src="screenshots/2-morph.png" height="400" alt="Screenshot"/> <img src="screenshots/3-post.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +63,7 @@
 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
+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
diff --git a/prebuilts/gradle/SlidingTabsColors/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SlidingTabsColors/gradle/wrapper/gradle-wrapper.properties
index 5fbce39..0c8edb4 100644
--- a/prebuilts/gradle/SlidingTabsColors/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SlidingTabsColors/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SlidingTabsColors/screenshots/1-pre.png b/prebuilts/gradle/SlidingTabsColors/screenshots/1-pre.png
new file mode 100644
index 0000000..38cd788
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsColors/screenshots/1-pre.png
Binary files differ
diff --git a/prebuilts/gradle/SlidingTabsColors/screenshots/2-morph.png b/prebuilts/gradle/SlidingTabsColors/screenshots/2-morph.png
new file mode 100644
index 0000000..dad9c39
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsColors/screenshots/2-morph.png
Binary files differ
diff --git a/prebuilts/gradle/SlidingTabsColors/screenshots/3-post.png b/prebuilts/gradle/SlidingTabsColors/screenshots/3-post.png
new file mode 100644
index 0000000..4c594a9
--- /dev/null
+++ b/prebuilts/gradle/SlidingTabsColors/screenshots/3-post.png
Binary files differ
diff --git a/prebuilts/gradle/SpeedTracker/.google/packaging.yaml b/prebuilts/gradle/SpeedTracker/.google/packaging.yaml
new file mode 100644
index 0000000..fb31df7
--- /dev/null
+++ b/prebuilts/gradle/SpeedTracker/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Speed Tracker
+license: apache2
diff --git a/prebuilts/gradle/SpeedTracker/Application/build.gradle b/prebuilts/gradle/SpeedTracker/Application/build.gradle
index 28054c2..cecb70f 100644
--- a/prebuilts/gradle/SpeedTracker/Application/build.gradle
+++ b/prebuilts/gradle/SpeedTracker/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,8 +13,9 @@
 
 dependencies {
 
+    compile "com.google.android.gms:play-services-location:6.5.+"
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile project(':Shared')
     wearApp project(':Wearable')
@@ -31,11 +32,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/SpeedTracker/Application/src/main/res/values/base-strings.xml b/prebuilts/gradle/SpeedTracker/Application/src/main/res/values/base-strings.xml
index 55a45f3..0d22a87 100644
--- a/prebuilts/gradle/SpeedTracker/Application/src/main/res/values/base-strings.xml
+++ b/prebuilts/gradle/SpeedTracker/Application/src/main/res/values/base-strings.xml
@@ -20,14 +20,14 @@
         <![CDATA[
         
             
-This sample uses the FusedLocation APIs of GMS on those
-devices that have a hardware GPS built in. In those cases,
-this sample provides a simple screen that shows the current
-speed of the device on the watch. User can set a speed limit
-and if the speed approaches that limit, it changes the color
-to yellow and if it exceeds the limit, it turns red. User
-can also enable recording of coordinates and when it pairs
-back with the phone, this data will be synced with the phone
+This sample uses the FusedLocation APIs of Google Play Services
+on those devices that have a hardware GPS built in. In those
+cases, this sample provides a simple screen that shows the
+current speed of the device on the watch. User can set a speed
+limit and if the speed approaches that limit, it changes the
+color to yellow and if it exceeds the limit, it turns red. User
+can also enable recording of coordinates and when it pairs back
+with the phone, this data will be synced with the phone
 component of the app and user can see a track made of those
 coordinates on a map on the phone.
             
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SpeedTracker/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SpeedTracker/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SpeedTracker/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SpeedTracker/NOTICE b/prebuilts/gradle/SpeedTracker/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SpeedTracker/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SpeedTracker/README.md b/prebuilts/gradle/SpeedTracker/README.md
new file mode 100644
index 0000000..b385b56
--- /dev/null
+++ b/prebuilts/gradle/SpeedTracker/README.md
@@ -0,0 +1,58 @@
+Android Speed Tracker Sample
+===================================
+
+This sample uses the FusedLocation APIs of Google Play Services
+on those devices that have a hardware GPS built in. In those
+cases, this sample provides a simple screen that shows the
+current speed of the device on the watch. User can set a speed
+limit and if the speed approaches that limit, it changes the
+color to yellow and if it exceeds the limit, it turns red. User
+can also enable recording of coordinates and when it pairs back
+with the phone, this data will be synced with the phone
+component of the app and user can see a track made of those
+coordinates on a map on the phone.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Speed Tracker
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/SpeedTracker/Shared/build.gradle b/prebuilts/gradle/SpeedTracker/Shared/build.gradle
index ce462be..3812263 100644
--- a/prebuilts/gradle/SpeedTracker/Shared/build.gradle
+++ b/prebuilts/gradle/SpeedTracker/Shared/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -21,7 +21,12 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        minSdkVersion 18
+        targetSdkVersion 21
+    }
 
     sourceSets {
         main {
diff --git a/prebuilts/gradle/SpeedTracker/Wearable/build.gradle b/prebuilts/gradle/SpeedTracker/Wearable/build.gradle
index 38bf482..3894732 100644
--- a/prebuilts/gradle/SpeedTracker/Wearable/build.gradle
+++ b/prebuilts/gradle/SpeedTracker/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,9 @@
 
 
 dependencies {
+
+    compile "com.google.android.gms:play-services-location:6.5.+"
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -30,11 +33,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/SpeedTracker/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SpeedTracker/gradle/wrapper/gradle-wrapper.properties
index 1e61d1f..0c71e76 100644
--- a/prebuilts/gradle/SpeedTracker/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SpeedTracker/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/StorageClient/.google/packaging.yaml b/prebuilts/gradle/StorageClient/.google/packaging.yaml
new file mode 100644
index 0000000..77b2524
--- /dev/null
+++ b/prebuilts/gradle/StorageClient/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Content]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-StorageClient
+license: apache2
diff --git a/prebuilts/gradle/StorageClient/Application/build.gradle b/prebuilts/gradle/StorageClient/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/StorageClient/Application/build.gradle
+++ b/prebuilts/gradle/StorageClient/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/StorageClient/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/StorageClient/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/StorageClient/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/StorageClient/NOTICE b/prebuilts/gradle/StorageClient/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/StorageClient/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/StorageClient/README.md b/prebuilts/gradle/StorageClient/README.md
index bb6c434..e7ce5fa 100644
--- a/prebuilts/gradle/StorageClient/README.md
+++ b/prebuilts/gradle/StorageClient/README.md
@@ -1,5 +1,5 @@
 Android StorageClient Sample
-==============================
+===================================
 
 Using the OPEN_DOCUMENT intent, a client app can access a list of Document Providers
 on the device, and choose a file from any of them.
@@ -10,8 +10,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -44,7 +44,7 @@
 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
+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
diff --git a/prebuilts/gradle/StorageClient/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/StorageClient/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/StorageClient/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/StorageClient/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/StorageProvider/.google/packaging.yaml b/prebuilts/gradle/StorageProvider/.google/packaging.yaml
new file mode 100644
index 0000000..2ffe2a3
--- /dev/null
+++ b/prebuilts/gradle/StorageProvider/.google/packaging.yaml
@@ -0,0 +1,16 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Content]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-MyCloud
+level:        INTERMEDIATE
+icon:         screenshots/icon-web.png
+apiRefs:
+    - android:android.provider.DocumentsProvider
+license: apache2
diff --git a/prebuilts/gradle/StorageProvider/Application/build.gradle b/prebuilts/gradle/StorageProvider/Application/build.gradle
index 958018a..dcd48ee 100644
--- a/prebuilts/gradle/StorageProvider/Application/build.gradle
+++ b/prebuilts/gradle/StorageProvider/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 19
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/StorageProvider/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/StorageProvider/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/StorageProvider/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/StorageProvider/NOTICE b/prebuilts/gradle/StorageProvider/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/StorageProvider/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/StorageProvider/README.md b/prebuilts/gradle/StorageProvider/README.md
index 09c8845..016971a 100644
--- a/prebuilts/gradle/StorageProvider/README.md
+++ b/prebuilts/gradle/StorageProvider/README.md
@@ -1,16 +1,33 @@
 Android MyCloud Sample
-==============================
+===================================
 
-\nA simple implementation of a documents provider using the storage access framework in
-Android 4.4.
+This sample shows how to implement a simple documents provider using the storage access
+framework available in Android 4.4.
+
+Introduction
+------------
+
+This sample uses the [StorageAccessFramework][1] introduced in Android 4.4 to implement a [DocumentsProvider][2].
+
+See [Writing A Custom Document Provider guide][3] for all the details on how to do this.
+
+
+[1]: https://developer.android.com/guide/topics/providers/document-provider.html
+[2]: https://developer.android.com/reference/android/provider/DocumentsProvider.html
+[3]: https://developer.android.com/guide/topics/providers/document-provider.html#custom
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
+Screenshots
+-------------
+
+<img src="screenshots/1-logged-out.png" height="400" alt="Screenshot"/> <img src="screenshots/2-logged-in.png" height="400" alt="Screenshot"/> 
+
 Getting Started
 ---------------
 
@@ -41,7 +58,7 @@
 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
+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
diff --git a/prebuilts/gradle/StorageProvider/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/StorageProvider/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/StorageProvider/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/StorageProvider/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SwipeRefreshLayoutBasic/.google/packaging.yaml b/prebuilts/gradle/SwipeRefreshLayoutBasic/.google/packaging.yaml
new file mode 100644
index 0000000..4653691
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SwipeRefreshLayoutBasic
+license: apache2
diff --git a/prebuilts/gradle/SwipeRefreshLayoutBasic/Application/build.gradle b/prebuilts/gradle/SwipeRefreshLayoutBasic/Application/build.gradle
index b3953c7..beb55d0 100644
--- a/prebuilts/gradle/SwipeRefreshLayoutBasic/Application/build.gradle
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 10
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SwipeRefreshLayoutBasic/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SwipeRefreshLayoutBasic/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SwipeRefreshLayoutBasic/NOTICE b/prebuilts/gradle/SwipeRefreshLayoutBasic/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SwipeRefreshLayoutBasic/README.md b/prebuilts/gradle/SwipeRefreshLayoutBasic/README.md
index ace1260..a104bf1 100644
--- a/prebuilts/gradle/SwipeRefreshLayoutBasic/README.md
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/README.md
@@ -1,15 +1,15 @@
 Android SwipeRefreshLayoutBasic Sample
-==============================
+===================================
 
-A basic sample which shows how to use SwipeRefreshLayout to add the \'swipe-to-refresh\'
+A basic sample which shows how to use SwipeRefreshLayout to add the 'swipe-to-refresh'
 gesture to a View, enabling the ability to trigger a refresh from swiping down on the view.
 In this sample the View which can be refreshed is a ListView.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -42,7 +42,7 @@
 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
+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
diff --git a/prebuilts/gradle/SwipeRefreshLayoutBasic/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SwipeRefreshLayoutBasic/gradle/wrapper/gradle-wrapper.properties
index a9085ca..2727e36 100644
--- a/prebuilts/gradle/SwipeRefreshLayoutBasic/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SwipeRefreshLayoutBasic/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-all.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SwipeRefreshListFragment/.google/packaging.yaml b/prebuilts/gradle/SwipeRefreshListFragment/.google/packaging.yaml
new file mode 100644
index 0000000..8a42bcd
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshListFragment/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SwipeRefreshListFragment
+license: apache2
diff --git a/prebuilts/gradle/SwipeRefreshListFragment/Application/build.gradle b/prebuilts/gradle/SwipeRefreshListFragment/Application/build.gradle
index b3953c7..beb55d0 100644
--- a/prebuilts/gradle/SwipeRefreshListFragment/Application/build.gradle
+++ b/prebuilts/gradle/SwipeRefreshListFragment/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 10
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SwipeRefreshListFragment/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SwipeRefreshListFragment/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SwipeRefreshListFragment/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SwipeRefreshListFragment/NOTICE b/prebuilts/gradle/SwipeRefreshListFragment/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshListFragment/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SwipeRefreshListFragment/README.md b/prebuilts/gradle/SwipeRefreshListFragment/README.md
index 0d118e7..8ab30f5 100644
--- a/prebuilts/gradle/SwipeRefreshListFragment/README.md
+++ b/prebuilts/gradle/SwipeRefreshListFragment/README.md
@@ -1,16 +1,16 @@
 Android SwipeRefreshListFragment Sample
-==============================
+===================================
 
 A sample which shows how to use SwipeRefreshLayout within a ListFragment to add the
-\'swipe-to-refresh\' gesture to a ListView, enabling the ability to trigger a refresh
+'swipe-to-refresh' gesture to a ListView, enabling the ability to trigger a refresh
 from swiping down on that view. This is provided through the re-usable
 SwipeRefreshListFragment class.
 
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -43,7 +43,7 @@
 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
+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
diff --git a/prebuilts/gradle/SwipeRefreshListFragment/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SwipeRefreshListFragment/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/SwipeRefreshListFragment/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SwipeRefreshListFragment/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SwipeRefreshMultipleViews/.google/packaging.yaml b/prebuilts/gradle/SwipeRefreshMultipleViews/.google/packaging.yaml
new file mode 100644
index 0000000..57019b8
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SwipeRefreshMultipleViews
+license: apache2
diff --git a/prebuilts/gradle/SwipeRefreshMultipleViews/Application/build.gradle b/prebuilts/gradle/SwipeRefreshMultipleViews/Application/build.gradle
index b3953c7..beb55d0 100644
--- a/prebuilts/gradle/SwipeRefreshMultipleViews/Application/build.gradle
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -33,7 +33,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 10
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SwipeRefreshMultipleViews/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SwipeRefreshMultipleViews/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SwipeRefreshMultipleViews/NOTICE b/prebuilts/gradle/SwipeRefreshMultipleViews/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SwipeRefreshMultipleViews/README.md b/prebuilts/gradle/SwipeRefreshMultipleViews/README.md
index 2306df6..6a34660 100644
--- a/prebuilts/gradle/SwipeRefreshMultipleViews/README.md
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/README.md
@@ -1,7 +1,7 @@
 Android SwipeRefreshMultipleViews Sample
-==============================
+===================================
 
-A sample which shows how to use SwipeRefreshLayout to add the \'swipe-to-refresh\'
+A sample which shows how to use SwipeRefreshLayout to add the 'swipe-to-refresh'
 gesture to a layout with multiple children, enabling the ability to trigger a
 refresh from swiping down on the visible view. In this sample, SwipeRefreshLayout
 contains a scrollable GridView, along with a TextView empty view.
@@ -9,8 +9,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -43,7 +43,7 @@
 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
+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
diff --git a/prebuilts/gradle/SwipeRefreshMultipleViews/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SwipeRefreshMultipleViews/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/SwipeRefreshMultipleViews/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SwipeRefreshMultipleViews/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/SynchronizedNotifications/.google/packaging.yaml b/prebuilts/gradle/SynchronizedNotifications/.google/packaging.yaml
new file mode 100644
index 0000000..bfa7a3c
--- /dev/null
+++ b/prebuilts/gradle/SynchronizedNotifications/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-SynchronizedNotifications
+license: apache2
diff --git a/prebuilts/gradle/SynchronizedNotifications/Application/build.gradle b/prebuilts/gradle/SynchronizedNotifications/Application/build.gradle
index 28054c2..7233d05 100644
--- a/prebuilts/gradle/SynchronizedNotifications/Application/build.gradle
+++ b/prebuilts/gradle/SynchronizedNotifications/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile project(':Shared')
     wearApp project(':Wearable')
@@ -31,11 +31,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/SynchronizedNotifications/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/SynchronizedNotifications/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/SynchronizedNotifications/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/SynchronizedNotifications/NOTICE b/prebuilts/gradle/SynchronizedNotifications/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/SynchronizedNotifications/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/SynchronizedNotifications/README.md b/prebuilts/gradle/SynchronizedNotifications/README.md
new file mode 100644
index 0000000..98b2052
--- /dev/null
+++ b/prebuilts/gradle/SynchronizedNotifications/README.md
@@ -0,0 +1,50 @@
+Android SynchronizedNotifications Sample
+===================================
+
+This sample creates simple or synchronized notifications on a
+device and an Android Wear watch.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-SynchronizedNotifications
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/SynchronizedNotifications/Shared/build.gradle b/prebuilts/gradle/SynchronizedNotifications/Shared/build.gradle
index ce462be..3812263 100644
--- a/prebuilts/gradle/SynchronizedNotifications/Shared/build.gradle
+++ b/prebuilts/gradle/SynchronizedNotifications/Shared/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -21,7 +21,12 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        minSdkVersion 18
+        targetSdkVersion 21
+    }
 
     sourceSets {
         main {
diff --git a/prebuilts/gradle/SynchronizedNotifications/Wearable/build.gradle b/prebuilts/gradle/SynchronizedNotifications/Wearable/build.gradle
index 38bf482..73f2660 100644
--- a/prebuilts/gradle/SynchronizedNotifications/Wearable/build.gradle
+++ b/prebuilts/gradle/SynchronizedNotifications/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -30,11 +32,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/SynchronizedNotifications/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/SynchronizedNotifications/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/SynchronizedNotifications/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/SynchronizedNotifications/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/TextLinkify/.google/packaging.yaml b/prebuilts/gradle/TextLinkify/.google/packaging.yaml
new file mode 100644
index 0000000..69eb594
--- /dev/null
+++ b/prebuilts/gradle/TextLinkify/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Views]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-TextLinkify
+license: apache2
diff --git a/prebuilts/gradle/TextLinkify/Application/build.gradle b/prebuilts/gradle/TextLinkify/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/TextLinkify/Application/build.gradle
+++ b/prebuilts/gradle/TextLinkify/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/TextLinkify/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/TextLinkify/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/TextLinkify/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/TextLinkify/NOTICE b/prebuilts/gradle/TextLinkify/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/TextLinkify/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/TextLinkify/README.md b/prebuilts/gradle/TextLinkify/README.md
index 566e166..fe97445 100644
--- a/prebuilts/gradle/TextLinkify/README.md
+++ b/prebuilts/gradle/TextLinkify/README.md
@@ -1,5 +1,5 @@
 Android TextLinkify Sample
-==============================
+===================================
 
 This sample illustrates how links can be added to a TextView. This can be done either
 automatically by setting the "autoLink" property or explicitly.
@@ -7,8 +7,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -41,7 +41,7 @@
 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
+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
diff --git a/prebuilts/gradle/TextLinkify/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/TextLinkify/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/TextLinkify/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/TextLinkify/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/TextSwitcher/.google/packaging.yaml b/prebuilts/gradle/TextSwitcher/.google/packaging.yaml
new file mode 100644
index 0000000..b159e43
--- /dev/null
+++ b/prebuilts/gradle/TextSwitcher/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [UI]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-TextSwitcher
+license: apache2
diff --git a/prebuilts/gradle/TextSwitcher/Application/build.gradle b/prebuilts/gradle/TextSwitcher/Application/build.gradle
index 85e2282..21bc0b5 100644
--- a/prebuilts/gradle/TextSwitcher/Application/build.gradle
+++ b/prebuilts/gradle/TextSwitcher/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -31,7 +31,7 @@
 
 android {
     compileSdkVersion 21
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 4
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/TextSwitcher/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/TextSwitcher/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/TextSwitcher/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/TextSwitcher/NOTICE b/prebuilts/gradle/TextSwitcher/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/TextSwitcher/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/TextSwitcher/README.md b/prebuilts/gradle/TextSwitcher/README.md
index d5bb7d6..32e3e03 100644
--- a/prebuilts/gradle/TextSwitcher/README.md
+++ b/prebuilts/gradle/TextSwitcher/README.md
@@ -1,5 +1,5 @@
 Android TextSwitcher Sample
-==============================
+===================================
 
 This sample illustrates the use of a TextSwitcher to display text.
 
@@ -9,8 +9,8 @@
 Pre-requisites
 --------------
 
-- Android SDK v20
-- Android Build Tools v20
+- Android SDK v21
+- Android Build Tools v21.1.1
 - Android Support Repository
 
 Getting Started
@@ -43,7 +43,7 @@
 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
+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
diff --git a/prebuilts/gradle/TextSwitcher/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/TextSwitcher/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/TextSwitcher/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/TextSwitcher/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/Timer/.google/packaging.yaml b/prebuilts/gradle/Timer/.google/packaging.yaml
new file mode 100644
index 0000000..b061784
--- /dev/null
+++ b/prebuilts/gradle/Timer/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-Timer
+license: apache2
diff --git a/prebuilts/gradle/Timer/Application/build.gradle b/prebuilts/gradle/Timer/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/Timer/Application/build.gradle
+++ b/prebuilts/gradle/Timer/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/Timer/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/Timer/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/Timer/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/Timer/NOTICE b/prebuilts/gradle/Timer/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/Timer/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/Timer/README.md b/prebuilts/gradle/Timer/README.md
new file mode 100644
index 0000000..c2c26bf
--- /dev/null
+++ b/prebuilts/gradle/Timer/README.md
@@ -0,0 +1,50 @@
+Android Timer Sample
+===================================
+
+This simple wearable app allows the user to set a countdown timer. It runs
+independently on the wearable with no phone connection.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-Timer
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/Timer/Wearable/build.gradle b/prebuilts/gradle/Timer/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/Timer/Wearable/build.gradle
+++ b/prebuilts/gradle/Timer/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/Timer/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/Timer/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/Timer/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/Timer/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/WatchFace/.google/packaging.yaml b/prebuilts/gradle/WatchFace/.google/packaging.yaml
new file mode 100644
index 0000000..055070c
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/.google/packaging.yaml
@@ -0,0 +1,12 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-WatchFace
+license: apache2
diff --git a/prebuilts/gradle/WatchFace/Application/build.gradle b/prebuilts/gradle/WatchFace/Application/build.gradle
index 2165e2b..e809ecf 100644
--- a/prebuilts/gradle/WatchFace/Application/build.gradle
+++ b/prebuilts/gradle/WatchFace/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -15,7 +15,7 @@
 
     compile "com.google.android.support:wearable:1.1.+"
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -31,11 +31,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/WatchFace/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/WatchFace/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/WatchFace/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/WatchFace/NOTICE b/prebuilts/gradle/WatchFace/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/WatchFace/README.md b/prebuilts/gradle/WatchFace/README.md
new file mode 100644
index 0000000..6c1ba6e
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/README.md
@@ -0,0 +1,52 @@
+Android WatchFace Sample
+===================================
+
+This sample demonstrates how to create watch faces for android wear and includes a phone app
+and a wearable app. The wearable app has a variety of watch faces including analog, digital,
+opengl, calendar, etc. It also includes a watch-side configuration example. The phone app
+includes a phone-side configuration example.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-WatchFace
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/WatchFace/Wearable/build.gradle b/prebuilts/gradle/WatchFace/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/WatchFace/Wearable/build.gradle
+++ b/prebuilts/gradle/WatchFace/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/AndroidManifest.xml b/prebuilts/gradle/WatchFace/Wearable/src/main/AndroidManifest.xml
index 6e0aac2..ee906b7 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/AndroidManifest.xml
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/AndroidManifest.xml
@@ -47,6 +47,9 @@
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_analog" />
             <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_analog_circular" />
+            <meta-data
                     android:name="com.google.android.wearable.watchface.companionConfigurationAction"
                     android:value="com.example.android.wearable.watchface.CONFIG_ANALOG" />
             <intent-filter>
@@ -67,6 +70,9 @@
             <meta-data
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_analog" />
+            <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_analog_circular" />
             <intent-filter>
                 <action android:name="android.service.wallpaper.WallpaperService" />
                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
@@ -86,6 +92,9 @@
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_tilt" />
             <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_tilt_circular" />
+            <meta-data
                     android:name="com.google.android.wearable.watchface.companionConfigurationAction"
                     android:value="com.example.android.wearable.watchface.CONFIG_TILT" />
 
@@ -108,6 +117,9 @@
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_card_bounds" />
             <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_card_bounds_circular" />
+            <meta-data
                     android:name="com.google.android.wearable.watchface.companionConfigurationAction"
                     android:value="com.example.android.wearable.watchface.CONFIG_CARD_BOUNDS" />
             <intent-filter>
@@ -129,6 +141,9 @@
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_digital" />
             <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_digital_circular" />
+            <meta-data
                     android:name="com.google.android.wearable.watchface.companionConfigurationAction"
                     android:value="com.example.android.wearable.watchface.CONFIG_DIGITAL" />
             <meta-data
@@ -166,6 +181,9 @@
             <meta-data
                     android:name="com.google.android.wearable.watchface.preview"
                     android:resource="@drawable/preview_calendar" />
+            <meta-data
+                    android:name="com.google.android.clockwork.home.preview_circular"
+                    android:resource="@drawable/preview_calendar_circular" />
             <intent-filter>
                 <action android:name="android.service.wallpaper.WallpaperService" />
                 <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/AnalogWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/AnalogWatchFaceService.java
index 19c8d2b..f0fb4f5 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/AnalogWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/AnalogWatchFaceService.java
@@ -24,6 +24,7 @@
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
 import android.graphics.Paint;
+import android.graphics.Rect;
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
@@ -80,7 +81,7 @@
                             Log.v(TAG, "updating time");
                         }
                         invalidate();
-                        if (isVisible()) {
+                        if (shouldTimerBeRunning()) {
                             long timeMs = System.currentTimeMillis();
                             long delayMs = INTERACTIVE_UPDATE_RATE_MS
                                     - (timeMs % INTERACTIVE_UPDATE_RATE_MS);
@@ -179,6 +180,9 @@
         @Override
         public void onAmbientModeChanged(boolean inAmbientMode) {
             super.onAmbientModeChanged(inAmbientMode);
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "onAmbientModeChanged: " + inAmbientMode);
+            }
             if (mLowBitAmbient) {
                 boolean antiAlias = !inAmbientMode;
                 mHourPaint.setAntiAlias(antiAlias);
@@ -187,6 +191,10 @@
                 mTickPaint.setAntiAlias(antiAlias);
             }
             invalidate();
+
+            // Whether the timer should be running depends on whether we're in ambient mode (as well
+            // as whether we're visible), so we may need to start or stop the timer.
+            updateTimer();
         }
 
         @Override
@@ -203,11 +211,11 @@
         }
 
         @Override
-        public void onDraw(Canvas canvas) {
+        public void onDraw(Canvas canvas, Rect bounds) {
             mTime.setToNow();
 
-            int width = canvas.getWidth();
-            int height = canvas.getHeight();
+            int width = bounds.width();
+            int height = bounds.height();
 
             // Draw the background, scaled to fit.
             if (mBackgroundScaledBitmap == null
@@ -264,6 +272,9 @@
         @Override
         public void onVisibilityChanged(boolean visible) {
             super.onVisibilityChanged(visible);
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "onVisibilityChanged: " + visible);
+            }
 
             if (visible) {
                 registerReceiver();
@@ -271,12 +282,13 @@
                 // Update time zone in case it changed while we weren't visible.
                 mTime.clear(TimeZone.getDefault().getID());
                 mTime.setToNow();
-
-                mUpdateTimeHandler.sendEmptyMessage(MSG_UPDATE_TIME);
             } else {
-                mUpdateTimeHandler.removeMessages(MSG_UPDATE_TIME);
                 unregisterReceiver();
             }
+
+            // Whether the timer should be running depends on whether we're visible (as well as
+            // whether we're in ambient mode), so we may need to start or stop the timer.
+            updateTimer();
         }
 
         private void registerReceiver() {
@@ -295,5 +307,28 @@
             mRegisteredTimeZoneReceiver = false;
             AnalogWatchFaceService.this.unregisterReceiver(mTimeZoneReceiver);
         }
+
+        /**
+         * Starts the {@link #mUpdateTimeHandler} timer if it should be running and isn't currently
+         * or stops it if it shouldn't be running but currently is.
+         */
+        private void updateTimer() {
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "updateTimer");
+            }
+            mUpdateTimeHandler.removeMessages(MSG_UPDATE_TIME);
+            if (shouldTimerBeRunning()) {
+                mUpdateTimeHandler.sendEmptyMessage(MSG_UPDATE_TIME);
+            }
+        }
+
+        /**
+         * Returns whether the {@link #mUpdateTimeHandler} timer should be running. The timer should
+         * only run when we're visible and in interactive mode.
+         */
+        private boolean shouldTimerBeRunning() {
+            return isVisible() && !isInAmbientMode();
+        }
+
     }
 }
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CalendarWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CalendarWatchFaceService.java
index a284eff..a8ab955 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CalendarWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CalendarWatchFaceService.java
@@ -24,6 +24,7 @@
 import android.database.Cursor;
 import android.graphics.Canvas;
 import android.graphics.Color;
+import android.graphics.Rect;
 import android.net.Uri;
 import android.os.AsyncTask;
 import android.os.Handler;
@@ -129,10 +130,10 @@
         }
 
         @Override
-        public void onDraw(Canvas canvas) {
+        public void onDraw(Canvas canvas, Rect bounds) {
             // Create or update mLayout if necessary.
-            if (mLayout == null || mLayoutWidth != canvas.getWidth()) {
-                mLayoutWidth = canvas.getWidth();
+            if (mLayout == null || mLayoutWidth != bounds.width()) {
+                mLayoutWidth = bounds.width();
                 mLayout = new DynamicLayout(mEditable, mTextPaint, mLayoutWidth,
                         Layout.Alignment.ALIGN_NORMAL, 1 /* spacingMult */, 0 /* spacingAdd */,
                         false /* includePad */);
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CardBoundsWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CardBoundsWatchFaceService.java
index c0d4437..359d7af 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CardBoundsWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/CardBoundsWatchFaceService.java
@@ -82,7 +82,7 @@
         }
 
         @Override
-        public void onDraw(Canvas canvas) {
+        public void onDraw(Canvas canvas, Rect bounds) {
             // Clear screen.
             canvas.drawColor(isInAmbientMode() ? Color.BLACK : Color.BLUE);
 
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceService.java
index 7620d1a..b8b1314 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceService.java
@@ -23,6 +23,7 @@
 import android.content.res.Resources;
 import android.graphics.Canvas;
 import android.graphics.Paint;
+import android.graphics.Rect;
 import android.graphics.Typeface;
 import android.os.Bundle;
 import android.os.Handler;
@@ -104,10 +105,10 @@
                             Log.v(TAG, "updating time");
                         }
                         invalidate();
-                        if (isVisible()) {
+                        if (shouldTimerBeRunning()) {
                             long timeMs = System.currentTimeMillis();
-                            long delayMs = mInteractiveUpdateRateMs
-                                    - (timeMs % mInteractiveUpdateRateMs);
+                            long delayMs =
+                                    mInteractiveUpdateRateMs - (timeMs % mInteractiveUpdateRateMs);
                             mUpdateTimeHandler.sendEmptyMessageDelayed(MSG_UPDATE_TIME, delayMs);
                         }
                         break;
@@ -207,6 +208,9 @@
 
         @Override
         public void onVisibilityChanged(boolean visible) {
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "onVisibilityChanged: " + visible);
+            }
             super.onVisibilityChanged(visible);
 
             if (visible) {
@@ -217,11 +221,7 @@
                 // Update time zone in case it changed while we weren't visible.
                 mTime.clear(TimeZone.getDefault().getID());
                 mTime.setToNow();
-
-                mUpdateTimeHandler.sendEmptyMessage(MSG_UPDATE_TIME);
             } else {
-                mUpdateTimeHandler.removeMessages(MSG_UPDATE_TIME);
-
                 unregisterReceiver();
 
                 if (mGoogleApiClient != null && mGoogleApiClient.isConnected()) {
@@ -229,6 +229,10 @@
                     mGoogleApiClient.disconnect();
                 }
             }
+
+            // Whether the timer should be running depends on whether we're visible (as well as
+            // whether we're in ambient mode), so we may need to start or stop the timer.
+            updateTimer();
         }
 
         private void registerReceiver() {
@@ -300,18 +304,18 @@
 
         @Override
         public void onAmbientModeChanged(boolean inAmbientMode) {
+            super.onAmbientModeChanged(inAmbientMode);
             if (Log.isLoggable(TAG, Log.DEBUG)) {
                 Log.d(TAG, "onAmbientModeChanged: " + inAmbientMode);
             }
-            super.onAmbientModeChanged(inAmbientMode);
             adjustPaintColorToCurrentMode(mBackgroundPaint, mInteractiveBackgroundColor,
                     DigitalWatchFaceUtil.COLOR_VALUE_DEFAULT_AND_AMBIENT_BACKGROUND);
             adjustPaintColorToCurrentMode(mHourPaint, mInteractiveHourDigitsColor,
                     DigitalWatchFaceUtil.COLOR_VALUE_DEFAULT_AND_AMBIENT_HOUR_DIGITS);
             adjustPaintColorToCurrentMode(mMinutePaint, mInteractiveMinuteDigitsColor,
                     DigitalWatchFaceUtil.COLOR_VALUE_DEFAULT_AND_AMBIENT_MINUTE_DIGITS);
-            // Actually, the seconds are not rendered in the ambient mode, so we could pass just
-            // any value as ambientColor here.
+            // Actually, the seconds are not rendered in the ambient mode, so we could pass just any
+            // value as ambientColor here.
             adjustPaintColorToCurrentMode(mSecondPaint, mInteractiveSecondDigitsColor,
                     DigitalWatchFaceUtil.COLOR_VALUE_DEFAULT_AND_AMBIENT_SECOND_DIGITS);
 
@@ -324,6 +328,10 @@
                 mColonPaint.setAntiAlias(antiAlias);
             }
             invalidate();
+
+            // Whether the timer should be running depends on whether we're in ambient mode (as well
+            // as whether we're visible), so we may need to start or stop the timer.
+            updateTimer();
         }
 
         private void adjustPaintColorToCurrentMode(Paint paint, int interactiveColor,
@@ -358,9 +366,10 @@
                 return;
             }
             mInteractiveUpdateRateMs = updateRateMs;
-            if (isVisible()) {
-                mUpdateTimeHandler.removeMessages(MSG_UPDATE_TIME);
-                mUpdateTimeHandler.sendEmptyMessage(MSG_UPDATE_TIME);
+
+            // Stop and restart the timer so the new update rate takes effect immediately.
+            if (shouldTimerBeRunning()) {
+                updateTimer();
             }
         }
 
@@ -404,7 +413,7 @@
         }
 
         @Override
-        public void onDraw(Canvas canvas) {
+        public void onDraw(Canvas canvas, Rect bounds) {
             mTime.setToNow();
 
             // Show colons for the first half of each second so the colons blink on when the time
@@ -412,7 +421,7 @@
             mShouldDrawColons = (System.currentTimeMillis() % 1000) < 500;
 
             // Draw the background.
-            canvas.drawRect(0, 0, canvas.getWidth(), canvas.getHeight(), mBackgroundPaint);
+            canvas.drawRect(0, 0, bounds.width(), bounds.height(), mBackgroundPaint);
 
             // Draw the hours.
             float x = mXOffset;
@@ -447,6 +456,28 @@
             }
         }
 
+        /**
+         * Starts the {@link #mUpdateTimeHandler} timer if it should be running and isn't currently
+         * or stops it if it shouldn't be running but currently is.
+         */
+        private void updateTimer() {
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "updateTimer");
+            }
+            mUpdateTimeHandler.removeMessages(MSG_UPDATE_TIME);
+            if (shouldTimerBeRunning()) {
+                mUpdateTimeHandler.sendEmptyMessage(MSG_UPDATE_TIME);
+            }
+        }
+
+        /**
+         * Returns whether the {@link #mUpdateTimeHandler} timer should be running. The timer should
+         * only run when we're visible and in interactive mode.
+         */
+        private boolean shouldTimerBeRunning() {
+            return isVisible() && !isInAmbientMode();
+        }
+
         private void updateConfigDataItemAndUiOnStartup() {
             DigitalWatchFaceUtil.fetchConfigDataMap(mGoogleApiClient,
                     new DigitalWatchFaceUtil.FetchConfigDataMapCallback() {
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceWearableConfigActivity.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceWearableConfigActivity.java
index a2e5251..4b309e6 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceWearableConfigActivity.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/DigitalWatchFaceWearableConfigActivity.java
@@ -16,16 +16,23 @@
 
 package com.example.android.wearable.watchface;
 
+import android.animation.AnimatorSet;
+import android.animation.ObjectAnimator;
 import android.app.Activity;
+import android.content.Context;
 import android.graphics.Color;
 import android.os.Bundle;
 import android.support.v7.widget.LinearLayoutManager;
 import android.support.v7.widget.RecyclerView;
+import android.support.wearable.view.BoxInsetLayout;
+import android.support.wearable.view.CircledImageView;
 import android.support.wearable.view.WearableListView;
 import android.util.Log;
 import android.view.LayoutInflater;
 import android.view.View;
 import android.view.ViewGroup;
+import android.view.WindowInsets;
+import android.widget.LinearLayout;
 import android.widget.TextView;
 
 import com.google.android.gms.common.ConnectionResult;
@@ -37,25 +44,39 @@
  * The watch-side config activity for {@link DigitalWatchFaceService}, which allows for setting the
  * background color.
  */
-public class DigitalWatchFaceWearableConfigActivity extends Activity
-        implements WearableListView.ClickListener {
+public class DigitalWatchFaceWearableConfigActivity extends Activity implements
+        WearableListView.ClickListener, WearableListView.OnScrollListener {
     private static final String TAG = "DigitalWatchFaceConfig";
 
     private GoogleApiClient mGoogleApiClient;
+    private TextView mHeader;
 
     @Override
     protected void onCreate(Bundle savedInstanceState) {
         super.onCreate(savedInstanceState);
         setContentView(R.layout.activity_digital_config);
 
+        mHeader = (TextView) findViewById(R.id.header);
         WearableListView listView = (WearableListView) findViewById(R.id.color_picker);
+        BoxInsetLayout content = (BoxInsetLayout) findViewById(R.id.content);
+        // BoxInsetLayout adds padding by default on round devices. Add some on square devices.
+        content.setOnApplyWindowInsetsListener(new View.OnApplyWindowInsetsListener() {
+            @Override
+            public WindowInsets onApplyWindowInsets(View v, WindowInsets insets) {
+                if (!insets.isRound()) {
+                    v.setPaddingRelative(
+                            (int) getResources().getDimensionPixelSize(R.dimen.content_padding_start),
+                            v.getPaddingTop(),
+                            v.getPaddingEnd(),
+                            v.getPaddingBottom());
+                }
+                return v.onApplyWindowInsets(insets);
+            }
+        });
 
         listView.setHasFixedSize(true);
         listView.setClickListener(this);
-
-        LinearLayoutManager layoutManager = new LinearLayoutManager(this);
-        layoutManager.setOrientation(LinearLayoutManager.VERTICAL);
-        listView.setLayoutManager(layoutManager);
+        listView.addOnScrollListener(this);
 
         String[] colors = getResources().getStringArray(R.array.color_array);
         listView.setAdapter(new ColorListAdapter(colors));
@@ -105,11 +126,28 @@
     @Override // WearableListView.ClickListener
     public void onClick(WearableListView.ViewHolder viewHolder) {
         ColorItemViewHolder colorItemViewHolder = (ColorItemViewHolder) viewHolder;
-        String colorName = colorItemViewHolder.mLabel.getText().toString();
-        updateConfigDataItem(Color.parseColor(colorName));
+        updateConfigDataItem(colorItemViewHolder.mColorItem.getColor());
         finish();
     }
 
+    @Override // WearableListView.ClickListener
+    public void onTopEmptyRegionClick() {}
+
+    @Override // WearableListView.OnScrollListener
+    public void onScroll(int scroll) {}
+
+    @Override // WearableListView.OnScrollListener
+    public void onAbsoluteScrollChange(int scroll) {
+        float newTranslation = Math.min(-scroll, 0);
+        mHeader.setTranslationY(newTranslation);
+    }
+
+    @Override // WearableListView.OnScrollListener
+    public void onScrollStateChanged(int scrollState) {}
+
+    @Override // WearableListView.OnScrollListener
+    public void onCentralPositionChanged(int centralPosition) {}
+
     private void updateConfigDataItem(final int backgroundColor) {
         DataMap configKeysToOverwrite = new DataMap();
         configKeysToOverwrite.putInt(DigitalWatchFaceUtil.KEY_BACKGROUND_COLOR,
@@ -117,11 +155,7 @@
         DigitalWatchFaceUtil.overwriteKeysInConfigDataMap(mGoogleApiClient, configKeysToOverwrite);
     }
 
-    @Override // WearableListView.ClickListener
-    public void onTopEmptyRegionClick() { }
-
-    private class ColorListAdapter extends RecyclerView.Adapter<ColorItemViewHolder> {
-
+    private class ColorListAdapter extends WearableListView.Adapter {
         private final String[] mColors;
 
         public ColorListAdapter(String[] colors) {
@@ -130,16 +164,14 @@
 
         @Override
         public ColorItemViewHolder onCreateViewHolder(ViewGroup parent, int viewType) {
-            View root = LayoutInflater.from(parent.getContext())
-                    .inflate(R.layout.color_picker_item, parent, false /* attachToRoot */);
-            TextView label = (TextView) root.findViewById(R.id.label);
-            return new ColorItemViewHolder(root, label);
+            return new ColorItemViewHolder(new ColorItem(parent.getContext()));
         }
 
         @Override
-        public void onBindViewHolder(ColorItemViewHolder holder, int position) {
+        public void onBindViewHolder(WearableListView.ViewHolder holder, int position) {
+            ColorItemViewHolder colorItemViewHolder = (ColorItemViewHolder) holder;
             String colorName = mColors[position];
-            holder.mLabel.setText(colorName);
+            colorItemViewHolder.mColorItem.setColor(colorName);
 
             RecyclerView.LayoutParams layoutParams =
                     new RecyclerView.LayoutParams(ViewGroup.LayoutParams.MATCH_PARENT,
@@ -154,7 +186,7 @@
             } else {
                 layoutParams.setMargins(0, 0, 0, 0);
             }
-            holder.itemView.setLayoutParams(layoutParams);
+            colorItemViewHolder.itemView.setLayoutParams(layoutParams);
         }
 
         @Override
@@ -163,12 +195,104 @@
         }
     }
 
-    private static class ColorItemViewHolder extends WearableListView.ViewHolder {
-        private final TextView mLabel;
+    /** The layout of a color item including image and label. */
+    private static class ColorItem extends LinearLayout implements
+            WearableListView.OnCenterProximityListener {
+        /** The duration of the expand/shrink animation. */
+        private static final int ANIMATION_DURATION_MS = 150;
+        /** The ratio for the size of a circle in shrink state. */
+        private static final float SHRINK_CIRCLE_RATIO = .75f;
 
-        public ColorItemViewHolder(View root, TextView label) {
-            super(root);
-            this.mLabel = label;
+        private static final float SHRINK_LABEL_ALPHA = .5f;
+        private static final float EXPAND_LABEL_ALPHA = 1f;
+
+        private final TextView mLabel;
+        private final CircledImageView mColor;
+
+        private final float mExpandCircleRadius;
+        private final float mShrinkCircleRadius;
+
+        private final ObjectAnimator mExpandCircleAnimator;
+        private final ObjectAnimator mExpandLabelAnimator;
+        private final AnimatorSet mExpandAnimator;
+
+        private final ObjectAnimator mShrinkCircleAnimator;
+        private final ObjectAnimator mShrinkLabelAnimator;
+        private final AnimatorSet mShrinkAnimator;
+
+        public ColorItem(Context context) {
+            super(context);
+            View.inflate(context, R.layout.color_picker_item, this);
+
+            mLabel = (TextView) findViewById(R.id.label);
+            mColor = (CircledImageView) findViewById(R.id.color);
+
+            mExpandCircleRadius = mColor.getCircleRadius();
+            mShrinkCircleRadius = mExpandCircleRadius * SHRINK_CIRCLE_RATIO;
+
+            mShrinkCircleAnimator = ObjectAnimator.ofFloat(mColor, "circleRadius",
+                    mExpandCircleRadius, mShrinkCircleRadius);
+            mShrinkLabelAnimator = ObjectAnimator.ofFloat(mLabel, "alpha",
+                    EXPAND_LABEL_ALPHA, SHRINK_LABEL_ALPHA);
+            mShrinkAnimator = new AnimatorSet().setDuration(ANIMATION_DURATION_MS);
+            mShrinkAnimator.playTogether(mShrinkCircleAnimator, mShrinkLabelAnimator);
+
+            mExpandCircleAnimator = ObjectAnimator.ofFloat(mColor, "circleRadius",
+                    mShrinkCircleRadius, mExpandCircleRadius);
+            mExpandLabelAnimator = ObjectAnimator.ofFloat(mLabel, "alpha",
+                    SHRINK_LABEL_ALPHA, EXPAND_LABEL_ALPHA);
+            mExpandAnimator = new AnimatorSet().setDuration(ANIMATION_DURATION_MS);
+            mExpandAnimator.playTogether(mExpandCircleAnimator, mExpandLabelAnimator);
+        }
+
+        @Override
+        public void onCenterPosition(boolean animate) {
+            if (animate) {
+                mShrinkAnimator.cancel();
+                if (!mExpandAnimator.isRunning()) {
+                    mExpandCircleAnimator.setFloatValues(mColor.getCircleRadius(), mExpandCircleRadius);
+                    mExpandLabelAnimator.setFloatValues(mLabel.getAlpha(), EXPAND_LABEL_ALPHA);
+                    mExpandAnimator.start();
+                }
+            } else {
+                mExpandAnimator.cancel();
+                mColor.setCircleRadius(mExpandCircleRadius);
+                mLabel.setAlpha(EXPAND_LABEL_ALPHA);
+            }
+        }
+
+        @Override
+        public void onNonCenterPosition(boolean animate) {
+            if (animate) {
+                mExpandAnimator.cancel();
+                if (!mShrinkAnimator.isRunning()) {
+                    mShrinkCircleAnimator.setFloatValues(mColor.getCircleRadius(), mShrinkCircleRadius);
+                    mShrinkLabelAnimator.setFloatValues(mLabel.getAlpha(), SHRINK_LABEL_ALPHA);
+                    mShrinkAnimator.start();
+                }
+            } else {
+                mShrinkAnimator.cancel();
+                mColor.setCircleRadius(mShrinkCircleRadius);
+                mLabel.setAlpha(SHRINK_LABEL_ALPHA);
+            }
+        }
+
+        private void setColor(String colorName) {
+            mLabel.setText(colorName);
+            mColor.setCircleColor(Color.parseColor(colorName));
+        }
+
+        private int getColor() {
+            return mColor.getDefaultCircleColor();
+        }
+    }
+
+    private static class ColorItemViewHolder extends WearableListView.ViewHolder {
+        private final ColorItem mColorItem;
+
+        public ColorItemViewHolder(ColorItem colorItem) {
+            super(colorItem);
+            mColorItem = colorItem;
         }
     }
 }
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/SweepWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/SweepWatchFaceService.java
index 5fc738b..44e9569 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/SweepWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/SweepWatchFaceService.java
@@ -24,6 +24,7 @@
 import android.graphics.Bitmap;
 import android.graphics.Canvas;
 import android.graphics.Paint;
+import android.graphics.Rect;
 import android.graphics.drawable.BitmapDrawable;
 import android.graphics.drawable.Drawable;
 import android.os.Bundle;
@@ -141,6 +142,9 @@
         @Override
         public void onAmbientModeChanged(boolean inAmbientMode) {
             super.onAmbientModeChanged(inAmbientMode);
+            if (Log.isLoggable(TAG, Log.DEBUG)) {
+                Log.d(TAG, "onAmbientModeChanged: " + inAmbientMode);
+            }
             if (mLowBitAmbient) {
                 boolean antiAlias = !inAmbientMode;
                 mHourPaint.setAntiAlias(antiAlias);
@@ -165,7 +169,7 @@
         }
 
         @Override
-        public void onDraw(Canvas canvas) {
+        public void onDraw(Canvas canvas, Rect bounds) {
             if (Log.isLoggable(TAG, Log.VERBOSE)) {
                 Log.v(TAG, "onDraw");
             }
@@ -173,8 +177,8 @@
             mTime.set(now);
             int milliseconds = (int) (now % 1000);
 
-            int width = canvas.getWidth();
-            int height = canvas.getHeight();
+            int width = bounds.width();
+            int height = bounds.height();
 
             // Draw the background, scaled to fit.
             if (mBackgroundScaledBitmap == null
@@ -228,8 +232,8 @@
             float hrY = (float) -Math.cos(hrRot) * hrLength;
             canvas.drawLine(centerX, centerY, centerX + hrX, centerY + hrY, mHourPaint);
 
-            // Draw every frame as long as we're visible.
-            if (isVisible()) {
+            // Draw every frame as long as we're visible and in interactive mode.
+            if (isVisible() && !isInAmbientMode()) {
                 invalidate();
             }
         }
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/TiltWatchFaceService.java b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/TiltWatchFaceService.java
index ce90d77..6dd01b0 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/TiltWatchFaceService.java
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/java/com/example/android/wearable/watchface/TiltWatchFaceService.java
@@ -219,13 +219,10 @@
         @Override
         public void onGlSurfaceCreated(int width, int height) {
             if (Log.isLoggable(TAG, Log.DEBUG)) {
-                Log.d(TAG, "onGlSurfaceCreated");
+                Log.d(TAG, "onGlSurfaceCreated: " + width + " x " + height);
             }
             super.onGlSurfaceCreated(width, height);
 
-            // Adjust the viewport based on geometry changes such as screen rotation.
-            GLES20.glViewport(0, 0, width, height);
-
             // Update the projection matrix based on the new aspect ratio.
             final float aspectRatio = (float) width / height;
             Matrix.frustumM(mProjectionMatrix,
@@ -472,8 +469,8 @@
                 mMinorTickTriangles.draw(vpMatrix);
             }
 
-            // Draw every frame as long as we're visible.
-            if (isVisible()) {
+            // Draw every frame as long as we're visible and in interactive mode.
+            if (isVisible() && !isInAmbientMode()) {
                 invalidate();
             }
         }
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_analog_circular.png b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_analog_circular.png
new file mode 100644
index 0000000..a3affe2
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_analog_circular.png
Binary files differ
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_calendar_circular.png b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_calendar_circular.png
new file mode 100644
index 0000000..cb1d27b
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_calendar_circular.png
Binary files differ
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_card_bounds_circular.png b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_card_bounds_circular.png
new file mode 100644
index 0000000..387f59e
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_card_bounds_circular.png
Binary files differ
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_digital_circular.png b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_digital_circular.png
new file mode 100644
index 0000000..efeac34
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_digital_circular.png
Binary files differ
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_tilt_circular.png b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_tilt_circular.png
new file mode 100644
index 0000000..31d3a1f
--- /dev/null
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/drawable-hdpi/preview_tilt_circular.png
Binary files differ
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/activity_digital_config.xml b/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/activity_digital_config.xml
index eef7aae..a368390 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/activity_digital_config.xml
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/activity_digital_config.xml
@@ -13,25 +13,27 @@
  See the License for the specific language governing permissions and
  limitations under the License.
 -->
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
+<android.support.wearable.view.BoxInsetLayout xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:app="http://schemas.android.com/apk/res-auto"
+    android:id="@+id/content"
     android:layout_width="match_parent"
     android:layout_height="match_parent"
-    android:orientation="vertical"
-    android:background="#ffffff">
+    android:background="@color/config_activity_background">
     <TextView
         android:id="@+id/header"
         android:layout_width="match_parent"
         android:layout_height="wrap_content"
         android:layout_marginLeft="16dp"
         android:layout_marginTop="14dp"
-        android:layout_gravity="center_horizontal"
-        android:textSize="22sp"
-        android:textColor="#a2a2a2"
+        android:textSize="24sp"
+        android:textColor="@color/config_activity_header_text_color"
         android:text="@string/digital_background_color"
-        android:fontFamily="sans-serif-condensed-light"/>
+        android:fontFamily="sans-serif-condensed-light"
+        app:layout_box="left|top"/>
     <android.support.wearable.view.WearableListView
         android:id="@+id/color_picker"
         android:layout_width="match_parent"
         android:layout_height="match_parent"
-        android:background="@android:color/transparent"/>
-</LinearLayout>
+        android:background="@android:color/transparent"
+        app:layout_box="left|right"/>
+</android.support.wearable.view.BoxInsetLayout>
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/color_picker_item.xml b/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/color_picker_item.xml
index e7edb39..9b07e2a 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/color_picker_item.xml
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/layout/color_picker_item.xml
@@ -13,14 +13,26 @@
  See the License for the specific language governing permissions and
  limitations under the License.
 -->
-<TextView
+<merge
     xmlns:android="http://schemas.android.com/apk/res/android"
-    android:id="@+id/label"
-    android:fontFamily="sans-serif-condensed-light"
-    android:layout_width="match_parent"
-    android:layout_height="wrap_content"
-    android:gravity="center_horizontal"
-    android:paddingTop="20dp"
-    android:paddingBottom="20dp"
-    android:textColor="#000000"
-    android:textSize="18sp"/>
+    xmlns:app="http://schemas.android.com/apk/res-auto">
+
+    <android.support.wearable.view.CircledImageView
+        android:id="@+id/color"
+        android:layout_width="52dp"
+        android:layout_height="52dp"
+        android:layout_gravity="center_vertical"
+        app:circle_border_color="@color/color_item_circle_border_color"
+        app:circle_radius="26dp"
+        app:circle_border_width="1dp"/>
+
+    <TextView
+        android:id="@+id/label"
+        android:fontFamily="sans-serif-condensed-light"
+        android:layout_width="wrap_content"
+        android:layout_height="wrap_content"
+        android:layout_gravity="center_vertical"
+        android:layout_marginLeft="10dp"
+        android:textColor="@color/color_item_label_color"
+        android:textSize="18sp"/>
+</merge>
\ No newline at end of file
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/color.xml b/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/color.xml
index 2ba1355..0da08ed 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/color.xml
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/color.xml
@@ -16,4 +16,8 @@
 <resources>
     <color name="digital_am_pm">#aaaaa0</color>
     <color name="digital_colons">#aaaaa0</color>
+    <color name="config_activity_background">#ffffff</color>
+    <color name="config_activity_header_text_color">#959595</color>
+    <color name="color_item_label_color">#000000</color>
+    <color name="color_item_circle_border_color">#424242</color>
 </resources>
diff --git a/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/dimens.xml b/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/dimens.xml
index b9c4c86..8f04e56 100644
--- a/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/dimens.xml
+++ b/prebuilts/gradle/WatchFace/Wearable/src/main/res/values/dimens.xml
@@ -22,4 +22,5 @@
     <dimen name="digital_x_offset_round">25dp</dimen>
     <dimen name="digital_y_offset">90dp</dimen>
     <dimen name="digital_config_color_picker_item_margin">32dp</dimen>
+    <dimen name="content_padding_start">12dp</dimen>
 </resources>
diff --git a/prebuilts/gradle/WatchFace/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/WatchFace/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/WatchFace/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/WatchFace/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip
diff --git a/prebuilts/gradle/WatchViewStub/.google/packaging.yaml b/prebuilts/gradle/WatchViewStub/.google/packaging.yaml
new file mode 100644
index 0000000..bc841c8
--- /dev/null
+++ b/prebuilts/gradle/WatchViewStub/.google/packaging.yaml
@@ -0,0 +1,17 @@
+# GOOGLE SAMPLE PACKAGING DATA
+#
+# This file is used by Google as part of our samples packaging process.
+# End users may safely ignore this file. It has no relevance to other systems.
+---
+status:       PUBLISHED
+technologies: [Android]
+categories:   [Wearable]
+languages:    [Java]
+solutions:    [Mobile]
+github:       android-WatchViewStub
+level:        INTERMEDIATE
+icon:         Wearable/src/main/res/drawable-xxhdpi/ic_launcher.png
+apiRefs:
+    - android:android.support.wearable.view.WatchViewStub
+    - android:android.support.wearable.view.WatchViewStub.OnLayoutInflatedListener
+license: apache2
diff --git a/prebuilts/gradle/WatchViewStub/Application/build.gradle b/prebuilts/gradle/WatchViewStub/Application/build.gradle
index 80aa1d0..b21de8a 100644
--- a/prebuilts/gradle/WatchViewStub/Application/build.gradle
+++ b/prebuilts/gradle/WatchViewStub/Application/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -14,7 +14,7 @@
 dependencies {
 
 
-    compile 'com.google.android.gms:play-services:6.5.+'
+    compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     wearApp project(':Wearable')
 }
@@ -30,11 +30,13 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
 
     defaultConfig {
         minSdkVersion 18
         targetSdkVersion 21
+        versionCode 1
+        versionName "1.0"
     }
 
     sourceSets {
diff --git a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md b/prebuilts/gradle/WatchViewStub/CONTRIBUTING.md
similarity index 91%
copy from prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
copy to prebuilts/gradle/WatchViewStub/CONTRIBUTING.md
index 14a4fcf..faa8b5c 100644
--- a/prebuilts/gradle/DocumentCentricRelinquishIdentity/CONTRIB.md
+++ b/prebuilts/gradle/WatchViewStub/CONTRIBUTING.md
@@ -9,10 +9,10 @@
 
   * If you are an individual writing original source code and you're sure you
     own the intellectual property, then you'll need to sign an [individual CLA]
-    (https://developers.google.com/open-source/cla/individual).
+    (https://cla.developers.google.com).
   * If you work for a company that wants to allow you to contribute your work,
     then you'll need to sign a [corporate CLA]
-    (https://developers.google.com/open-source/cla/corporate).
+    (https://cla.developers.google.com).
 
 Follow either of the two links above to access the appropriate CLA and
 instructions for how to sign and return it. Once we receive it, we'll be able to
diff --git a/prebuilts/gradle/WatchViewStub/NOTICE b/prebuilts/gradle/WatchViewStub/NOTICE
new file mode 100644
index 0000000..7eede3d
--- /dev/null
+++ b/prebuilts/gradle/WatchViewStub/NOTICE
@@ -0,0 +1,15 @@
+This sample uses the following software:
+
+Copyright 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.
diff --git a/prebuilts/gradle/WatchViewStub/README.md b/prebuilts/gradle/WatchViewStub/README.md
new file mode 100644
index 0000000..bb42487
--- /dev/null
+++ b/prebuilts/gradle/WatchViewStub/README.md
@@ -0,0 +1,63 @@
+Android WatchViewStub Sample
+===================================
+
+This sample demonstrates how to specify different layouts for round and rectangular screens.
+
+Introduction
+------------
+
+It is a basic sample that displays a round layout on a round watch and a rectangular one on a
+rectangular watch.
+
+The corresponding layout is being inflated by the system. This sample shows a way to handle
+this programatically by using a `WatchViewStub.OnLayoutInflateListener`.
+
+Pre-requisites
+--------------
+
+- Android SDK v21
+- Android Build Tools v21.1.1
+- Android Support Repository
+
+Screenshots
+-------------
+
+<img src="screenshots/watch_view_stub_rectangular.png" height="400" alt="Screenshot"/> <img src="screenshots/watch_view_stub_round.png" height="400" alt="Screenshot"/> 
+
+Getting Started
+---------------
+
+This sample uses the Gradle build system. To build this project, use the
+"gradlew build" command or use "Import Project" in Android Studio.
+
+Support
+-------
+
+- Google+ Community: https://plus.google.com/communities/105153134372062985968
+- Stack Overflow: http://stackoverflow.com/questions/tagged/android
+
+If you've found an error in this sample, please file an issue:
+https://github.com/googlesamples/android-WatchViewStub
+
+Patches are encouraged, and may be submitted by forking this project and
+submitting a pull request through GitHub. Please see CONTRIBUTING.md for more details.
+
+License
+-------
+
+Copyright 2014 The Android Open Source Project, Inc.
+
+Licensed to the Apache Software Foundation (ASF) under one or more contributor
+license agreements.  See the NOTICE file distributed with this work for
+additional information regarding copyright ownership.  The ASF licenses this
+file to you 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.
diff --git a/prebuilts/gradle/WatchViewStub/Wearable/build.gradle b/prebuilts/gradle/WatchViewStub/Wearable/build.gradle
index 2f6c2c2..0ea85d5 100644
--- a/prebuilts/gradle/WatchViewStub/Wearable/build.gradle
+++ b/prebuilts/gradle/WatchViewStub/Wearable/build.gradle
@@ -4,7 +4,7 @@
     }
 
     dependencies {
-        classpath 'com.android.tools.build:gradle:0.12.+'
+        classpath 'com.android.tools.build:gradle:1.0.0-rc1'
     }
 }
 
@@ -13,6 +13,8 @@
 
 
 dependencies {
+
+
     compile 'com.google.android.gms:play-services-wearable:6.5.+'
     compile 'com.android.support:support-v13:21.0.+'
     compile 'com.google.android.support:wearable:1.1.+'
@@ -29,11 +31,16 @@
 android {
     compileSdkVersion 21
 
-    buildToolsVersion "21.0.0"
+    buildToolsVersion "21.1.1"
+
+    defaultConfig {
+        versionCode 1
+        versionName "1.0"
+    }
 
     buildTypes {
         release {
-            runProguard false
+            minifyEnabled false
             proguardFiles getDefaultProguardFile('proguard-android.txt')
         }
     }
diff --git a/prebuilts/gradle/WatchViewStub/gradle/wrapper/gradle-wrapper.properties b/prebuilts/gradle/WatchViewStub/gradle/wrapper/gradle-wrapper.properties
index d7f03cf..0c71e76 100644
--- a/prebuilts/gradle/WatchViewStub/gradle/wrapper/gradle-wrapper.properties
+++ b/prebuilts/gradle/WatchViewStub/gradle/wrapper/gradle-wrapper.properties
@@ -3,4 +3,4 @@
 distributionPath=wrapper/dists
 zipStoreBase=GRADLE_USER_HOME
 zipStorePath=wrapper/dists
-distributionUrl=http\://services.gradle.org/distributions/gradle-1.12-bin.zip
+distributionUrl=https\://services.gradle.org/distributions/gradle-2.2.1-all.zip