Configuration Android Wear companion活动装备不会出现在手表表面
我想为我的Android Wear watch face提供一个配套配置活动。我已经建立了一个应用程序,它具有所有配置,可以直接与手表进行通信,但我只能作为应用程序从启动器启动它,但设备不会显示在Android Wear应用程序的手表部分!我可以允许用户通过companion应用程序和Google Android Wear应用程序配置手表表面吗 以下是我在电话模块中声明活动的方式:Configuration Android Wear companion活动装备不会出现在手表表面,configuration,wear-os,watch-face-api,Configuration,Wear Os,Watch Face Api,我想为我的Android Wear watch face提供一个配套配置活动。我已经建立了一个应用程序,它具有所有配置,可以直接与手表进行通信,但我只能作为应用程序从启动器启动它,但设备不会显示在Android Wear应用程序的手表部分!我可以允许用户通过companion应用程序和Google Android Wear应用程序配置手表表面吗 以下是我在电话模块中声明活动的方式: <activity android:name=".Main" and
<activity
android:name=".Main"
android:label="@string/app_name">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="com.google.android.wearable.watchface.category.COMPANION_CONFIGURATION" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
<intent-filter>
<action android:name="android.intent.action.SEND"></action>
<category android:name="android.intent.category.DEFAULT"></category>
<data android:mimeType="image/*"></data>
</intent-filter>
</activity>
在手表部分,我添加了:
<meta-data
android:name=
"com.google.android.wearable.watchface.companionConfigurationAction"
android:value=
"virtualgs.photowatch.Main" />
<meta-data
android:name=
"com.google.android.wearable.watchface.wearableConfigurationAction"
android:value=
"virtualgs.photowatch.Main" />
结果是一样的——Android Wear应用程序上没有显示任何装备。我认为这是关于XML文件配置的正确答案:
<activity
android:name=".DigitalWatchFaceWearableConfigActivity"
android:label="@string/digital_config_name">
<intent-filter>
<action android:name=
"com.example.android.wearable.watchface.CONFIG_DIGITAL" />
<category android:name=
"com.google.android.wearable.watchface.category.WEARABLE_CONFIGURATION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
除了在电话模块中定义活动外,您还需要在佩戴模块中引用它,作为手表表面服务声明的一部分,如下所示:
<service
android:name=".MyWatchFaceService" ... />
<!-- companion configuration activity -->
<meta-data
android:name=
"com.google.android.wearable.watchface.companionConfigurationAction"
android:value=
"com.my.watchface.CompanionConfigurationActivity" />
<!-- wearable configuration activity -->
<meta-data
android:name=
"com.google.android.wearable.watchface.wearableConfigurationAction"
android:value=
"com.my.watchface.WearableConfigurationActivity" />
...
...
将com.my.watchface.CompanionConfigurationActivity和com.my.watchface.WearableConfigurationActivity分别替换为磨损模块和电话模块中配置活动的完全限定名称。请尝试以下操作:
<service
android:name=".MyWatchFaceService" ... />
<!-- companion configuration activity -->
<meta-data
android:name=
"com.google.android.wearable.watchface.companionConfigurationAction"
android:value=
"com.my.watchface.CompanionConfigurationActivity" />
<!-- wearable configuration activity -->
<meta-data
android:name=
"com.google.android.wearable.watchface.wearableConfigurationAction"
android:value=
"com.my.watchface.WearableConfigurationActivity" />
...
电话清单:
<intent-filter>
<action android:name="com.virtualgs.photowatch.MAIN_CONFIG" />
<category android:name="com.google.android.wearable.watchface.category.COMPANION_CONFIGURATION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
android:value="com.virtualgs.photowatch.MAIN_CONFIG" />
监视清单:
<intent-filter>
<action android:name="com.virtualgs.photowatch.MAIN_CONFIG" />
<category android:name="com.google.android.wearable.watchface.category.COMPANION_CONFIGURATION" />
<category android:name="android.intent.category.DEFAULT" />
</intent-filter>
<meta-data
android:name="com.google.android.wearable.watchface.companionConfigurationAction"
android:value="com.virtualgs.photowatch.MAIN_CONFIG" />
我认为手机清单中的意图操作必须与手表清单中的元数据值相同才能工作。这是手表的,对吗?我用的那个是打电话用的。你可以在这里看到:谢谢你的帮助。由于我只需要手机上的配置,我认为只需要com.google.android.wearable.watchface.companionConfigurationAction部分?我更新了我的手表XML以使用您的示例,但将com.my.watchface.CompanionConfigurationActivity替换为我的应用程序名virtualgs.photowatch.Main(这是主要活动),结果是一样的。