From fb4206387dc0ee31a73bfba8ac804c0ec8046055 Mon Sep 17 00:00:00 2001 From: sreevanis Date: Wed, 11 May 2016 17:47:09 -0700 Subject: [PATCH] API Overview page for Wear 2.0 preview. Bug:28714669 Change-Id: Icc76b610f329d6c24046bf654e2895f123af9cc6 --- docs/html/wear/preview/api-overview.jd | 279 +++++++++++++++--- docs/html/wear/preview/images/remoteinput.png | Bin 0 -> 30413 bytes 2 files changed, 241 insertions(+), 38 deletions(-) create mode 100644 docs/html/wear/preview/images/remoteinput.png diff --git a/docs/html/wear/preview/api-overview.jd b/docs/html/wear/preview/api-overview.jd index bf18c16c6780a..1fddab8b17086 100644 --- a/docs/html/wear/preview/api-overview.jd +++ b/docs/html/wear/preview/api-overview.jd @@ -12,26 +12,28 @@ page.image=images/cards/card-n-apis_2x.png

Key developer features

@@ -46,79 +48,280 @@ page.image=images/cards/card-n-apis_2x.png highlight some of the new features for Wear developers.

+

Standalone Devices

-

Stand Alone Devices

- -

Description of developer theme

+

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-Specific APKs

-

Description of feature

+

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. +

-

Sample implementation of feature

+

This delivery method is planned to change; 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. +

Network Access

-

Description of feature

+

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. +

+ +

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. +

-

Sample implementation of feature

Authentication

-

Description of feature

+

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.

-

Sample implementation of feature

+

Authentication tokens can be passed over the Wearable Data Layer

+ +

For Android-paired watches (only), the phone will securely transfer authentication + data to a watch app via the + + Wearable Data Layer API. The data 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 following sections of + + Sending and Receiving Messages: +

+

Users can enter a username and password on a watch

+ +

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. + +

Utilizing Account Manager

+Android Wear will include the +AccountManager; it is planned to be accessible for syncing and storing account + data, as it is on an Android phone. +

-

Notifications and Interactions

+

Notifications and Input

-

Description of developer theme

+

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. -

Appoids with Chat Templates

+

Expanded notifications

+

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. +

+

+

Figure 1.An expanded notification

-

Description of feature

+

Messaging Style 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. +

-

Sample implementation of feature

-

Smart Replies

+

Smart Reply

+

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}. +

-

Description of feature

+

+

Figure 2.Messaging Style notification with smart replies

+ +

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. +

-

Sample implementation of feature

Remote Input

+
+ -

Description of feature

+

+ Figure 5. Remote Input. +

-

Sample implementation of feature

+ +
+

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. +

+ +

Bridging Mode

+

By default, notifications are + +bridged (shared) from an app on a companiosubl apin 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: +

+ + + +

For an example of how to use this feature, see +Bridging Mode for Notifications.

Input Method Framework

-

Description of feature

- -

Sample implementation of feature

+

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. +

User Interface Improvements

-

Description of developer theme

+

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. +

-

Complications

+

Complications

-

Description of feature

+

A complication is a feature of a watch face +that displays more than hours and minutes. For +example, a battery indicator is a complication. The Complications API is for +both watch faces and data provider apps.

-

Sample implementation of feature

+
+ -

Navigation and Action Drawers

+

+ Figure 5. Watch face Complications. +

+ -

Description of feature

+

Watch faces can display extra information without needing code for getting +the underlying data. Data providers can supply data to any watch face using the +API.

-

Sample implementation of feature

+

For examples of how to use this feature, +see + Watch Face Complications. +

-

Button Locations

+

Navigation and Action drawers

+ +

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. +

+ +
+
+ +

+ Figure 1. Navigation and Action Drawers. +

+
+
+ +
+
+
+

To learn how to add these widgets to your app, see +Wear Navigation and Actions. + +

-

Description of feature

-

Sample implementation of feature

diff --git a/docs/html/wear/preview/images/remoteinput.png b/docs/html/wear/preview/images/remoteinput.png new file mode 100644 index 0000000000000000000000000000000000000000..9d8049800d630cc9b458f5c2b0cba89dadd62b23 GIT binary patch literal 30413 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 literal 0 HcmV?d00001