【问题标题】:Custom watch face for Android Wear适用于 Android Wear 的自定义表盘
【发布时间】:2014-07-08 03:41:36
【问题描述】:

已经为 Android Wear 推出了一些包含自定义表盘 (like this one) 的应用。它们不仅仅是简单地显示表盘的应用程序;它们是成熟的面孔,可以在长按手表的主屏幕时选择。我找不到任何有关如何设置您的应用程序以提供自定义面孔的文档。您如何配置您的应用以提供面孔?

【问题讨论】:

    标签: android wear-os


    【解决方案1】:

    编辑 随着 Android Wear 对 Lollipop 的更新,Android Wear Watch Faces 有了一个全新的(更重要的是,官方)API。

    您可以查看主题上的blog post,阅读official documentationdownload the sample code

    此行以下的所有内容仅用于历史目的:)


    您只需要提供一个带有特定意图过滤器的 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


    包含 WAKE_LOCK 权限的原因在 this G+ post by Sam Duke 中有很好的解释。基本上,当手表变暗时,CPU 进入低功耗状态,因此不会立即显示对表盘显示的更新。在屏幕需要更新时获取 PARTIAL_WAKE_LOCK 可以解决此问题。


    编辑 请注意,这是一个“非官方”API,根据this post by Wayne Piekarski,它可能会在将来发布官方 API 时中断(这应该在 Android Wear 时发生)已升级为 L)。

    【讨论】:

    • 啊,就是这样。权限有什么用?它似乎可以在没有它们的 Wear 模拟器上工作,而且 WAKE_LOCK 似乎特别不需要。
    • 对WAKE_LOCK也很好奇
    • 需要唤醒锁。我在 G+ 社区上发了一篇关于它的帖子
    • @Sam 您能否详细说明为什么它是必需的?你有帖子的链接吗?
    • @Jarett 当然。这是帖子:plus.google.com/112368135370463751319/posts/P5Ajfzj6NWt很高兴把它写下来或复制粘贴到这个答案中。
    【解决方案2】:

    编辑下面是我的一篇新博文,它解释了 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/

    【讨论】:

      【解决方案3】:

      如果您想使用 OpenGL ES 创建表盘,那么我们在创建表盘方面的经验将对您有用:

      http://androidworks-kea.blogspot.com/2015/02/developers-notes-v-custom-watch-faces.html

      【讨论】:

        猜你喜欢
        • 2016-10-28
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2014-11-27
        • 2013-04-28
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多