【发布时间】:2015-12-22 17:02:53
【问题描述】:
我刚刚开发了一个简单的 Android Wear 表盘,开始学习有关 Android Wear 的知识。
应用程序:https://play.google.com/store/apps/details?id=com.gerardcuadras.minimalflat(如此简单)
当用户点击屏幕时,表盘会改变其背景颜色。现在,我想添加一个显示颜色列表的 Activity,并让用户选择一个而不是点击屏幕。
我将此行添加到我的清单中,将配置切换添加到表盘。
<meta-data
android:name="com.google.android.wearable.watchface.wearableConfigurationAction"
android:value="com.gerardcuadras.minimalflat.wearable.watchface.CONFIG_DIGITAL" />
之后我创建了一个处理按钮点击的 Activity:
public void broadcastIntent(View view){
Log.d(TAG, "broadcastIntent: Pressed button");
Intent intent = new Intent();
intent.setAction("com.gerardcuadras.minimalflat.CUSTOM_INTENT");
intent.putExtra("extra", "extra data");
sendBroadcast(intent);
}
然后在 MyWatchFace.java(扩展 CanvasWatchFaceService)上,我有它应该处理广播:
public class MyReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.d(TAG, "onReceive: WORKS!");
}
}
当我运行模拟器并单击按钮时,我在控制台上看到的唯一内容是:
“broadcastIntent:按下按钮”
所以接收方(可能是发送方)没有工作,因为它没有记录 onReceive() 日志。
我是 Android 的新手。我确定我做得不好,或者我错过了一些东西。
我将不胜感激任何帮助或任何文档以继续逐步学习。
谢谢
【问题讨论】:
-
您是否尝试将意图从手持活动发送到穿戴设备?
-
您是否正在为该广播注册监听器?
标签: java android android-intent broadcastreceiver wear-os