WearableListenerService onMessageReceived no se llama al dispositivo

Estoy tratando de enviar un mensaje simple de mi aplicación de desgaste de Android a mi aplicación de teléfono usando el Wearable.MessageApi .

Esta es mi devolución de llamada onConnected de GoogleApiClient en el dispositivo de desgaste.

 final PendingResult<Status> status = Wearable.DataApi.addListener(googleApiClient, this); status.setResultCallback(new ResultCallback<Status>() { @Override public void onResult(Status status) { if (!status.isSuccess()) { return; } NodeApi.GetConnectedNodesResult nodes = Wearable.NodeApi.getConnectedNodes(googleApiClient).await(); for (Node node : nodes.getNodes()) { System.out.println("Sending message: " + node.getDisplayName()); final MessageApi.SendMessageResult result = Wearable.MessageApi.sendMessage(googleApiClient, node.getId(), "request", "12345".getBytes()) .await(); System.out.println("sent: " + result.getStatus().isSuccess()); } } }); 

Y esto es mostrar lo siguiente cuando se ejecuta

 Sending message: Nexus 6P sent: true 

Y este es mi servicio registrado en mi aplicación:

 public class MyWearableListenerService extends WearableListenerService { @Override public void onMessageReceived(MessageEvent messageEvent) { Toast.makeText(this, "Received message", Toast.LENGTH_LONG).show(); } @Override public void onPeerConnected(Node peer) { Toast.makeText(this, "Peer connected", Toast.LENGTH_LONG).show(); } } 

Verifiqué correctamente que el tostado Peer connected está apareciendo cuando el emulador está conectado a mi dispositivo. Hice correctamente el reenvío de puerto para depurar el emulador de desgaste. Comprobé que mis nombres de aplicación y de paquete son consistentes en mi aplicación y usan la aplicación. Sin embargo, nunca obtengo la devolución de llamada onMessageReceived en mi dispositivo.

¡Cualquier sugerencia es bienvenida! He estado depurando esto por un día entero ahora 🙁

Oh, buen dios. Me di cuenta de mi problema. Pensé que el applicationId era el mismo, pero resultó que nunca he creado sabores de construcción en el módulo de desgaste, por lo que las dos aplicaciones fueron realmente com.example.android y com.example.android.dev ..

Espero que esto ayude a otras personas que se encontraron con el mismo problema que yo: \

  • Vista previa de Android Wear no se conecta a Wear Emulator
  • La notificación de Android Wear previene el icono parpadeante al actualizar
  • Android Wear genera dos apk
  • ¿Cómo puedo especificar que no se muestre una acción de notificación en Android Wear?
  • Cómo empaquetar una app de WatchFace sólo para la publicación de Google Play
  • ¿Cuál es la forma correcta de implementar un GridViewPager en Android Wear?
  • Depuración en Moto 360
  • Debug Android Wear Device sobre USB
  • Cómo obtener los botones del reproductor de música en Android desgaste como google play music
  • ¿Cómo puedo dibujar iconos en una cara de reloj de un proveedor de complicaciones de desgaste de Android?
  • Android Wear: ¿CardScrollView no puede desplazarse?
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.