From 289e9c1d9fad2035dac0ca57d573a35fabb451a4 Mon Sep 17 00:00:00 2001
From: Bert McMeen
+ Wear 2.0 is still in active development, but you can try it as part of
+ the Wear 2.0 Developer Preview. The sections below highlight some of the
+ new features for developers.
+
- The Android Wear Preview API is still in active development, but you can try
- it now as part of the Wear 2.0 Developer Preview. The sections below
- highlight some of the new features for Android Wear developers.
-
+ The preview introduces powerful additions to the user interface, opening
+ up exciting possibilities to developers.
+
+ A complication
+ is a feature of a watch face that displays more than hours and minutes,
+ such as a battery indicator or a step counter. The Complications API thus
+ helps watch face developers create visual features and the data
+ connections they require.
+
- The preview introduces powerful additions to the user interface, opening up
- exciting possibilities to developers. A complication
- is any feature in a watch face that displays more than hours and
- minutes. With the Complications API, watch faces can display extra information
- and separate apps can expose complication data. The navigation and action
- drawers provide users with new ways to interact with apps.
-
+ Watch faces that use this API can display extra information without
+ needing code for getting the underlying data. Data providers can supply
+ data to any watch face using the API.
+
+ For information about this API, see Watch Face
+ Complications.
+
- A complication is a
- feature of a watch face that displays more than hours and minutes, such as a
- battery indicator or a step counter. The Complications API thus helps watch face
- developers create visual features and the data connections they
- require.
-
+ Wear 2.0 introduces two new widgets, navigation drawer and action drawer.
+ These widgets give your users new ways to interact with your app. The
+ navigation drawer appears at the top of the screen and allows users to
+ navigate between app views. The action drawer appears at the bottom of
+ the screen and allows users to choose from a list of actions associated
+ with the current usage context. These drawers are accessible to users
+ when they edge swipe from the top or bottom of the screen; they peek when
+ users scroll in an opposite direction.
+
- Watch faces that use this API can display extra information without needing
- code for getting the underlying data. Data providers can supply data to any
- watch face using the API.
-
+ To learn how to add these widgets to your app, see Wear Navigation and
+ Actions.
+ Wear 2.0 introduces two new widgets, navigation drawer and action drawer. These
- widgets give your users new ways to interact with your app. The navigation drawer
- appears at the top of the screen and allows users to navigate between app views.
- The action drawer appears at the bottom of the screen and allows users to choose
- from a list of actions associated with the current usage context. These drawers
- are accessible to users when they edge swipe from the top or bottom of the
- screen; they peek when users scroll in an opposite direction.
-
+ Wear 2.0 introduces the
- To learn how to add these widgets to your app, see
-
- Wear Navigation and Actions.
-
+ The key features include the following:
+ In Wear 2.0, we’ve redesigned the key experiences on the watch to be even more
- intuitive and provide users new ways to respond to messages. Some of the highlights
- are below; for a complete list of changes, see
- Notification Changes in Wear 2.0.
+
+ To learn how to create a curved layout optimized for round devices, see
+
+ Curved Layout.
+
+ In Wear 2.0, we’ve redesigned the key experiences on the watch to be even
+ more intuitive and provide users new ways to respond to messages. Some of
+ the highlights are below; for a complete list of changes, see Notification Changes
+ in Wear 2.0.
- When a user taps on a notification that is bridged from the phone to the
- watch or that lacks a
-
- {@code contentIntent}, the user will be taken to the expanded view of
- that notification. When you specify additional
- content pages and actions for a notification, those are available to the
- user within the expanded notification. Each expanded notification follows
- Material Design for Android
- Wear, so the user gets an app-like experience.
-
+ When a user taps on a notification that is bridged from the phone to the
+ watch or that lacks a
+ {@code contentIntent}, the user will be taken to the expanded view of
+ that notification. When you specify
+ additional content pages and actions for a notification, those are
+ available to the user within the expanded notification. Each expanded
+ notification follows Material Design for Android
+ Wear, so the user gets an app-like experience.
+ If you have a chat messaging app, your notifications should use
-{@code Notification.MessagingStyle}, which is new in Android 6.0. Wear 2.0 uses
-the chat messages included in a
-{@code MessagingStyle}
- notification
-(see {@code addMessage()}) to provide a rich chat app-like experience in the
-expanded notification.
-
+ If you have a chat messaging app, your notifications should use {@code
+ Notification.MessagingStyle}, which is new in Android 6.0. Wear 2.0 uses
+ the chat messages included in a {@code
+ MessagingStyle} notification (see {@code addMessage()}) to provide a
+ rich chat, app-like experience in the expanded notification.
+ Android Wear 2.0 introduces support for Smart Reply in
-{@code MessagingStyle}
- notifications. Smart Reply provides the user with contextually relevant,
- touchable choices in the expanded notification and in
- {@code RemoteInput}.
-
+ Wear 2.0 enables you to add an inline action within the notification
+ stream so that users can quickly take an action on a notification.
+ Examples of good use cases for an inline action within a notification stream
+ include replying to a text message, stopping a fitness activity, or
+ archiving an email message.
+ By enabling Smart Reply for your {@code MessagingStyle} notifications, you provide
-users a fast (single tap), discreet (no speaking aloud), and reliable way to respond
- to chat messages they receive.
-
+ To learn how to add an inline action to your notification stream, see
+
+ Inline Action.
+
+ Android Wear 2.0 introduces support for Smart Reply in {@code
+ MessagingStyle} notifications. Smart Reply provides the user with
+ contextually relevant, touchable choices in the expanded notification and
+ in {@code
+ RemoteInput}.
+
+ By enabling Smart Reply for your {@code MessagingStyle} notifications,
+ you provide users a fast (single tap), discreet (no speaking aloud), and
+ reliable way to respond to chat messages they receive.
+ Wear 2.0 users can choose between various input options from
-Remote Input.
- These options include:
-
-For messaging notifications with Smart Reply, the system-generated Smart Reply
- appears within {@code RemoteInput}
- above the developer-provided list of canned responses.
- You can also use the
- setChoices()
- method in the {@code RemoteInput} API to enable users to select from a list
- of canned responses.
- By default, notifications are
-
-bridged (shared) from an app on a companion phone
-to the watch. Since a phone app and a standalone watch app may be sources of the
- same notifications, the Android Wear 2.0 Preview includes a Bridging mode feature.
- Developers can begin planning to change the behavior of notifications with the
- following:
-
+ Wear 2.0 users can choose between various input options from Remote Input.
+ These options include:
+ For an example of how to use this feature, see
-Bridging Mode for Notifications. Wear 2.0 extends the Android input method framework (IMF) to Android Wear.
-This allows users to enter text on Wear using the system default IME or third party
- IMEs. The Wear IME lets the user enter text via gesture typing as well as tapping
- individual keys. The IMF APIs used for Wear devices are the same as other form
- factors, though usage is slightly different due to limited screen real estate.
- Wear provides user settings on the watch that let the user: To learn how to create an IME for Wear, see
-Input Method Framework.
-
+ For messaging notifications with Smart Reply, the system-generated Smart
+ Reply appears within {@code
+ RemoteInput} above the developer-provided list of canned responses.
+ You can also use the
+ setChoices() method in the {@code RemoteInput} API to enable users to
+ select from a list of canned responses.
+
- Wrist gestures can enable quick, one-handed interactions with your app
- when use of a touch screen is inconvenient. The following
- wrist gestures
- are available for use by apps:
-
+ By default, notifications are bridged
+ (shared) from an app on a companion phone to the watch. Since a phone app
+ and a standalone watch app may be sources of the same notifications, the
+ Android Wear 2.0 Preview includes a Bridging mode feature.
+
+ For information about this feature, see Bridging Mode for
+ Notifications.
+ For more information, see
-
- Wrist Gestures.
-
+ Wear 2.0 extends the Android input method framework (IMF) to Android
+ Wear. This allows users to enter text on Wear using the system default
+ IME or third party IMEs. The Wear IME lets the user enter text via
+ gesture typing as well as tapping individual keys. The IMF APIs used for
+ Wear devices are the same as other form factors, though usage is slightly
+ different due to limited screen real estate.
+ Standalone watches will enable Android Wear apps to work independently of phone
- apps. This means your app can continue to offer full functionality even if the
- paired phone is far away or turned off.
+ Wear provides user settings on the watch that let the user:
+ For delivery to a watch, an Android Wear app is currently embedded in its corresponding
-phone app. This delivery method can result in an increased download size for users,
- regardless of whether they have an Android Wear device.
- With standalone devices, the
-Multi-APK
- delivery method will be used. Developers will have the ability to release Android
- Wear apps independently of the corresponding phone apps. Please stay tuned for
- more information about this change.
-
+ To learn how to create an IME for Wear, see Input Method Framework.
+ Since Android Wear apps will work independently of phone apps, Android Wear's
- network access will no longer require the
-
- Wearable Data Layer API. Android Wear apps will have the ability to make
- their own network requests. Additionally, they will be able to directly use
- Google Cloud Messaging.
- No APIs for network access or GCM are specific to Android Wear; refer to the
-existing documentation about
-
-Connecting to the Network and
-Cloud Messaging.
-
+ Wrist gestures can enable quick, one-handed interactions with your app
+ when use of a touch screen is inconvenient. The following wrist
+ gestures are available for use by apps:
+ We recommend using the following libraries: You will still be able to use the
-
- Wearable Data Layer API to communicate with a phone app.
- However, use of this API to connect to a network will be discouraged.
-
+ For more information, see Wrist Gestures.
+ Since Android Wear apps will work independently of phone apps, Android Wear's
- authentication capabilities will be more powerful; apps will have new ways to
- authenticate.
+ Standalone watches enable Android Wear apps to work independently of
+ phone apps. This means your app can continue to offer full functionality
+ even if the paired phone is far away or turned off.
+ Google Keyboard will be standard on Android Wear, allowing for direct text
-entry. This feature will work as expected with standard
-EditText widgets.
-For passwords, the {@code textPassword} attribute will be used.
+ For delivery to a watch, an Android Wear app is currently embedded in its
+ corresponding phone app. This delivery method can result in an increased
+ download size for users, regardless of whether they have an Android Wear
+ device.
+
+ For information about planning and building your standalone app
+ for Wear 2.0, see
+ Standalone Apps.
+ Android Wear will include the
-
-AccountManager, which will be accessible for syncing and storing account
-data, as it is on an Android phone.
+ For information about distributing your app, see
+ App Distribution.
+ For Android-paired watches (only), a phone securely
-transfers authentication credentials to a watch app via the
-
-Wearable Data Layer API. The credentials can be transferred as
-messages or data items.
+ Since Android Wear apps will work independently of phone apps, Android
+ Wear's network access will no longer require the Wearable Data Layer
+ API. Android Wear apps will have the ability to make their own
+ network requests. Additionally, they will be able to directly use Google
+ Cloud Messaging. For more information, see
+
+ Network Access and Cloud Messaging.
+ If your watch app needs to determine if your phone app is installed, you can
-advertise a capability on the phone app and retrieve the capability on the
-watch. For more information, see the following sections of
-
-Sending and Receiving Messages:
+ No APIs for network access or GCM are specific to Android Wear; refer to
+ the existing documentation about Connecting to the
+ Network and Cloud Messaging.
+
+ We recommend using the following libraries:
+
+ The Wearable Data Layer
+ API is available to communicate with a phone app.
+ However, use of this API to connect to a network will be discouraged.
+
+ Since Android Wear apps will work independently of phone apps, Android
+ Wear's authentication capabilities will be more powerful; apps will have
+ new ways to authenticate.
+
+ Google Keyboard will be standard on Android Wear, allowing for direct
+ text entry. This feature will work as expected with standard EditText widgets.
+ For passwords, the {@code textPassword} attribute will be used.
+
+ Android Wear will include the AccountManager,
+ which will be accessible for syncing and storing account data, as it is
+ on an Android phone.
+
+ For Android-paired watches (only), a phone securely transfers
+ authentication credentials to a watch app via the Wearable Data Layer
+ API. The credentials can be transferred as messages or data items.
+
+ If your watch app needs to determine if your phone app is installed, you
+ can advertise a capability on the phone app and retrieve the capability
+ on the watch. For more information, see the following sections of
+ Sending
+ and Receiving Messages:
+
-
+ User Interface Improvements
+
-
+ Complications
+
-User Interface Improvements
+
+ Complications
-
+
+ Navigation and Action Drawers
+
-Navigation and Action drawers
+
+ Curved Layout
+
-
-
- WearableRecyclerView class for
+ displaying and manipulating a vertical list of items,
+ optimized for round displays.
+
+
-Notifications and Input
+
+ Notifications and Input
+
-
-Expanded notifications
+
+
+ Expanded Notifications
+
+ Messaging Style notification
-
+ Messaging Style Notifications
+
+ Smart Reply
+
+ Inline Action
+
-
+ Smart Reply
+
-
+ Remote Input
+
-
+
-
+ Remote Input
+
- Bridging Mode
-
-
+
+
-Input Method Framework
+
-
+ Wrist Gestures
+
+ Bridging Mode
+
-
-
+
+ Input Method Framework
+
-Standalone Devices
+ Wear-Specific APKs
+
+
-Network Access
+
+ Wrist Gestures
+
-
-
+
+
+ Authentication
+
+ Standalone Devices
+
-Users can enter a username and password on a watch
+
+ Wear-Specific APKs
+
-Utilizing Account Manager
+ Authentication tokens can be passed over the Wearable Data Layer
+
+ Network Access
+
-
-
+
+
+
+
+ Authentication
+
+
+
+ Users can enter a username and password on a watch
+
+
+
+ Utilizing Account Manager
+
+
+
+ Authentication tokens can be passed over the Wearable Data Layer
+
+
+
+
diff --git a/docs/html/wear/preview/behavior-changes.jd b/docs/html/wear/preview/behavior-changes.jd
index 02146220dbddf..c93d337a0a8c0 100644
--- a/docs/html/wear/preview/behavior-changes.jd
+++ b/docs/html/wear/preview/behavior-changes.jd
@@ -22,6 +22,8 @@ page.tags="preview", "developer preview"
@@ -61,3 +63,44 @@ page.tags="preview", "developer preview"
navigation
drawers.
+ When a watch face uses the
+ Complications API, the watch face requests data from a chosen provider.
+ A ComplicationData object, which contains
+ complication types, is returned.
+
+ A complication type determines the
+ kinds of data that a watch face can render. This section describes
+ a behavior change related to the ComplicationData object.
+
+ Starting with
+
+ Developer Preview 3, when a watch face requests a field that is invalid
+ for a complication type, a default value for the field is returned.
+ For example, if a watch face tries to access a Long text
+ field in a SHORT_TEXT type, the default value for the
+ Long text field is returned.
+ In previous releases, such a request for an invalid field
+ (for a type) resulted in an exception.
+
+ Starting with
+
+ Developer Preview 3, the complication types used for "empty" data are
+ changed. Apps that use the Complications API
+ may need to be updated to use
+ TYPE_NO_DATA. See the information
+ about TYPE_NO_DATA in the
+
+ Types and fields section.
+
- You can run and test your app with the Android Wear 2.0 Developer Preview + You can run and test your app with the Android Wear 2.0 Preview in either of these ways:
@@ -237,6 +239,13 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement following tables and flash it to the corresponding device. +Caution: + After you flash an image to a watch, follow the steps for + setting up a phone with the beta version of + the Android Wear companion app. To use a Wear 2.0 image on a watch, + you must have the beta companion app on a paired phone. +
+To restore your device to its original state during the preview, you can flash the appropriate retail system image, below, to the device. @@ -266,9 +275,9 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
After the flash-all script finishes, your watch reboots.
- Pair the watch with a phone or tablet. The preview now is available
- for testing on the watch. Before installing an app, perform the
+ Only pair the watch with a phone (so you can begin testing the preview)
+ by using the instructions in Set Up a Phone.
+ Additionally, before installing an app, perform the
following steps on the watch to re-secure the watch's bootloader:
- Your watch is ready for you to Set Up a Phone, + your watch will be ready for you to install and run your app:
@@ -539,6 +551,97 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement device reset and removes all user data on the device. ++ On a phone, follow the instructions in this section to install the beta + version of the Android Wear companion app. The beta version cannot be run + on a phone at the same time as the non-beta version. Additionally, the + beta version is English-only. +
+ ++
Caution: If you have an existing + pairing of the phone to a Wear 1.x + watch, installation of the beta companion app will cause a loss of that + pairing. +
+ ++ To access the beta companion app, you must join + the preview group in Google Groups. +
+ ++ On the Testing + Opt-in page, select Become a Tester. +
+ ++ On the Play Store on your phone, go to the + Android Wear app listing. Tap Update to download and + install the beta version of the app. After installation, confirm that + Auto-update is selected for the app (see + the "Set up automatic updates for specific apps" section of Update downloaded + apps). Tap Open to start the app. +
+ ++ After you install the beta version of the companion app on a phone, + you can pair the phone to the watch: +
+ ++ You can begin testing your app with the preview. +
+At milestone 4, you'll have access to the final Android Wear 2.0 APIs and SDK to develop with, as well as near-final system images to test - system behaviors and features. Android Wear 2.0 will use the Android N - API level at this time. You can begin final compatibility testing of your + system behaviors and features. Android Wear 2.0 will use the + Android 7.0 API level at this time. + You can begin final compatibility testing of your legacy apps and refine any new code that is using the Android Wear 2.0 APIs or features.
diff --git a/docs/html/wear/preview/start.jd b/docs/html/wear/preview/start.jd index 8fccdc82cd5a2..c9720dceb842d 100644 --- a/docs/html/wear/preview/start.jd +++ b/docs/html/wear/preview/start.jd @@ -29,7 +29,7 @@ page.image=images/cards/card-n-sdk_2x.png
If you want an environment for basic compatibility
- testing of your app, you can use your current APK and a
+ testing, you can use your current APK and a
supported watch or an emulator. You don't necessarily need to update your
full development environment to do basic testing. To simply test your
app's compatibility with a preview system image, see
- 1. For compatibility with the N
- Developer Preview, follow the setup instructions for installing
- the latest version of Android Studio.
+ 1. For compatibility with Android 7.0, install the latest version of
+ Android Studio.
@@ -63,7 +61,7 @@ page.image=images/cards/card-n-sdk_2x.png
@@ -190,12 +188,12 @@ page.image=images/cards/card-n-sdk_2x.png
-
@@ -163,7 +161,7 @@ page.image=images/cards/card-n-sdk_2x.png
following, which requires that your the Google Repository is the latest
version:
-
- wearable-support-preview-2-docs.zip
+ wearable-support-preview-3-docs.zip
- MD5: afb770c9c5c0431bbcbdde186f1eae06
- SHA-1: 81d681e61cee01f222ea82e83297d23c4e55b8f3
+ MD5: 22bae00e473e39e320aae8ea09a001a5
+ SHA-1: 474502cc7092bcf0bd671441b8654aa8d6c155ed
compile 'com.google.android.support:wearable:2.0.0-alpha2'
+ compile 'com.google.android.support:wearable:2.0.0-alpha3'
compile 'com.google.android.support:wearable:2.0.0-alpha2'
+ compile 'com.google.android.support:wearable:2.0.0-alpha3'
diff --git a/docs/html/wear/preview/support.jd b/docs/html/wear/preview/support.jd
index 78b4e4b854ac9..7636d863aa8c8 100644
--- a/docs/html/wear/preview/support.jd
+++ b/docs/html/wear/preview/support.jd
@@ -23,7 +23,9 @@ page.tags="preview", "developer preview"
+ The Android Platform API version is incremented to 24 to match Android 7.0. + You can update the following in your Android Wear 2.0 Preview project + to 24: +
+ +compileSdkVersiontargetSdkVersionThe following fields are deprecated in the preview:
@@ -64,6 +81,275 @@ page.tags="preview", "developer preview" +Date: September 2016
+ Builds: Wearable Support 2.0.0-alpha3, NVE68J
+ Emulator support: x86 & ARM (32-bit)
+
+ For access to system images and the companion app for Preview 3, see + + Download and Test with a Device. +
+ ++ For information about planning your Wear 2.0 app, see + Standalone Apps. +
+ ++ Generally, the minimum and target SDK level for Wear 2.0, and for a + standalone APK, is level 24. The minimum SDK level can be 23 + only if you are using the same APK + for Wear 1.0 and 2.0 (and thus have an embedded Wear 1.0 APK). +
+ ++ Run-time permissions are required. +
+ ++ For information about distributing your Wear 2.0 app, see + App Distribution. +
+ ++ For Preview 3, additions and changes have been made to the Complications + API. The documentation + includes information about the following additions and changes: +
+ +RECEIVE_COMPLICATION_DATA permission.
+ ComplicationHelperActivity class is available
+ in the wearable support library. This class should be used instead of
+ ProviderChooserIntent to start the chooser in almost all
+ cases.
+
+ For changes related to the ComplicationData object, see
+ Behavior
+ Changes.
+
+ For information about creating a curved layout using
+ the WearableRecyclerView API in your Wear 2.0 app, see
+
+ Curved Layout.
+
+ To learn about adding an inline action to a notification, + see Inline + Action. +
+ ++ To learn about adding images to a notification, see + Adding + images to a notification. +
+ ++ For additions related to the bridging of notifications from a companion + app to a watch, see Bridging + Mode for Notifications. +
+ +
+ Smart Reply responses are generated by an entirely on-watch,
+ machine-learning model using the context provided by
+ MessagingStyle notifications. Use the
+ setAllowGeneratedReplies(boolean) method to enable Smart Reply for
+ your MessagingStyle notification.
+
MessagingStyle
+ notifications with images posted by standalone apps don't show
+ images in the notification (i.e., bridged notifications show images,
+ but standalone notifications don't).
+ RemoteInput when
+ RemoteInput is called from a MessagingStyle
+ expanded notification. Smart Reply responses are not shown in
+ RemoteInput when RemoteInput is called from an
+
+ inline action within the stream—an action set with the
+ setHintDisplayActionInline(true) method.
+ JELLY_BEAN_MR2- The Android Platform API version is incremented to 24 to match Android Nougat. - You can update the following in your Android Wear 2.0 Preview project - to 24: -
- -compileSdkVersiontargetSdkVersion