| page.title=Creating Wearable Apps |
| page.image=wear/images/notifications.png |
| |
| @jd:body |
| |
| <div id="tb-wrapper"> |
| <div id="tb"> |
| <h2>Dependencies and Prerequisites</h2> |
| <ul> |
| <li>Android Studio 0.8 or later and Gradle 0.12 or later</li> |
| </ul> |
| </div> |
| </div> |
| |
| <p> |
| Wearable apps run directly on the device, giving you access to hardware such as sensors and the |
| GPU. They are fundamentally the same as apps built for other devices using the Android SDK, but |
| differ greatly in design and usability and the amount of functionality provided. |
| These are the main differences between handheld and wearable apps:</p> |
| |
| <ul> |
| <li>The system enforces a timeout period. If you are displaying an activity and user's don't |
| interact with it, the device sleeps. When it wakes back up, the Wear home screen is displayed |
| instead of your activity. If you need to show something persistent, create a notification in the |
| context stream instead.</li> |
| <li>Wearable apps are relatively small in size and functionality compared to handheld apps. |
| They contain only what makes sense on the wearable, which is usually a small |
| subset of the corresponding handheld app. In general, you should carry out operations on the |
| handheld when possible and send the results to the wearable. |
| </li> |
| <li>Users don't download apps directly onto the wearable. Instead, you bundle |
| the wearable app inside the handheld app. When users install the handheld app, |
| the system automatically installs the wearable app. However, for development |
| purposes, you can still install the wearable app directly to the wearable.</li> |
| <li><p>Wearable apps can access much of the standard Android APIs, but don't support |
| the following APIs:</p> |
| <ul> |
| <li>{@link android.webkit}</li> |
| <li>{@link android.print}</li> |
| <li>{@link android.app.backup}</li> |
| <li>{@link android.appwidget}</li> |
| <li>{@link android.hardware.usb}</li> |
| </ul> |
| <p> |
| You can check if a wearable supports a feature by calling |
| {@link android.content.pm.PackageManager#hasSystemFeature hasSystemFeature()} |
| before trying to use an API.</p> |
| </li> |
| </ul> |
| |
| <p class="note"><b>Note:</b> We recommend using Android Studio for Android Wear development |
| as it provides project setup, library inclusion, and packaging conveniences that aren't available |
| in ADT. The rest of this training assumes you're using Android Studio. |
| </p> |
| |
| <h2>Lessons</h2> |
| <dl> |
| <dt><a href="{@docRoot}training/wearables/apps/creating.html">Creating and Running a Wearable App</a></dt> |
| <dd>Learn how to create an Android Studio project that |
| contains both the wearable and handheld app modules and how to run the app on a device |
| or emulator.</dd> |
| <dt><a href="{@docRoot}training/wearables/apps/layouts.html">Creating Custom Layouts</a></dt> |
| <dd>Learn how to create and display custom layouts for notifications and |
| activities.</dd> |
| <dt><a href="{@docRoot}training/wearables/apps/voice.html">Adding Voice Capabilities</a></dt> |
| <dd>Learn how to launch an activity with a voice actions and how to start the |
| system speech recognizer app to obtain free-form voice input.</dd> |
| <dt><a href="{@docRoot}training/wearables/apps/packaging.html">Packaging Wearable Apps</a></dt> |
| <dd>Learn how to package a wearable app inside a |
| handheld app. This allows the system to install the wearable app automatically when |
| users install the companion handheld app from the Google Play store.</dd> |
| <dt><a href="{@docRoot}training/wearables/apps/bt-debugging.html">Debugging over Bluetooth</a></dt> |
| <dd>Learn how to debug your wearable over Bluetooth instead of USB.</dd> |
| </dl> |