2015-10-05 30 views
1

我有一个Android Wear应用程序,它将消息发送到手持设备。应该接收消息的手持设备没有任何应用UI,因此没有MainActivity。我如何获得它从可穿戴设备接收消息?如何收听磨损活动发送的信息?

当Google Play服务从可穿戴设备接收到可用于启动服务的消息时,是否触发了广播?

这是我迄今为止在移动应用程序:

public class ListenerService extends WearableListenerService { 
    public ListenerService() { 
    } 

    @Override 
    public void onMessageReceived(MessageEvent messageEvent) { 
     Log.v("Test", "ListenerService.onMessageReceived()"); 
    } 

} 

的AndroidManifest.xml:

<service 
     android:name=".ListenerService" 
     android:enabled="true" 
     android:exported="true" > 
    </service> 

的可穿发送一条消息,但onMessageReceived()不会触发。

+0

你是否遵循官方文档?你有一个完整的实现。 –

+2

你也必须在'Handheld'上实现'WearableListenerService'。 – Blackbelt

+0

@MarianoZorrilla官方文档假定手持设备具有MainActivity。 https://developer.android.com/training/wearables/data-layer/accessing.html – mushroom

回答

1

编辑

BIND_LISTENER现在已经过时了。它必须替换为

<intent-filter> 
     <action android:name="com.google.android.gms.wearable.DATA_CHANGED" /> 
     <action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" /> 
     <data android:scheme="wear" android:host="*" android:pathPrefix="/prefix" /> 
</intent-filter> 

更多信息here

老答案

你在你的清单无缘intent-filter

<intent-filter> 
    <action android:name="com.google.android.gms.wearable.BIND_LISTENER"/> 
</intent-filter> 
相关问题