Android Wear已经推出了一些包含自定义监视面(like this one)的应用程序。它们不仅仅是展示表盘的应用程序;它们是完全成熟的面孔,可在长按手表主屏幕时选择。我找不到有关如何设置应用以提供自定义面孔的任何文档。如何配置您的应用以提供面孔?
答案 0 :(得分:18)
编辑 随着Android Wear到Lollipop的更新,Android Wear Watch Faces有一个全新的(更重要的是,官方)API。
您可以查看主题的blog post,阅读official documentation或download the sample code。
此行以下的所有内容仅供历史使用:)
您只需要提供具有特定intent-filter的Activity,并包含一些权限(来自here的信息)。
的活动:
<activity
android:name=".WatchActivity"
android:allowEmbedded="true"
android:theme="@android:style/Theme.DeviceDefault.NoActionBar"
android:label="@string/watch_preview_name">
<meta-data
android:name="com.google.android.clockwork.home.preview"
android:resource="@drawable/watch_preview_image" />
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="com.google.android.clockwork.home.category.HOME_BACKGROUND" />
</intent-filter>
</activity>
和权限:
<uses-permission android:name="com.google.android.permission.PROVIDE_BACKGROUND" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
顺便说一句,您在Play商店中提到的应用的源代码也是availabe on github。
在this G+ post by Sam Duke中很好地解释了包含WAKE_LOCK权限的原因。基本上,当手表变暗时,CPU进入低功率状态,因此不会立即显示对表盘显示的更新。每当需要更新屏幕时获取PARTIAL_WAKE_LOCK都可以解决此问题。
编辑 请注意,这是一个&#34;非正式的&#34; API,并且根据this post by Wayne Piekarski,当官方API发布时(将在Android Wear升级到L时发生),它可能会在未来中断。
答案 1 :(得分:4)
编辑:以下是我的一篇新博文,解释了Lollipop中新的Watch Face API。
http://toastdroid.com/2014/12/10/developing-a-watch-face-for-android-wear-lollipop/
我写了一篇博客文章,描述了开发表盘的过程。
http://toastdroid.com/2014/07/18/developing-watchfaces-for-android-wear/
答案 2 :(得分:0)
如果您想使用OpenGL ES创建表盘,那么我们创建表面的经验将对您有用:
http://androidworks-kea.blogspot.com/2015/02/developers-notes-v-custom-watch-faces.html