1*d353a188SXin Li 2*d353a188SXin LiAndroid AlwaysOn Sample 3*d353a188SXin Li=================================== 4*d353a188SXin Li 5*d353a188SXin LiA basic sample showing how to support ambient mode for native Android Wear apps. 6*d353a188SXin Li 7*d353a188SXin LiIntroduction 8*d353a188SXin Li------------ 9*d353a188SXin Li 10*d353a188SXin Li[WearableActivity][1] offers methods for supporting your native app staying on the screen when the Wear device enters ambient mode. 11*d353a188SXin Li 12*d353a188SXin LiThis example extends [WearableActivity][1] and overrides onEnterAmbient, onUpdateAmbient, and onExitAmbient to allow the simple native Wear app to support ambient mode. 13*d353a188SXin Li 14*d353a188SXin LiIn ambient mode, this app follows best practices by keeping most pixels black, avoiding large blocks of white pixels, using only black and white, and disabling anti-aliasing (following the [design guidelines for Watch Faces][2]). 15*d353a188SXin Li 16*d353a188SXin LiIn addition and most importantly, the app sleeps while in ambient mode for 20 seconds between any updates to conserving battery life (processor allowed to sleep). If you can hold off on updates for a full minute, you can throw away the Handler and just use onUpdateAmbient to save even more battery life. 17*d353a188SXin Li 18*d353a188SXin LiAs always, you will still want to apply the [performance guidelines][3] outlined in the Watch Faces documention to your app. 19*d353a188SXin Li 20*d353a188SXin Li[1]: http://developer.android.com/reference/android/support/wearable/activity/WearableActivity.html 21*d353a188SXin Li[2]: https://developer.android.com/training/wearables/watch-faces/designing.html#DesignGuidelines 22*d353a188SXin Li[3]: https://developer.android.com/training/wearables/watch-faces/performance.html 23*d353a188SXin Li 24*d353a188SXin LiPre-requisites 25*d353a188SXin Li-------------- 26*d353a188SXin Li 27*d353a188SXin Li- Android SDK 27 28*d353a188SXin Li- Android Build Tools v27.0.2 29*d353a188SXin Li- Android Support Repository 30*d353a188SXin Li 31*d353a188SXin LiScreenshots 32*d353a188SXin Li------------- 33*d353a188SXin Li 34*d353a188SXin Li<img src="screenshots/1-main-active.png" height="400" alt="Screenshot"/> <img src="screenshots/2-main-ambient.png" height="400" alt="Screenshot"/> <img src="screenshots/3-main-active-round.png" height="400" alt="Screenshot"/> <img src="screenshots/4-main-ambient-round.png" height="400" alt="Screenshot"/> 35*d353a188SXin Li 36*d353a188SXin LiGetting Started 37*d353a188SXin Li--------------- 38*d353a188SXin Li 39*d353a188SXin LiThis sample uses the Gradle build system. To build this project, use the 40*d353a188SXin Li"gradlew build" command or use "Import Project" in Android Studio. 41*d353a188SXin Li 42*d353a188SXin LiSupport 43*d353a188SXin Li------- 44*d353a188SXin Li 45*d353a188SXin Li- Google+ Community: https://plus.google.com/communities/105153134372062985968 46*d353a188SXin Li- Stack Overflow: http://stackoverflow.com/questions/tagged/android 47*d353a188SXin Li 48*d353a188SXin LiIf you've found an error in this sample, please file an issue: 49*d353a188SXin Lihttps://github.com/googlesamples/android-AlwaysOn 50*d353a188SXin Li 51*d353a188SXin LiPatches are encouraged, and may be submitted by forking this project and 52*d353a188SXin Lisubmitting a pull request through GitHub. Please see CONTRIBUTING.md for more details. 53*d353a188SXin Li 54*d353a188SXin LiLicense 55*d353a188SXin Li------- 56*d353a188SXin Li 57*d353a188SXin LiCopyright 2017 The Android Open Source Project, Inc. 58*d353a188SXin Li 59*d353a188SXin LiLicensed to the Apache Software Foundation (ASF) under one or more contributor 60*d353a188SXin Lilicense agreements. See the NOTICE file distributed with this work for 61*d353a188SXin Liadditional information regarding copyright ownership. The ASF licenses this 62*d353a188SXin Lifile to you under the Apache License, Version 2.0 (the "License"); you may not 63*d353a188SXin Liuse this file except in compliance with the License. You may obtain a copy of 64*d353a188SXin Lithe License at 65*d353a188SXin Li 66*d353a188SXin Lihttp://www.apache.org/licenses/LICENSE-2.0 67*d353a188SXin Li 68*d353a188SXin LiUnless required by applicable law or agreed to in writing, software 69*d353a188SXin Lidistributed under the License is distributed on an "AS IS" BASIS, WITHOUT 70*d353a188SXin LiWARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the 71*d353a188SXin LiLicense for the specific language governing permissions and limitations under 72*d353a188SXin Lithe License. 73