为可穿戴设备进行切换"仅限#34;改变Android表盘的背景

时间:2015-04-13 22:52:43

标签: android wear-os watch-face-api

我是一个菜鸟,我很难理解指南,为可穿戴者做一个简单的配置活动,以便能够改变我的表盘的背景。文档使它看起来很简单,但当我复制代码并更改为我的包名称时,我什么都看不到。任何人都可以用白痴来解释,因为开发者网站非常模糊。

1 个答案:

答案 0 :(得分:0)

您需要将以下行添加到AndroidManifest.xml中的watch face服务条目中:

<!-- wearable configuration activity -->
<meta-data
    android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
    android:value="com.your.package.CONFIG" />

然后,您需要确保配置活动具有以下intent-filter:

<intent-filter>
    <action android:name="com.your.package.CONFIG" />
    <category android:name=
        "com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
    <category android:name="android.intent.category.DEFAULT" />
</intent-filter>

请勿更改com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION以使用您自己的包名称!与上面的com.google.android.wearable.watchface.wearableConfigurationAction相同;这些值必须与它们完全匹配 - 只使用我放入com.your.package的包名。

以下是我自己的某个项目中的监视面部服务和配置活动的清单条目,因此您可以看到这些更改的实际效果:

<service
    android:name=".WatchFaceService"
    android:allowEmbedded="true"
    android:label="@string/app_name"
    android:permission="android.permission.BIND_WALLPAPER"
    android:taskAffinity="" >
    <meta-data
        android:name="android.service.wallpaper"
        android:resource="@xml/watch_face" />
    <meta-data
        android:name="com.google.android.wearable.watchface.preview"
        android:resource="@drawable/watch_face_preview" />

    <!-- wearable configuration activity -->
    <meta-data
        android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
        android:value="com.your.package.CONFIG" />

    <intent-filter>
        <action android:name="android.service.wallpaper.WallpaperService" />

        <category android:name="com.google.android.wearable.watchface.category.WATCH_FACE" />
    </intent-filter>
</service>

<activity
    android:name=".WearableConfigActivity"
    android:label="@string/title_activity_wearable_config" >
    <intent-filter>
        <action android:name="com.your.package.CONFIG" />
        <category android:name=
            "com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
        <category android:name="android.intent.category.DEFAULT" />
    </intent-filter>
</activity>