Docs: Wear Preview - Release Notes and more
Bug: 30570507 Change-Id: I4c89e9e6bcbbcff95a7dfac8869964092c8ef364
This commit is contained in:
@@ -8,18 +8,24 @@ toc:
|
||||
- title: API Overview
|
||||
path: /wear/preview/api-overview.html
|
||||
section:
|
||||
- title: Notification Improvements
|
||||
path: /wear/preview/features/notifications.html
|
||||
- title: Input Method Framework
|
||||
path: /wear/preview/features/ime.html
|
||||
- title: Complications
|
||||
path: /wear/preview/features/complications.html
|
||||
- title: Navigation and Actions
|
||||
path: /wear/preview/features/ui-nav-actions.html
|
||||
- title: Curved Layout
|
||||
path: /wear/preview/features/wearable-recycler-view.html
|
||||
- title: Notification Improvements
|
||||
path: /wear/preview/features/notifications.html
|
||||
- title: Bridging for Notifications
|
||||
path: /wear/preview/features/bridger.html
|
||||
- title: Input Method Framework
|
||||
path: /wear/preview/features/ime.html
|
||||
- title: Wrist Gestures
|
||||
path: /wear/preview/features/gestures.html
|
||||
- title: Standalone apps
|
||||
path: /wear/preview/features/standalone-apps.html
|
||||
- title: App Distribution
|
||||
path: /wear/preview/features/app-distribution.html
|
||||
|
||||
- title: Get Started
|
||||
path: /wear/preview/start.html
|
||||
|
||||
@@ -13,15 +13,16 @@ page.image=images/cards/card-n-apis_2x.png
|
||||
<ol>
|
||||
<li><a href="#complications">Complications</a></li>
|
||||
<li><a href="#drawers">Navigation and Action Drawers</a></li>
|
||||
<li><a href="#wrv">Curved Layout</a></li>
|
||||
</ol>
|
||||
</li>
|
||||
|
||||
<li><a href="#notify">Notifications and Input</a>
|
||||
<ol>
|
||||
<li><a href="#expanded">Expanded Notification</a></li>
|
||||
<li><a href="#messaging">Messaging Style Notification</a></li>
|
||||
<li><a href="#expanded">Expanded Notifications</a></li>
|
||||
<li><a href="#messaging">Messaging Style Notifications</a></li>
|
||||
<li><a href="#inline-action">Inline Action</a></li>
|
||||
<li><a href="#smart-replies">Smart Reply</a></li>
|
||||
<li><a href="#content-action">Notification Content Action</a>
|
||||
<li><a href="#remote-input">Remote Input</a></li>
|
||||
<li><a href="#bridging">Bridging Mode</a></li>
|
||||
<li><a href="#imf">Input Method Framework</a></li>
|
||||
@@ -40,308 +41,447 @@ page.image=images/cards/card-n-apis_2x.png
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<h2 id="ui">
|
||||
User Interface Improvements
|
||||
</h2>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
<p>
|
||||
The preview introduces powerful additions to the user interface, opening
|
||||
up exciting possibilities to developers.
|
||||
</p>
|
||||
|
||||
<h3 id="complications">
|
||||
Complications
|
||||
</h3>
|
||||
|
||||
<h2 id="ui">User Interface Improvements</h2>
|
||||
<img src="{@docRoot}wear/preview/images/complications-main-image.png"
|
||||
height="320" style="float:right;margin:10px 0 0 40px">
|
||||
<p>
|
||||
A <a href=
|
||||
"https://en.wikipedia.org/wiki/Complication_(horology)">complication</a>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For information about this API, see <a href=
|
||||
"{@docRoot}wear/preview/features/complications.html">Watch Face
|
||||
Complications</a>.
|
||||
</p>
|
||||
|
||||
<h3 id="complications">Complications</h3>
|
||||
<img src="{@docRoot}wear/preview/images/complications-main-image.png"
|
||||
height="320" style="float:right;margin:10px 0 0 40px" />
|
||||
<h3 id="drawers">
|
||||
Navigation and Action Drawers
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
A <a href=
|
||||
"https://en.wikipedia.org/wiki/Complication_(horology)">complication</a> 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.
|
||||
</p>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
<div class="cols">
|
||||
<div class="col-2of6">
|
||||
<img src="{@docRoot}wear/preview/images/nav_drawer.gif" height="240"
|
||||
alt="" style="padding:.5em">
|
||||
</div>
|
||||
|
||||
<p>For information about this API,
|
||||
see <a href="{@docRoot}wear/preview/features/complications.html">
|
||||
Watch Face Complications</a>.
|
||||
</p>
|
||||
<div class="col-2of6">
|
||||
<img src="{@docRoot}wear/preview/images/action_drawer.gif" height="240"
|
||||
alt="" style="padding:.5em;">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3 id="drawers">Navigation and Action drawers</h3>
|
||||
<p>
|
||||
To learn how to add these widgets to your app, see <a href=
|
||||
"{@docRoot}wear/preview/features/ui-nav-actions.html">Wear Navigation and
|
||||
Actions</a>.
|
||||
</p>
|
||||
|
||||
<p>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.
|
||||
</p>
|
||||
<h3 id="wrv">
|
||||
Curved Layout
|
||||
</h3>
|
||||
|
||||
<div class="cols">
|
||||
<div class="col-2of6">
|
||||
<img src="{@docRoot}wear/preview/images/nav_drawer.gif"
|
||||
height="240" alt="" style="padding:.5em">
|
||||
</div>
|
||||
<div class="col-2of6">
|
||||
<img src="{@docRoot}wear/preview/images/action_drawer.gif"
|
||||
height="240" alt="" style="padding:.5em;">
|
||||
</div>
|
||||
</div>
|
||||
<p>
|
||||
Wear 2.0 introduces the <code>WearableRecyclerView</code> class for
|
||||
displaying and manipulating a vertical list of items,
|
||||
optimized for round displays.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
To learn how to add these widgets to your app, see
|
||||
<a href="{@docRoot}wear/preview/features/ui-nav-actions.html">
|
||||
Wear Navigation and Actions</a>.
|
||||
</p>
|
||||
<p>
|
||||
The key features include the following:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>A curved layout on round devices
|
||||
</li>
|
||||
|
||||
<h2 id="notify">Notifications and Input</h2>
|
||||
<li>A circular scrolling gesture, which can be toggled on and off
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>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
|
||||
<a href="{@docRoot}wear/preview/features/notifications.html">Notification Changes in Wear 2.0</a>.
|
||||
<p>
|
||||
To learn how to create a curved layout optimized for round devices, see
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/features/wearable-recycler-view.html">
|
||||
Curved Layout</a>.
|
||||
</p>
|
||||
|
||||
<h2 id="notify">
|
||||
Notifications and Input
|
||||
</h2>
|
||||
|
||||
<img src="{@docRoot}wear/preview/images/expanded_diagram.png" height="340"
|
||||
style="float:left;margin:10px 20px 0 0" />
|
||||
<h3 id="expanded">Expanded notifications</h3>
|
||||
<p>
|
||||
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 <a href=
|
||||
"{@docRoot}wear/preview/features/notifications.html">Notification Changes
|
||||
in Wear 2.0</a>. <img src=
|
||||
"{@docRoot}wear/preview/images/expanded_diagram.png" height="340" style=
|
||||
"float:left;margin:10px 20px 0 0">
|
||||
</p>
|
||||
|
||||
<p>
|
||||
When a user taps on a notification that is bridged from the phone to the
|
||||
watch or that lacks a
|
||||
<a href="{@docRoot}reference/android/support/v4/app/NotificationCompat.Builder.html#setContentIntent(android.app.PendingIntent)">
|
||||
{@code contentIntent}</a>, the user will be taken to the expanded view of
|
||||
that notification. When you <a href=
|
||||
"{@docRoot}training/wearables/notifications/pages.html">specify additional
|
||||
content pages</a> and actions for a notification, those are available to the
|
||||
user within the expanded notification. Each expanded notification follows
|
||||
<a href="https://google.com/design/spec-wear">Material Design for Android
|
||||
Wear</a>, so the user gets an app-like experience.
|
||||
</p>
|
||||
<h3 id="expanded">
|
||||
Expanded Notifications
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
When a user taps on a notification that is bridged from the phone to the
|
||||
watch or that lacks a <a href=
|
||||
"{@docRoot}reference/android/support/v4/app/NotificationCompat.Builder.html#setContentIntent(android.app.PendingIntent)">
|
||||
{@code contentIntent}</a>, the user will be taken to the expanded view of
|
||||
that notification. When you <a href=
|
||||
"{@docRoot}training/wearables/notifications/pages.html">specify
|
||||
additional content pages</a> and actions for a notification, those are
|
||||
available to the user within the expanded notification. Each expanded
|
||||
notification follows <a href=
|
||||
"https://google.com/design/spec-wear">Material Design for Android
|
||||
Wear</a>, so the user gets an app-like experience.
|
||||
</p>
|
||||
|
||||
<h3 id="messaging">Messaging Style notification</h3>
|
||||
<p> 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
|
||||
<a href="{@docRoot}preview/features/notification-updates.html#style">{@code MessagingStyle}</a>
|
||||
notification
|
||||
(see {@code addMessage()}) to provide a rich chat app-like experience in the
|
||||
expanded notification.
|
||||
</p>
|
||||
<h3 id="messaging">
|
||||
Messaging Style Notifications
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
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 <a href=
|
||||
"{@docRoot}preview/features/notification-updates.html#style">{@code
|
||||
MessagingStyle}</a> notification (see {@code addMessage()}) to provide a
|
||||
rich chat, app-like experience in the expanded notification.
|
||||
</p>
|
||||
|
||||
<h3 id="smart-replies">Smart Reply</h3>
|
||||
<h3 id="inline-action">
|
||||
Inline Action
|
||||
</h3>
|
||||
|
||||
<p>Android Wear 2.0 introduces support for Smart Reply in
|
||||
<a href="{@docRoot}wear/preview/features/notifications.html#messaging">{@code MessagingStyle}</a>
|
||||
notifications. Smart Reply provides the user with contextually relevant,
|
||||
touchable choices in the expanded notification and in
|
||||
<a href="{@docRoot}reference/android/app/RemoteInput.html">{@code RemoteInput}</a>.
|
||||
</p>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>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.
|
||||
</p>
|
||||
<p>
|
||||
To learn how to add an inline action to your notification stream, see
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/features/notifications.html#inline">
|
||||
Inline Action</a>.
|
||||
</p>
|
||||
|
||||
<h3 id="smart-replies">
|
||||
Smart Reply
|
||||
</h3>
|
||||
|
||||
<img src="{@docRoot}wear/preview/images/remoteinput.png" height="350"
|
||||
style="float:right;margin:10px 0 0 40px" />
|
||||
<p>
|
||||
Android Wear 2.0 introduces support for Smart Reply in <a href=
|
||||
"{@docRoot}wear/preview/features/notifications.html#messaging">{@code
|
||||
MessagingStyle}</a> notifications. Smart Reply provides the user with
|
||||
contextually relevant, touchable choices in the expanded notification and
|
||||
in <a href="{@docRoot}reference/android/app/RemoteInput.html">{@code
|
||||
RemoteInput}</a>.
|
||||
</p>
|
||||
|
||||
<h3 id="remote-input">Remote Input</h3>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>Wear 2.0 users can choose between various input options from
|
||||
<a href="{@docRoot}reference/android/app/RemoteInput.html">Remote Input</a>.
|
||||
These options include:
|
||||
</p>
|
||||
<ul>
|
||||
<li>Dictation</li>
|
||||
<li>Emoji</li>
|
||||
<li>Canned responses</li>
|
||||
<li>Smart Reply</i>
|
||||
<li>Default IME </i>
|
||||
</ul>
|
||||
<img src="{@docRoot}wear/preview/images/remoteinput.png" height="350"
|
||||
style="float:right;margin:10px 0 0 40px">
|
||||
|
||||
<p>
|
||||
For messaging notifications with Smart Reply, the system-generated Smart Reply
|
||||
appears within <a href="{@docRoot}reference/android/app/RemoteInput.html">{@code RemoteInput}</a>
|
||||
above the developer-provided list of canned responses.
|
||||
You can also use the
|
||||
<a href="{@docRoot}reference/android/app/RemoteInput.Builder.html#setChoices(java.lang.CharSequence[])">setChoices()</a>
|
||||
method in the {@code RemoteInput} API to enable users to select from a list
|
||||
of canned responses.
|
||||
</p>
|
||||
<h3 id="remote-input">
|
||||
Remote Input
|
||||
</h3>
|
||||
|
||||
<h3 id="bridging"> Bridging Mode </h3>
|
||||
<p>By default, notifications are
|
||||
<a href="{@docRoot}training/wearables/notifications/index.html">
|
||||
bridged</a> (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:
|
||||
</p>
|
||||
<p>
|
||||
Wear 2.0 users can choose between various input options from <a href=
|
||||
"{@docRoot}reference/android/app/RemoteInput.html">Remote Input</a>.
|
||||
These options include:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Specifying in the standalone app's Android manifest file that notifications from
|
||||
the corresponding phone app should not be bridged to the watch. </li>
|
||||
<li>Setting a dismissal ID so notification dismissals (by users) are synced across
|
||||
devices.</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>Dictation
|
||||
</li>
|
||||
|
||||
<p>For an example of how to use this feature, see <a href="{@docRoot}wear/preview/features/bridger.html">
|
||||
Bridging Mode for Notifications</a>.</p>
|
||||
<li>Emoji
|
||||
</li>
|
||||
|
||||
<h3 id="imf">Input Method Framework</h3>
|
||||
<li>Canned responses
|
||||
</li>
|
||||
|
||||
<p>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.
|
||||
</p>
|
||||
<li>Smart Reply
|
||||
</li>
|
||||
|
||||
<p>Wear provides user settings on the watch that let the user:</p>
|
||||
<ul>
|
||||
<li>Enable multiple IMEs from the list of installed IMEs.</li>
|
||||
<li>Set a single default IME from the list of enabled IMEs.</li>
|
||||
<li>Change languages for various IMEs.</li>
|
||||
</ul>
|
||||
<li>Default IME
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>To learn how to create an IME for Wear, see <a href="{@docRoot}wear/preview/features/ime.html">
|
||||
Input Method Framework</a>.
|
||||
</p>
|
||||
<p>
|
||||
For messaging notifications with Smart Reply, the system-generated Smart
|
||||
Reply appears within <a href=
|
||||
"{@docRoot}reference/android/app/RemoteInput.html">{@code
|
||||
RemoteInput}</a> above the developer-provided list of canned responses.
|
||||
You can also use the <a href=
|
||||
"{@docRoot}reference/android/app/RemoteInput.Builder.html#setChoices(java.lang.CharSequence[])">
|
||||
setChoices()</a> method in the {@code RemoteInput} API to enable users to
|
||||
select from a list of canned responses.
|
||||
</p>
|
||||
|
||||
<h3 id="wrist-gestures">Wrist Gestures</h3>
|
||||
<h3 id="bridging">
|
||||
Bridging Mode
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
Wrist gestures can enable quick, one-handed interactions with your app
|
||||
when use of a touch screen is inconvenient. The following
|
||||
<a href="https://support.google.com/androidwear/answer/6312406">wrist gestures</a>
|
||||
are available for use by apps:
|
||||
</p>
|
||||
<p>
|
||||
By default, notifications are <a href=
|
||||
"{@docRoot}training/wearables/notifications/index.html">bridged</a>
|
||||
(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.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Flick wrist out</li>
|
||||
<li>Flick wrist in</li>
|
||||
</ul>
|
||||
<p>
|
||||
For information about this feature, see <a href=
|
||||
"{@docRoot}wear/preview/features/bridger.html">Bridging Mode for
|
||||
Notifications</a>.
|
||||
</p>
|
||||
|
||||
<p>For more information, see
|
||||
<a href="{@docRoot}wear/preview/features/gestures.html">
|
||||
Wrist Gestures</a>.
|
||||
</p>
|
||||
<h3 id="imf">
|
||||
Input Method Framework
|
||||
</h3>
|
||||
|
||||
<h2 id="stand-alone">Standalone Devices</h2>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>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. </p>
|
||||
<p>
|
||||
Wear provides user settings on the watch that let the user:
|
||||
</p>
|
||||
|
||||
<h3 id="wear-apk">Wear-Specific APKs</h3>
|
||||
<ul>
|
||||
<li>Enable multiple IMEs from the list of installed IMEs.
|
||||
</li>
|
||||
|
||||
<p>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.
|
||||
</p>
|
||||
<li>Set a single default IME from the list of enabled IMEs.
|
||||
</li>
|
||||
|
||||
<p>With standalone devices, the
|
||||
<a href ="{@docRoot}google/play/publishing/multiple-apks.html">Multi-APK</a>
|
||||
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.
|
||||
</p>
|
||||
<li>Change languages for various IMEs.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h3 id="network">Network Access</h3>
|
||||
<p>
|
||||
To learn how to create an IME for Wear, see <a href=
|
||||
"{@docRoot}wear/preview/features/ime.html">Input Method Framework</a>.
|
||||
</p>
|
||||
|
||||
<p>Since Android Wear apps will work independently of phone apps, Android Wear's
|
||||
network access will no longer require the
|
||||
<a href="{@docRoot}training/wearables/data-layer/index.html">
|
||||
Wearable Data Layer API</a>. Android Wear apps will have the ability to make
|
||||
their own network requests. Additionally, they will be able to directly use
|
||||
Google Cloud Messaging.
|
||||
</p>
|
||||
<h3 id="wrist-gestures">
|
||||
Wrist Gestures
|
||||
</h3>
|
||||
|
||||
<p>No APIs for network access or GCM are specific to Android Wear; refer to the
|
||||
existing documentation about
|
||||
<a href="{@docRoot}training/basics/network-ops/connecting.html">
|
||||
Connecting to the Network</a> and
|
||||
<a href="https://developers.google.com/cloud-messaging/">Cloud Messaging</a>.
|
||||
</p>
|
||||
<p>
|
||||
Wrist gestures can enable quick, one-handed interactions with your app
|
||||
when use of a touch screen is inconvenient. The following <a href=
|
||||
"https://support.google.com/androidwear/answer/6312406">wrist
|
||||
gestures</a> are available for use by apps:
|
||||
</p>
|
||||
|
||||
<p>We recommend using the following libraries:</p>
|
||||
<ul>
|
||||
<li><a href="{@docRoot}reference/android/app/job/JobScheduler.html">
|
||||
JobScheduler</a> for asynchronous jobs, including polling at regular intervals
|
||||
</li>
|
||||
<li>Multi-networking APIs if you need to connect to specific network types; see
|
||||
the <a href="{@docRoot}about/versions/android-5.0.html#Wireless">
|
||||
Multiple Network Connections</a>
|
||||
</li>
|
||||
</ul>
|
||||
<ul>
|
||||
<li>Flick wrist out
|
||||
</li>
|
||||
|
||||
<p>You will still be able to use the
|
||||
<a href="{@docRoot}training/wearables/data-layer/index.html">
|
||||
Wearable Data Layer API</a> to communicate with a phone app.
|
||||
However, use of this API to connect to a network will be discouraged.
|
||||
</p>
|
||||
<li>Flick wrist in
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
For more information, see <a href=
|
||||
"{@docRoot}wear/preview/features/gestures.html">Wrist Gestures</a>.
|
||||
</p>
|
||||
|
||||
<h3 id="auth">Authentication</h3>
|
||||
<h2 id="stand-alone">
|
||||
Standalone Devices
|
||||
</h2>
|
||||
|
||||
<p>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.</p>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<h4>Users can enter a username and password on a watch</h4>
|
||||
<h3 id="wear-apk">
|
||||
Wear-Specific APKs
|
||||
</h3>
|
||||
|
||||
<p>Google Keyboard will be standard on Android Wear, allowing for direct text
|
||||
entry. This feature will work as expected with standard
|
||||
<a href="{@docRoot}reference/android/widget/EditText.html">EditText widgets</a>.
|
||||
For passwords, the {@code textPassword} attribute will be used.</p>
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<h4>Utilizing Account Manager</h4>
|
||||
<p>
|
||||
For information about planning and building your standalone app
|
||||
for Wear 2.0, see <a href=
|
||||
"https://developer.android.com/wear/preview/features/standalone-apps.html">
|
||||
Standalone Apps</a>.
|
||||
</p>
|
||||
|
||||
<p>Android Wear will include the
|
||||
<a href="{@docRoot}reference/android/accounts/AccountManager.html">
|
||||
AccountManager</a>, which will be accessible for syncing and storing account
|
||||
data, as it is on an Android phone.</p>
|
||||
<p>
|
||||
For information about distributing your app, see <a href=
|
||||
"https://developer.android.com/wear/preview/features/app-distribution.html">
|
||||
App Distribution</a>.
|
||||
</p>
|
||||
|
||||
<h4>Authentication tokens can be passed over the Wearable Data Layer</h4>
|
||||
<h3 id="network">
|
||||
Network Access
|
||||
</h3>
|
||||
|
||||
<p>For Android-paired watches (only), a phone securely
|
||||
transfers authentication credentials to a watch app via the
|
||||
<a href="{@docRoot}training/wearables/data-layer/index.html">
|
||||
Wearable Data Layer API</a>. The credentials can be transferred as
|
||||
messages or data items.</p>
|
||||
<p>
|
||||
Since Android Wear apps will work independently of phone apps, Android
|
||||
Wear's network access will no longer require the <a href=
|
||||
"{@docRoot}training/wearables/data-layer/index.html">Wearable Data Layer
|
||||
API</a>. 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
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/features/standalone-apps.html#network_access">
|
||||
Network Access and Cloud Messaging</a>.
|
||||
</p>
|
||||
|
||||
<p>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
|
||||
<a href="{@docRoot}training/wearables/data-layer/messages.html">
|
||||
Sending and Receiving Messages</a>:</p>
|
||||
<p>
|
||||
No APIs for network access or GCM are specific to Android Wear; refer to
|
||||
the existing documentation about <a href=
|
||||
"{@docRoot}training/basics/network-ops/connecting.html">Connecting to the
|
||||
Network</a> and <a href=
|
||||
"https://developers.google.com/cloud-messaging/">Cloud Messaging</a>.
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Advertise Capabilities</li>
|
||||
<li>Retrieve the Nodes with the Required Capabilities</li>
|
||||
</ul>
|
||||
<p>
|
||||
We recommend using the following libraries:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>
|
||||
<a href=
|
||||
"{@docRoot}reference/android/app/job/JobScheduler.html">JobScheduler</a>
|
||||
for asynchronous jobs, including polling at regular intervals
|
||||
</li>
|
||||
|
||||
<li>Multi-networking APIs, to connect to specific network
|
||||
types; see <a href=
|
||||
"{@docRoot}about/versions/android-5.0.html#Wireless">Multiple Network
|
||||
Connections</a>
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
The <a href=
|
||||
"{@docRoot}training/wearables/data-layer/index.html">Wearable Data Layer
|
||||
API</a> is available to communicate with a phone app.
|
||||
However, use of this API to connect to a network will be discouraged.
|
||||
</p>
|
||||
|
||||
<h3 id="auth">
|
||||
Authentication
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<h4>
|
||||
Users can enter a username and password on a watch
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
Google Keyboard will be standard on Android Wear, allowing for direct
|
||||
text entry. This feature will work as expected with standard <a href=
|
||||
"{@docRoot}reference/android/widget/EditText.html">EditText widgets</a>.
|
||||
For passwords, the {@code textPassword} attribute will be used.
|
||||
</p>
|
||||
|
||||
<h4>
|
||||
Utilizing Account Manager
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
Android Wear will include the <a href=
|
||||
"{@docRoot}reference/android/accounts/AccountManager.html">AccountManager</a>,
|
||||
which will be accessible for syncing and storing account data, as it is
|
||||
on an Android phone.
|
||||
</p>
|
||||
|
||||
<h4>
|
||||
Authentication tokens can be passed over the Wearable Data Layer
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
For Android-paired watches (only), a phone securely transfers
|
||||
authentication credentials to a watch app via the <a href=
|
||||
"{@docRoot}training/wearables/data-layer/index.html">Wearable Data Layer
|
||||
API</a>. The credentials can be transferred as messages or data items.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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
|
||||
<a href="{@docRoot}training/wearables/data-layer/messages.html">Sending
|
||||
and Receiving Messages</a>:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>Advertise Capabilities
|
||||
</li>
|
||||
|
||||
<li>Retrieve the Nodes with the Required Capabilities
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
@@ -22,6 +22,8 @@ page.tags="preview", "developer preview"
|
||||
|
||||
<ul>
|
||||
<li><a href="#activity-dismissal">Activity Dismissal</a></li>
|
||||
<li><a href="#invalid-fields">Invalid Fields for a Complication Type</a></li>
|
||||
<li><a href="#empty">Complication Types for Empty Data</a></li>
|
||||
</ul>
|
||||
|
||||
</div>
|
||||
@@ -61,3 +63,44 @@ page.tags="preview", "developer preview"
|
||||
<a href="{@docRoot}wear/preview/features/ui-nav-actions.html">navigation
|
||||
drawers</a>.
|
||||
</p>
|
||||
|
||||
<h2 id="invalid-fields">Invalid Fields for a Complication Type</h2>
|
||||
|
||||
<p>
|
||||
When a watch face uses the <a href="{@docRoot}wear/preview/features/complications.html">
|
||||
Complications API</a>, the watch face requests data from a chosen provider.
|
||||
A <code>ComplicationData</code> object, which contains
|
||||
complication types, is returned.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
A complication type determines the
|
||||
kinds of data that a watch face can render. This section describes
|
||||
a behavior change related to the <code>ComplicationData</code> object.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Starting with
|
||||
<a href="https://developer.android.com/wear/preview/support.html#dp3">
|
||||
Developer Preview 3</a>, 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 <code>Long text</code>
|
||||
field in a <code>SHORT_TEXT</code> type, the default value for the
|
||||
<code>Long text</code> field is returned.
|
||||
In previous releases, such a request for an invalid field
|
||||
(for a type) resulted in an exception.
|
||||
</p>
|
||||
|
||||
<h2 id="empty">Complication Types for Empty Data</h2>
|
||||
|
||||
<p>
|
||||
Starting with
|
||||
<a href="https://developer.android.com/wear/preview/support.html#dp3">
|
||||
Developer Preview 3</a>, the complication types used for "empty" data are
|
||||
changed. Apps that use the Complications API
|
||||
may need to be updated to use
|
||||
<code>TYPE_NO_DATA</code>. See the information
|
||||
about <code>TYPE_NO_DATA</code> in the
|
||||
<a href="{@docRoot}wear/preview/features/complications.html#types_and_fields">
|
||||
Types and fields</a> section.
|
||||
</p>
|
||||
|
||||
@@ -171,7 +171,9 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
<li>
|
||||
<a href="#set_up_a_watch">Set Up a Watch</a>
|
||||
</li>
|
||||
|
||||
<li>
|
||||
<a href="#set_up_a_phone">Set Up a Phone</a>
|
||||
</li>
|
||||
<li>
|
||||
<a href="#set_up_an_emulator">Set Up an Emulator</a>
|
||||
</li>
|
||||
@@ -180,7 +182,7 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
</div>
|
||||
|
||||
<p>
|
||||
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:
|
||||
</p>
|
||||
|
||||
@@ -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.
|
||||
</p>
|
||||
|
||||
<p class="caution"><strong>Caution:</strong>
|
||||
After you flash an image to a watch, follow the steps for
|
||||
<a href="#set_up_a_phone">setting up a phone</a> 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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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
|
||||
<td>
|
||||
Preview image for testing
|
||||
</td>
|
||||
<td><a href="#top" onclick="onDownload(this)">nemo-nvd83h-factory-48ac950c.tgz</a><br>
|
||||
MD5: dd351884cce9fb5bf1bdec0a8e5f56e3<br>
|
||||
SHA-1: 48ac950c48faef96a7770e3c1acb56d23a28d859
|
||||
<td><a href="#top" onclick="onDownload(this)">nemo-nve68j-factory-302a33ea.tgz</a><br>
|
||||
MD5: ddfccc3e050c7e2db8d657c82f7d6291<br>
|
||||
SHA-1: 302a33eac348c401fcb165bad4b9aaa40c7beb2b
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -276,9 +285,9 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
<td>
|
||||
Non-preview image (for after testing)
|
||||
</td>
|
||||
<td><a href="#top" onclick="onDownload(this)">nemo-mnc40x-factory-fa528bec.tgz</a><br>
|
||||
MD5: 0b8ba3653d5a93cb854f4d7409d7b6c9<br>
|
||||
SHA-1: fa528bec8aba3bf6c7d901ba63cd6ea0a08dbeb0
|
||||
<td><a href="#top" onclick="onDownload(this)">nemo-mfd18l-factory-3faf6f2d.tgz</a><br>
|
||||
MD5: f3a0090c0e99da82ad095b5d2a9acc6d<br>
|
||||
SHA-1: 3faf6f2d7f422a17a5f6c54cf5e1d2c5622689b0
|
||||
</td>
|
||||
</tr>
|
||||
|
||||
@@ -307,18 +316,18 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
<td>
|
||||
Preview image for testing
|
||||
</td>
|
||||
<td><a href="#top" onclick="onDownload(this)">sturgeon-nvd83h-factory-cb5a11ab.tgz</a><br>
|
||||
MD5: 38c1047992b1d28f6833d9f6c8470cdc<br>
|
||||
SHA-1: cb5a11ab0260ea3ca7da5894e73e41f70357da6b
|
||||
<td><a href="#top" onclick="onDownload(this)">sturgeon-nve68j-factory-6607cd31.tgz</a><br>
|
||||
MD5: f78ac6ba8bb84038d163cc2d7ca85040<br>
|
||||
SHA-1: 6607cd31858af1bfd50b905c68f7cf1f0b6e570e
|
||||
</td>
|
||||
</tr>
|
||||
<tr id="sturgeon-non-preview">
|
||||
<td>
|
||||
Non-preview image (for after testing)
|
||||
</td>
|
||||
<td><a href="#top" onclick="onDownload(this)">sturgeon-mec23l-factory-48003078.tgz</a><br>
|
||||
MD5: 417b5cbddb29a2262bce133e283d2732<br>
|
||||
SHA-1: 4800307843580f818557dd7c43d8ba2161e289b2
|
||||
<td><a href="#top" onclick="onDownload(this)">sturgeon-m6e69f-factory-e659286a.tgz</a><br>
|
||||
MD5: 12ce6cb0b0e43b67ea46a886eae052ae<br>
|
||||
SHA-1: e659286aa9004f4555a476ede4e8b690f56cfefd
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -437,13 +446,14 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
|
||||
|
||||
<h4 id="set_up_watch">
|
||||
Set up the watch and begin testing
|
||||
Set up the watch
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
After the <code>flash-all</code> 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 <a href="#set_up_a_phone">Set Up a Phone</a>.
|
||||
Additionally, before installing an app, perform the
|
||||
following steps on the watch to re-secure the watch's bootloader:
|
||||
</p>
|
||||
|
||||
@@ -483,7 +493,9 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
</ol>
|
||||
|
||||
<p>
|
||||
Your watch is ready for you to <a href=
|
||||
After you follow the instructions in
|
||||
<a href="#set_up_a_phone">Set Up a Phone</a>,
|
||||
your watch will be ready for you to <a href=
|
||||
"{@docRoot}training/wearables/apps/creating.html#Install">install and run
|
||||
your app</a>:
|
||||
</p>
|
||||
@@ -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.
|
||||
</p>
|
||||
|
||||
<h2 id="set_up_a_phone">
|
||||
Set Up a Phone
|
||||
</h2>
|
||||
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
<p class="caution"><strong>Caution:</strong> 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.
|
||||
</p>
|
||||
|
||||
<h3 id="join-the-wear-2-0-preview-group">
|
||||
Join the Wear 2.0 preview group
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
To access the beta companion app, you must <a href=
|
||||
"https://groups.google.com/forum/#!forum/android-wear-developer-preview">join
|
||||
the preview group in Google Groups</a>.
|
||||
</p>
|
||||
|
||||
<h3>
|
||||
Opt in for beta testing
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
On the <a href=
|
||||
"https://play.google.com/apps/testing/com.google.android.wearable.app">Testing
|
||||
Opt-in</a> page, select <strong>Become a Tester</strong>.
|
||||
</p>
|
||||
|
||||
<h3 id="download-and-install-the-beta-version-of-the-companion-app">
|
||||
Download and install the beta version of the companion app
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
On the Play Store on your phone, go to the <a href=
|
||||
"https://play.google.com/store/apps/details?id=com.google.android.wearable.app">
|
||||
Android Wear app listing</a>. Tap <strong>Update</strong> to download and
|
||||
install the beta version of the app. After installation, confirm that
|
||||
<strong>Auto-update</strong> is selected for the app (see
|
||||
the "Set up automatic updates for specific apps" section of <a href=
|
||||
"https://support.google.com/googleplay/answer/113412">Update downloaded
|
||||
apps</a>). Tap <strong>Open</strong> to start the app.
|
||||
</p>
|
||||
|
||||
<h3 id="pairing">
|
||||
Pair the phone to the watch
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
After you install the beta version of the companion app on a phone,
|
||||
you can pair the phone to the watch:
|
||||
</p>
|
||||
|
||||
<ol>
|
||||
<li>On the phone, select your device name from the list of devices.
|
||||
A pairing code is displayed on the phone and on the watch.
|
||||
Ensure that the codes match.
|
||||
</li>
|
||||
|
||||
<li>Tap <strong>Pair</strong> to
|
||||
continue the pairing process. When the watch is connected to
|
||||
the phone, a confirmation message is displayed.
|
||||
On the phone, a screen is displayed that lists
|
||||
the accounts on the phone.
|
||||
</li>
|
||||
|
||||
<li>Choose a Google account to add and sync to your watch.
|
||||
</li>
|
||||
|
||||
<li>Confirm the screen lock and enter the password to start the copying of
|
||||
the account from the phone to the watch.
|
||||
</li>
|
||||
|
||||
<li>Follow the instructions in the wizard to finish the
|
||||
pairing process.
|
||||
</li>
|
||||
</ol>
|
||||
|
||||
<p>
|
||||
You can begin testing your app with the preview.
|
||||
</p>
|
||||
|
||||
<h2 id="set_up_an_emulator">
|
||||
Set Up an Emulator
|
||||
</h2>
|
||||
@@ -564,11 +667,11 @@ This is the Android Wear SDK Preview License Agreement (the “License Agreement
|
||||
Click <strong>Next</strong>.
|
||||
</li>
|
||||
|
||||
<li>Select an <strong>N</strong> image to download. The images may be on
|
||||
<li>Select a <strong>Nougat</strong> image to download. The images may be on
|
||||
the <strong>x86</strong> tab instead of the <strong>Recommended</strong>
|
||||
tab, until installed. For example, select the image with the
|
||||
<strong>Release Name</strong> of N, the <strong>API Level</strong> of N,
|
||||
and the <strong>Target</strong> of "Android 6.X (with Android Wear)".
|
||||
<strong>Release Name</strong> of Nougat, the <strong>API Level</strong> of 24,
|
||||
and the <strong>Target</strong> of "Android 7.0 (with Android Wear)".
|
||||
When the download and installation are complete, click
|
||||
<strong>Finish</strong> and then click <strong>Next</strong>.
|
||||
</li>
|
||||
|
||||
@@ -143,8 +143,9 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
<p>
|
||||
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.
|
||||
</p>
|
||||
|
||||
@@ -29,7 +29,7 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
|
||||
<p>
|
||||
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 <a href=
|
||||
@@ -48,10 +48,8 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
</h2>
|
||||
|
||||
<p>
|
||||
1. For compatibility with the <a href="{@docRoot}preview/overview.html">N
|
||||
Developer Preview</a>, follow the <a href=
|
||||
"{@docRoot}preview/setup-sdk.html">setup instructions</a> for installing
|
||||
the latest version of Android Studio.
|
||||
1. For compatibility with Android 7.0, install the latest version of
|
||||
<a href="https://developer.android.com/studio/index.html">Android Studio</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
@@ -63,7 +61,7 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
<ul>
|
||||
<li>Under the <strong>SDK Platforms tab</strong>:
|
||||
<ul>
|
||||
<li>Android N Preview
|
||||
<li>Android 7.0 (Nougat)
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -107,10 +105,10 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
|
||||
<tr>
|
||||
<td>
|
||||
<a href="http://storage.googleapis.com/androiddevelopers/shareables/wear-preview/wearable-support-preview-2-docs.zip">wearable-support-preview-2-docs.zip</a>
|
||||
<a href="http://storage.googleapis.com/androiddevelopers/shareables/wear-preview/wearable-support-preview-3-docs.zip">wearable-support-preview-3-docs.zip</a>
|
||||
</td>
|
||||
<td>MD5: afb770c9c5c0431bbcbdde186f1eae06<br>
|
||||
SHA-1: 81d681e61cee01f222ea82e83297d23c4e55b8f3
|
||||
<td>MD5: 22bae00e473e39e320aae8ea09a001a5<br>
|
||||
SHA-1: 474502cc7092bcf0bd671441b8654aa8d6c155ed
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
@@ -163,7 +161,7 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
following, which requires that your the Google Repository <a href=
|
||||
"#install_android_studio_and_the_latest_packages">is the latest
|
||||
version</a>:
|
||||
<code>compile 'com.google.android.support:wearable:2.0.0-alpha2'</code>
|
||||
<code>compile 'com.google.android.support:wearable:2.0.0-alpha3'</code>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
@@ -190,12 +188,12 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
</li>
|
||||
|
||||
<li>Optionally, select the <strong>Phone and Tablet</strong> option. If
|
||||
you plan to use N Preview APIs in a phone app, then the Minimum SDK
|
||||
option list, select <strong>API N: Android 6.x (N Preview)</strong>.
|
||||
you plan to use Android 7.0 APIs in a phone app, then the Minimum SDK
|
||||
option list, select <strong>API 24: Android 7.0 (Nougat)</strong>.
|
||||
</li>
|
||||
|
||||
<li>Select the <strong>Wear</strong> option, and in the Minimum SDK
|
||||
option list, select the latest available (<strong>N Preview</strong>)
|
||||
option list, select the latest available (<strong>API Nougat</strong>)
|
||||
option. Click <strong>Next</strong> until you exit the Create New Project
|
||||
wizard.
|
||||
</li>
|
||||
@@ -215,7 +213,7 @@ page.image=images/cards/card-n-sdk_2x.png
|
||||
following, which requires that your the Google Repository <a href=
|
||||
"#install_android_studio_and_the_latest_packages">is the latest
|
||||
version</a>:
|
||||
<code>compile 'com.google.android.support:wearable:2.0.0-alpha2'</code>
|
||||
<code>compile 'com.google.android.support:wearable:2.0.0-alpha3'</code>
|
||||
</li>
|
||||
</ul>
|
||||
</li>
|
||||
|
||||
@@ -23,7 +23,9 @@ page.tags="preview", "developer preview"
|
||||
|
||||
<ul>
|
||||
<li><a href="#general">General Advisories</a></li>
|
||||
<li><a href="#platform-version">Platform API Version</a></li>
|
||||
<li><a href="#deprecations">Deprecations</a></li>
|
||||
<li><a href="#dp3">Developer Preview 3</a></li>
|
||||
<li><a href="#dp2">Developer Preview 2</a></li>
|
||||
<li><a href="#dp1">Developer Preview 1</a></li>
|
||||
</ul>
|
||||
@@ -46,10 +48,25 @@ page.tags="preview", "developer preview"
|
||||
panics and crashes.
|
||||
</li>
|
||||
<li>Some apps <strong>may not function as expected</strong> on the new
|
||||
platform version. This includes Google’s apps and other apps.
|
||||
platform version. This includes Google's apps and other apps.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="platform-version">
|
||||
Platform API Version
|
||||
</h2>
|
||||
|
||||
<p>
|
||||
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 <strong>24</strong>:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><code>compileSdkVersion</code></li>
|
||||
<li><code>targetSdkVersion</code></li>
|
||||
</ul>
|
||||
|
||||
<h2 id="deprecations">Deprecations</h2>
|
||||
|
||||
<p>The following fields are deprecated in the preview:</p>
|
||||
@@ -64,6 +81,275 @@ page.tags="preview", "developer preview"
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="dp3">Developer Preview 3</h2>
|
||||
|
||||
<div class="wrap">
|
||||
<div class="cols">
|
||||
<div class="col-6of12">
|
||||
<p><em>Date: September 2016<br />
|
||||
Builds: Wearable Support 2.0.0-alpha3, NVE68J<br/>
|
||||
Emulator support: x86 & ARM (32-bit)<br/>
|
||||
</em></p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<h3 id="new-in-fdp3">
|
||||
New in Preview 3
|
||||
</h3>
|
||||
|
||||
<p>
|
||||
For access to system images and the companion app for Preview 3, see
|
||||
<a href="https://developer.android.com/wear/preview/downloads.html">
|
||||
Download and Test with a Device</a>.
|
||||
</p>
|
||||
|
||||
<h4>
|
||||
Additions for standalone apps and the Play Store on Wear
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
For information about planning your Wear 2.0 app, see <a href=
|
||||
"https://developer.android.com/wear/preview/features/standalone-apps.html">
|
||||
Standalone Apps</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
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).
|
||||
</p>
|
||||
|
||||
<p>
|
||||
Run-time permissions are required.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For information about distributing your Wear 2.0 app, see <a href=
|
||||
"https://developer.android.com/wear/preview/features/app-distribution.html">
|
||||
App Distribution</a>.
|
||||
</p>
|
||||
|
||||
<h4 id="additions-to-the-complications-api">
|
||||
Complications API additions
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
For Preview 3, additions and changes have been made to the Complications
|
||||
API. The <a href=
|
||||
"https://developer.android.com/wear/preview/features/complications.html">documentation</a>
|
||||
includes information about the following additions and changes:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li>To receive complication data and open the provider chooser, a watch
|
||||
face must have the <code>RECEIVE_COMPLICATION_DATA</code> permission.
|
||||
</li>
|
||||
|
||||
<li>To ease a request for the new permission and the starting of the
|
||||
chooser, the <code>ComplicationHelperActivity</code> class is available
|
||||
in the wearable support library. This class should be used instead of
|
||||
<code>ProviderChooserIntent</code> to start the chooser in almost all
|
||||
cases.
|
||||
</li>
|
||||
|
||||
<li>Watch faces can specify default providers that are used until a user
|
||||
selects a provider.
|
||||
</li>
|
||||
|
||||
<li>The complication types used for "empty" data are changed.
|
||||
</li>
|
||||
|
||||
<li>A new permission was added to ensure that only the Android Wear
|
||||
system can bind to provider services.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<p>
|
||||
For changes related to the <code>ComplicationData</code> object, see
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/behavior-changes.html">Behavior
|
||||
Changes</a>.
|
||||
</p>
|
||||
|
||||
<h4 id="wearable-recycler-view-api">
|
||||
Curved Layout
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
For information about creating a curved layout using
|
||||
the <code>WearableRecyclerView</code> API in your Wear 2.0 app, see
|
||||
<a href="https://developer.android.com/wear/preview/features/wearable-recycler-view.html">
|
||||
Curved Layout</a>.
|
||||
</p>
|
||||
|
||||
<h4 id="notifications-features-fdp3">
|
||||
Notifications features
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
To learn about adding an inline action to a notification,
|
||||
see <a href="https://developer.android.com/wear/preview/notifications.html#inline">Inline
|
||||
Action</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
To learn about adding images to a notification, see
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/notifications.html#images">Adding
|
||||
images to a notification</a>.
|
||||
</p>
|
||||
|
||||
<p>
|
||||
For additions related to the bridging of notifications from a companion
|
||||
app to a watch, see <a href=
|
||||
"https://developer.android.com/wear/preview/features/bridger.html">Bridging
|
||||
Mode for Notifications</a>.
|
||||
</p>
|
||||
|
||||
<h4 id="additions-for-smart-reply">
|
||||
Smart Reply additions
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
Smart Reply responses are generated by an entirely on-watch,
|
||||
machine-learning model using the context provided by <a href=
|
||||
"https://developer.android.com/wear/preview/features/notifications.html#messaging">
|
||||
MessagingStyle</a> notifications. Use the <a href=
|
||||
"https://developer.android.com/reference/android/support/v4/app/NotificationCompat.Action.Builder.html#setAllowGeneratedReplies(boolean)">
|
||||
setAllowGeneratedReplies(boolean)</a> method to enable Smart Reply for
|
||||
your <code>MessagingStyle</code> notification.
|
||||
</p>
|
||||
|
||||
<h3 id="known-issues-3">
|
||||
Known Issues
|
||||
</h3>
|
||||
|
||||
<h4 id="notifications">
|
||||
Notifications
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>The <code>MessagingStyle</code> <a href=
|
||||
"https://developer.android.com/wear/preview/features/notifications.html#images">
|
||||
notifications with images</a> posted by standalone apps don't show
|
||||
images in the notification (i.e., bridged notifications show images,
|
||||
but standalone notifications don't).
|
||||
</li>
|
||||
|
||||
<li>This preview release does not include support for notification
|
||||
groups.
|
||||
</li>
|
||||
|
||||
<li>With Wear 2.0, a watch can receive notifications directly from
|
||||
Firebase Cloud Messaging (FCM), which replaces Google Cloud Messaging
|
||||
(GCM). However, in Preview 3 of Wear 2.0, FCM does not function with
|
||||
iOS-paired watches.
|
||||
</li>
|
||||
|
||||
<li>Smart Reply responses are only shown in <code>RemoteInput</code> when
|
||||
<code>RemoteInput</code> is called from a <code>MessagingStyle</code>
|
||||
expanded notification. Smart Reply responses are not shown in
|
||||
<code>RemoteInput</code> when <code>RemoteInput</code> is called from an
|
||||
<a href=
|
||||
"https://developer.android.com/wear/preview/features/notifications.html#inline">
|
||||
inline action</a> within the stream—an action set with the <a href=
|
||||
"https://developer.android.com/reference/android/support/v4/app/NotificationCompat.Action.WearableExtender.html#setHintDisplayActionInline(boolean)">
|
||||
setHintDisplayActionInline(true)</a> method.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="companion-app">
|
||||
Companion app
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>The preview companion app is not compatible with Android 4.3
|
||||
(Jelly Bean MR2), which has an SDK build version code of:
|
||||
<code>JELLY_BEAN_MR2</code></li>
|
||||
</ul>
|
||||
|
||||
<ul>
|
||||
<li>In permission screens in the preview companion app:
|
||||
If you deny a permission, you cannot
|
||||
proceed. Instead of denying a permission, tap <strong>Skip</strong>.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
|
||||
<h4 id="developer-console">
|
||||
Developer Console
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>If you set a minimum SDK version of 24, the Play Developer Console
|
||||
states that there are few supported devices.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="system-user-interface">
|
||||
System user interface and apps
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>Dismissing multiple notifications can cause an app to forcibly close.
|
||||
</li>
|
||||
|
||||
<li>The "Ok Google" detection and voice transcription may not work
|
||||
reliably.
|
||||
</li>
|
||||
|
||||
<li>Google Fit is not available with Preview 3.
|
||||
</li>
|
||||
|
||||
<li>Syncing for embedded apps is not enabled for the preview. Therefore,
|
||||
to test an app on a device, add it to the Play Store or side-load it
|
||||
onto a watch. Some existing Wear apps, e.g. Google Maps, are only
|
||||
using the embedded apps mechanism currently, and are therefore not
|
||||
installable on the preview (and therefore do not appear on the watch).
|
||||
</li>
|
||||
|
||||
<li>In Play Store search results on the watch,
|
||||
results other than apps sometimes appear.
|
||||
</li>
|
||||
|
||||
<li>Media controls/notifications are not bridged
|
||||
to the watch from an Android KitKat phone.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="devices">
|
||||
Devices
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>In Android Wear emulators, the Play Store app requires that an
|
||||
account is synced to the device before the app can be opened.
|
||||
</li>
|
||||
|
||||
<li>On the Huawei Watch, selecting the language, followed by multiple
|
||||
acknowledgement dialogues, results in a black screen.
|
||||
</li>
|
||||
|
||||
<li>On the LG Watch Urbane 2nd Edition, when answering a call from the
|
||||
watch, the watch does not provide audio from the caller.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="smart-reply">
|
||||
Smart Reply
|
||||
</h4>
|
||||
|
||||
<ul>
|
||||
<li>Smart Reply is only available if your watch's system language is
|
||||
English.
|
||||
</li>
|
||||
|
||||
<li>Smart Reply responses are not generated for all messages.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h2 id="dp2">Developer Preview 2</h2>
|
||||
|
||||
<div class="wrap">
|
||||
@@ -78,24 +364,9 @@ page.tags="preview", "developer preview"
|
||||
</div>
|
||||
|
||||
<h3 id="new-in-fdp2">
|
||||
<strong>New in Preview 2</strong>
|
||||
New in Preview 2
|
||||
</h3>
|
||||
|
||||
<h4 id="platform-version-24">
|
||||
Platform API Version
|
||||
</h4>
|
||||
|
||||
<p>
|
||||
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 <strong>24</strong>:
|
||||
</p>
|
||||
|
||||
<ul>
|
||||
<li><code>compileSdkVersion</code></li>
|
||||
<li><code>targetSdkVersion</code></li>
|
||||
</ul>
|
||||
|
||||
<h4 id="wearable-drawers">
|
||||
Wearable drawers
|
||||
</h4>
|
||||
@@ -174,7 +445,7 @@ page.tags="preview", "developer preview"
|
||||
</p>
|
||||
|
||||
<h3 id="known-issues-2">
|
||||
<strong>Known Issues</strong>
|
||||
Known Issues
|
||||
</h3>
|
||||
|
||||
<h4 id="notifications-2">
|
||||
@@ -239,6 +510,10 @@ page.tags="preview", "developer preview"
|
||||
|
||||
<li>Unable to turn off the Wi-Fi on a wearable.
|
||||
</li>
|
||||
|
||||
<li>After music is played on a companion phone,
|
||||
music card notifications are not mirrored to the watch.
|
||||
</li>
|
||||
</ul>
|
||||
|
||||
<h4 id="companion-app-2">
|
||||
|
||||
Reference in New Issue
Block a user