am 4ec5140b: Merge "docs: Update the auto checklist and cleanup supporting docs that checklist item references. Also add information about alpha/beta Play Store channel. Reference the design spec for the 6-tap specification." into mnc-preview-docs

* commit '4ec5140be35df2e9c49558d330df06fa985f7bc9':
  docs: Update the auto checklist and cleanup supporting docs that checklist item references. Also add information about alpha/beta Play Store channel. Reference the design spec for the 6-tap specification.
This commit is contained in:
Luan Nguyen
2015-05-26 20:44:23 +00:00
committed by Android Git Automerger
5 changed files with 155 additions and 85 deletions

View File

@@ -326,6 +326,15 @@ redirects:
- from: /shareables/training/BitmapFun.zip - from: /shareables/training/BitmapFun.zip
to: /downloads/samples/DisplayingBitmaps.zip to: /downloads/samples/DisplayingBitmaps.zip
- from: /shareables/auto/AndroidAuto-audio-apps.pdf
to: http://google.com/design/spec-auto/audio-apps/design-principles.html
- from: /shareables/auto/AndroidAuto-messaging-apps.pdf
to: http://google.com/design/spec-auto/messaging-apps/voice-based-messaging.html
- from: /shareables/auto/AndroidAuto-custom-colors.pdf
to: http://google.com/design/spec-auto/colors-branding/color-themes.html
- from: /shareables/... - from: /shareables/...
to: http://commondatastorage.googleapis.com/androiddevelopers/shareables/... to: http://commondatastorage.googleapis.com/androiddevelopers/shareables/...
@@ -399,5 +408,5 @@ redirects:
to: /training/building-wearables.html to: /training/building-wearables.html
# ---------- DISTRIBUTE ------------------ # ---------- DISTRIBUTE ------------------
- from /distribute/tools/promote/badge-files.html - from: /distribute/tools/promote/badge-files.html
to: /distribute/tools/promote/badges.html to: /distribute/tools/promote/badges.html

View File

@@ -14,13 +14,13 @@ page.tags="design","Auto"
<h2><strong>UI Guidelines</strong></h2> <h2><strong>UI Guidelines</strong></h2>
<ul> <ul>
<li><a href="{@docRoot}shareables/auto/AndroidAuto-audio-apps.pdf"> <li><a href="{@docRoot}shareables/auto/AndroidAuto-audio-apps.pdf">
<strong>Auto Audio Apps (PDF)</strong></a> <strong>Auto Audio Apps</strong></a>
</li> </li>
<li><a href="{@docRoot}shareables/auto/AndroidAuto-messaging-apps.pdf"> <li><a href="{@docRoot}shareables/auto/AndroidAuto-messaging-apps.pdf">
<strong>Auto Messaging Apps (PDF)</strong></a> <strong>Auto Messaging Apps</strong></a>
</li> </li>
<li><a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf"> <li><a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf">
<strong>Auto Color Customization (PDF)</strong></a> <strong>Auto Color Customization</strong></a>
</li> </li>
</ul> </ul>
</div> </div>

View File

@@ -42,13 +42,28 @@ page.image=/distribute/images/gp-auto-quality.png
simple, predictable patterns for common tasks. simple, predictable patterns for common tasks.
</p> </p>
<p>
It's important that you test your auto app for the criteria listed on this page prior to
submitting to Google Play for review. There are two ways to test your app:
</p>
<ol>
<li> Use the Android Auto simulator to validate each checklist item. The simulator allows you to
sideload your app for testing. For more information on the simulator, see
<a href="{@docRoot}training/auto/start/index.html#test-it">Run and Test Auto Apps</a>.</li>
<li>Test your app in a vehicle by uploading your app to the alpha/beta channel on Google Play.
Apps will not work on Auto in vehicles unless they are installed from the Play Store.
For more information, see <a
href="{@docRoot}distribute/googleplay/developer-console.html#alpha-beta">Alpha and Beta Testing</a>.
</li>
</ol>
<p class="caution"> <p class="caution">
<strong>Important:</strong> The criteria listed in this page apply to your app's user interface <strong>Important:</strong> The criteria listed in this page apply to your app's user interface
and behavior when running on devices connected to an Android Auto screen. Apps must meet these and behavior when running on devices connected to an Android Auto screen. Apps must meet these
criteria to qualify as an Android Auto app on Google Play. criteria to qualify as an Android Auto app on Google Play.
</p> </p>
<div class="headerLine"> <div class="headerLine">
<h2 id="core"> <h2 id="core">
Core App Quality Core App Quality
@@ -103,8 +118,8 @@ page.image=/distribute/images/gp-auto-quality.png
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App does not display on the Auto screen animated elements such as animated graphics, games, video, or App does not display on the Auto screen animated elements such as animated graphics,
progress bars. video, or progress bars.
</p> </p>
</td> </td>
</tr> </tr>
@@ -141,7 +156,9 @@ page.image=/distribute/images/gp-auto-quality.png
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App does not include any features that distract the driver. App does not include games or other features outside of the intended app types supported
by Auto.
(<a href="{@docRoot}training/auto/start/index.html">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -152,8 +169,9 @@ page.image=/distribute/images/gp-auto-quality.png
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App never presents any form of visual information (notifications, toasts, video, images, App never activates the phone screen to present any form of visual information (notifications,
advertising, etc.) on the phone screen while the app is active in Android Auto. toasts, video, images, advertising, etc.) on the phone screen while the app is active in Android
Auto.
</p> </p>
</td> </td>
</tr> </tr>
@@ -161,7 +179,7 @@ page.image=/distribute/images/gp-auto-quality.png
<tr> <tr>
<td rowspan="3" id="layout"> <td rowspan="1" id="layout">
Layout Layout
</td> </td>
@@ -175,29 +193,6 @@ page.image=/distribute/images/gp-auto-quality.png
</td> </td>
</tr> </tr>
<tr>
<td id="AU-FT">
AU-FT
</td>
<td>
<p style="margin-bottom:.5em;">
App displays all strings using the default Roboto fonts in two approved sizes.
</p>
</td>
</tr>
<tr>
<td id="AU-ST">
AU-ST
</td>
<td>
<p style="margin-bottom:.5em;">
App does not display any individual string longer than 120 characters.
</p>
</td>
</tr>
<tr> <tr>
<td rowspan="4" id="contrast"> <td rowspan="4" id="contrast">
Visual Contrast Visual Contrast
@@ -209,7 +204,7 @@ page.image=/distribute/images/gp-auto-quality.png
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App supports day mode, which renders dark text and controls on a light background. App supports day mode, which renders dark text and controls on a light background.
(<a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf">Learn How</a>) (<a href="//google.com/design/spec-auto/colors-branding/day-night-colors.html">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -221,7 +216,7 @@ page.image=/distribute/images/gp-auto-quality.png
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App supports night mode, which renders light text and controls on a dark background. App supports night mode, which renders light text and controls on a dark background.
(<a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf">Learn How</a>) (<a href="//google.com/design/spec-auto/colors-branding/day-night-colors.html">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -234,7 +229,7 @@ page.image=/distribute/images/gp-auto-quality.png
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App provides white icon sets that the system colorizes to provide automatic App provides white icon sets that the system colorizes to provide automatic
contrast compensation. contrast compensation.
(<a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf">Learn How</a>) (<a href="//google.com/design/spec-auto/colors-branding/color-themes.html">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -246,7 +241,7 @@ page.image=/distribute/images/gp-auto-quality.png
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App provides colors that the system can optimize for easy in-vehicle readability. App provides colors that the system can optimize for easy in-vehicle readability.
(<a href="{@docRoot}shareables/auto/AndroidAuto-custom-colors.pdf">Learn How</a>) (<a href="//google.com/design/spec-auto/colors-branding/color-themes.html">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -261,7 +256,8 @@ page.image=/distribute/images/gp-auto-quality.png
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App must support voice commands. App must support voice commands in audio apps.
(<a href="{@docRoot}training/auto/audio/index.html#support_voice">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -317,7 +313,7 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
</tr> </tr>
<tr> <tr>
<td rowspan="5" id="general"> <td rowspan="6" id="general">
General General
</td> </td>
@@ -326,7 +322,18 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App loads in no more than 10 seconds. App launches in no more than 10 seconds.
</p>
</td>
</tr>
<tr>
<td id="AU-LC">
AU-LC
</td>
<td>
<p style="margin-bottom:.5em;">
App loads content in no more than 10 seconds.
</p> </p>
</td> </td>
</tr> </tr>
@@ -361,6 +368,7 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
No tasks in the app take more than six steps to complete. No tasks in the app take more than six steps to complete.
(<a href="//google.com/design/spec-auto/system-overview/drawer.html#drawer-drawer-content-patterns">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
@@ -371,43 +379,29 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
Any app button which is non-functional or disabled must be grayed out. Interactive elements that are intentionally grayed-out must be non-functional.
</p> </p>
</td> </td>
</tr> </tr>
<tr> <tr>
<td rowspan="2" id="media"> <td rowspan="1" id="media">
Media Media
</td> </td>
<td id="AU-PA"> <td id="AU-MT">
AU-PA AU-MT
</td> </td>
<td> <td>
<p style="margin-bottom:.5em;"> <p style="margin-bottom:.5em;">
App has no more than four primary actions plus one optional action overflow toggle (or five if Media apps do not autoplay or take over media focus when launched.
no action overflow is used). (<a href="{@docRoot}training/auto/audio/index.html#playback-commands">Learn How</a>)
(<a href="{@docRoot}shareables/auto/AndroidAuto-audio-apps.pdf">Learn How</a>)
</p> </p>
</td> </td>
</tr> </tr>
<tr>
<td id="AU-SA">
AU-SA
</td>
<td>
<p style="margin-bottom:.5em;">
App has no more than four optional secondary actions plus one action overflow toggle.
(<a href="{@docRoot}shareables/auto/AndroidAuto-audio-apps.pdf">Learn How</a>)
</p>
</td>
</tr>
<tr> <tr>
<td rowspan="2" id="notifications"> <td rowspan="2" id="notifications">
Notifications Notifications
@@ -439,6 +433,70 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
</td> </td>
</tr> </tr>
<tr>
<td rowspan="5" id="messages">
Messaging
</td>
<td id="AU-MI">
AU-MI
</td>
<td>
<p style="margin-bottom:.5em;">
App is able to successfully receive incoming messages.
(<a href="{@docRoot}training/auto/messaging/index.html">Learn How</a>)
</p>
</td>
</tr>
<tr>
<td id="AU-MG">
AU-MG
</td>
<td>
<p style="margin-bottom:.5em;">
Messages are properly grouped and displayed in the correct order.
(<a href="{@docRoot}training/auto/messaging/index.html#build_conversation">Learn How</a>)
</p>
</td>
</tr>
<tr>
<td id="AU-MR">
AU-MR
</td>
<td>
<p style="margin-bottom:.5em;">
User is able to successfully reply to a message.
(<a href="{@docRoot}training/auto/messaging/index.html">Learn How</a>)
</p>
</td>
</tr>
<tr>
<td id="AU-MS">
AU-MS
</td>
<td>
<p style="margin-bottom:.5em;">
Apps use short-form messaging app design patterns. Traditional long-form messaging apps, such
as apps for email, are not permitted.
</p>
</td>
</tr>
<tr>
<td id="AU-MP">
AU-MP
</td>
<td>
<p style="margin-bottom:.5em;">
Apps are peer-to-peer messaging services and not notification service apps such as weather,
stocks, and sport scores apps.
</p>
</td>
</tr>
</table> </table>
<!-- <!--
@@ -457,14 +515,18 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
</div> </div>
<p style="margin-top:30px;"> <p style="margin-top:30px;">
<strong>After I submit my app, how will find out if my app does not meet all <strong>After submitting my app, how will I find out if my app does not meet all
the requirements for Android Auto?</strong> the requirements for Android Auto?</strong>
</p> </p>
<p>If you are planning to develop apps for Auto, you are encouraged to begin enabling and testing <p>
your apps now. However, Auto-enabled apps cannot be published at this time. Join the If your app does not meet the usability requirements described on this page, the Play Store team
<a href="http://g.co/AndroidAutoDev" class="external-link">Auto will contact you through the email address specified in the <a href=
Developers Google+ community</a> for updates on when you will be able to submit "https://play.google.com/apps/publish/">Google Play Developer Console</a> account associated with
your Auto-enabled apps.</p> the app.
</p>
<p class="note">
<strong>Note:</strong> For information about how to publish your Auto app in Google Play, see <a
href="{@docRoot}distribute/googleplay/auto.html">Distributing to Android Auto</a>.
</p> </p>
@@ -474,11 +536,11 @@ data-sortorder="-timestamp" data-cardsizes="9x3" data-maxresults="6">
tablets?</strong> tablets?</strong>
</p> </p>
<p> <p>
No. When Google begins the approval process, your auto app will undergo a driver safety No. When Google begins the approval process, your Auto app will undergo a driver safety
review, and will not be review, and will not be
available for distribution until the app is approved. Because this is the same APK as available for distribution until the app is approved. Because this is the same APK as
for phones and tablets, your Play Store updates for those devices will not be available until the for phones and tablets, your Play Store updates for those devices will not be available until the
Auto approval process is complete. Auto app approval process is complete.
</p> </p>
<p class="caution"> <p class="caution">

View File

@@ -429,6 +429,12 @@ app should play its default content. If playback was paused with
{@link android.media.session.MediaSession.Callback#onPause onPause()}, your {@link android.media.session.MediaSession.Callback#onPause onPause()}, your
app should resume playback.</dd> app should resume playback.</dd>
<p class="note">
<strong>Note:</strong> Google Play requires your app not to play music immediately when it
launches. For more information on this and other requirements, see
<a href="{@docRoot}distribute/essentials/quality/auto.html">Auto App Quality</a>.
</p>
<dt>{@link android.media.session.MediaSession.Callback#onPlayFromMediaId <dt>{@link android.media.session.MediaSession.Callback#onPlayFromMediaId
onPlayFromMediaId()}</dt> onPlayFromMediaId()}</dt>
<dd>Invoked when the user chooses to play a specific item. The method is passed <dd>Invoked when the user chooses to play a specific item. The method is passed

View File

@@ -52,9 +52,8 @@ page.image=auto/images/assets/icons/messaging_app_notifications.png
<p> <p>
Staying connected through messages is important to many drivers. Chat apps can let users Staying connected through messages is important to many drivers. Chat apps can let users
know if a child need to be picked up, or if a dinner location has been changed. Apps that provide know if a child need to be picked up, or if a dinner location has been changed.
sports information might tell the user who just won the big game, and let the user ask questions The Android framework enables messaging apps to extend their
about other games being played. The Android framework enables messaging apps to extend their
services into car dashboards using a standard user interface that lets drivers keep their eyes services into car dashboards using a standard user interface that lets drivers keep their eyes
on the road. on the road.
</p> </p>
@@ -79,7 +78,7 @@ page.image=auto/images/assets/icons/messaging_app_notifications.png
<p> <p>
Messaging apps do not run directly on the Android dashboard hardware. They are installed on Messaging apps do not run directly on the Android dashboard hardware. They are installed on
separate, Android mobile device. When the mobile device is plugged into a dashboard, a separate Android mobile device. When the mobile device is plugged into a dashboard,
the installed messaging apps can offer services for viewing and responding to messages the installed messaging apps can offer services for viewing and responding to messages
through the Auto user interface. through the Auto user interface.
</p> </p>
@@ -98,7 +97,7 @@ page.image=auto/images/assets/icons/messaging_app_notifications.png
has read or replied to a message. has read or replied to a message.
</ul> </ul>
<h3 id="#concepts">Concepts and Objects</h3> <h3 id="concepts">Concepts and objects</h3>
<p>Before you start designing your app, it's helpful to understand how Auto <p>Before you start designing your app, it's helpful to understand how Auto
handles messaging.</p> handles messaging.</p>
@@ -106,23 +105,19 @@ handles messaging.</p>
<p>Each individual chunk of communication is a <em>message</em>. A message is a <p>Each individual chunk of communication is a <em>message</em>. A message is a
short length of text, suitable for the Auto device to read aloud. In a chat app, short length of text, suitable for the Auto device to read aloud. In a chat app,
this might be a single message from one person to another: <code>"Fitzy -- Jane this might be a single message from one person to another: <code>"Fitzy -- Jane
can't come to the ball, her youngest has the croup. :-( --Liz"</code> In a can't come to the ball, her youngest has the croup. :-( --Liz"</code>.</p>
sports app, a message might be a single bit of news about a game: <code>"Granger
scores for Harpies at 7 minutes in."</code></p>
<p>A <em>conversation</em> is a group of messages that are all grouped together <p>A <em>conversation</em> is a group of messages that are all grouped together
in some way. Auto uses the conversation information to group the messages in some way. Auto uses the conversation information to group the messages
together when presenting them to the user. In a chat app, a conversation might together when presenting them to the user. In a chat app, a conversation might
be all the messages between the user and another person (for example, all be all the messages between the user and another person (for example, all
the messages back and forth between Darcy and Elizabeth). In a sports app, a the messages back and forth between Darcy and Elizabeth). Every message
conversation might be all the messages about a particular game. Every message
belongs to a conversation, even if it's the only message in that conversation. belongs to a conversation, even if it's the only message in that conversation.
Each conversation has a <em>conversation name</em>. Each conversation has a <em>conversation name</em>.
The conversation name is used by Android Auto to The conversation name is used by Android Auto to
present the messages; it's up to your app to choose an appropriate conversation present the messages; it's up to your app to choose an appropriate conversation
name. In a chat app, the conversation name is usually the person your user is name. In a chat app, the conversation name is usually the person your user is
talking to. talking to.</p>
In a sports app, this might be the name of the teams playing in the game.</p>
<p>The v4 support library defines an {@link <p>The v4 support library defines an {@link
android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation android.support.v4.app.NotificationCompat.CarExtender.UnreadConversation
@@ -177,9 +172,7 @@ contained in those objects have been heard by the user.</li>
<li>If the user sends a reply, Auto triggers the app's "message reply" intent and <li>If the user sends a reply, Auto triggers the app's "message reply" intent and
attaches a transcript of the user's response. The app can take appropriate attaches a transcript of the user's response. The app can take appropriate
action, based on the app's logic. For example, a chat app might interpret the action, based on the app's logic. For example, a chat app might interpret the
reply as a message to go to the other conversation participants, while a sports reply as a message to go to the other conversation participants.</li>
app might try to interpret the "reply" as a request for other information
("What's the score in the Sharks game?").</li>
</ol> </ol>