我正在构建一个Wear应用程序,它将与掌上电脑上的WearableListenerService进行通信。 但是,我想确保当应用程序在手表上启动时服务已启动并运行。
我最初的想法是发送意图或广播消息以启动服务。 但是,我一直无法弄清楚如何让手表将它发送到配对的手持设备。
在手表方面:
Intent intent = new Intent();
intent.setAction("my.wearable.CONNECT");
sendBroadcast(intent);
在掌上电脑方面:
public class WearableBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Intent startServiceIntent = new Intent(context, WearableService.class);
context.startService(startServiceIntent);
}
}
<receiver android:name=".service.wearable.WearableBroadcastReceiver" >
<intent-filter>
<action android:name="my.wearable.CONNECT" />
</intent-filter>
</receiver>
答案 0 :(得分:4)
有几件事需要清除
Android Wear设备和Android设备之间的通信接口如下
使用NodeApi获取已连接的节点ID。
您不能从磨损方发送意图并希望在手机端接收它。
在电话方面,如果您要延长WearableListenerService
,则此服务由Android操作系统自行管理。这意味着,如果服务是从磨损中接收消息或数据,Android将自动创建服务,为您的请求提供服务并在需要时销毁服务。你不必在这做任何特别的事情。
清单中定义的意图(上面粘贴的副本) 足以让Android OS完成上述服务管理。