2017-10-03 8 views
0

내가 마모 메시지를 수신 할 수있는 간단한 서비스를 만든 호출되지 onMessageReceived.WearableListenenerService은

<service 
      android:name=".serviceforwatchlock" 
      android:enabled="true" 
      android:exported="true"> 
      <intent-filter> 
       <action android:name="com.google.android.gms.wearable.MESSAGE_RECEIVED" /> 
       <data android:scheme="wear" android:host="*" 
        android:path="/start-activity" /> 
      </intent-filter> 
     </service> 

이제 내 마모 코드 :

또한, 여기 내 매니페스트입니다

new Thread(new Runnable() { 
      @Override 
      public void run() { 
       NodeApi.GetConnectedNodesResult nodes = Wearable.NodeApi.getConnectedNodes(mApiClient).await(); 
       for(Node node : nodes.getNodes()) { 
        MessageApi.SendMessageResult result = Wearable.MessageApi.sendMessage(
          mApiClient, node.getId(), "/start_activity", "lockscreenGTP".getBytes()).await(); 
       } 
      } 
     }).start(); 

onMessageReceived 메서드가 호출되지 않고 나는 또한 오류 메시지를 받게 해달라고. 내가 도대체 ​​뭘 잘못하고있는 겁니까?

답변

0

thread에서 확인할 수있는 이유 중 하나는 가능한 원인은 앱이 다른 키로 서명되어 있다는 것입니다. 휴대 전화 및 웨어러블 앱의 패키지 이름은 동일하며 동일한 서명을 공유해야합니다. 두 앱 모두 동일한 키로 서명했는지 확인하십시오. 이 thread에서 applicationId이 동일한 지 확인하는 것도 좋습니다.

+0

릴리스 버전이 아니므로 응용 프로그램이 아무 키나 서명되지 않았습니다. 나는 또한 패키지가 동일하다는 것을 확인했다. – Tomhawk