2015-10-05 52 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> 
相關問題