Başlık özetler. Aynı soru here. Herhangi bir yardım alıp alamayacağımı görmek için SO'ya gönderiyorum. Ayrıca karşı karşıya olduğum sorunu göstermek için bir almost minimal project yaptım, bu nedenle takip eden kod, belirtilen kod parçasına. Şu anda ne yapıyorum süslüBir Bluetooth bağlantısı olayı içinde mesaj gönderirken AppMessage geri aramaları alınmıyor Başlık
Hiçbir şey:
- My saat yüzüne
.pebble_app_connection_handler
kullanarak telefon ile bluetooth bağlantısı yukarı olduğunu notified olduğunu. Bu bluetooth callback numaralı message to the phone kullanarakapp_message_outbox_send()
kullanarak kurdum. BT bağlantısı olduğunda, tabiki. - Android uygulamasında bu iletileri ve calls an
IntentService
dinleyen birBroadcastReceiver
vardır. Bir süre sonra,IntentService
calculates the data, pushes it to the watch ve sets itself to run again. Ben bekliyordun ki
:
- BT bağlantısı kurma, bağlantı işleyicisi çağrılacak.
app_message_outbox_send()
, ileti başlatmanın herhangi bir hatayla karşılaşıp karşılaşmadığını bildiren bir değer döndürür. Normal olarak, buAPP_MSG_OK
, ancakAPP_MSG_BUSY
olabilir ve bunun kesinlikle farkındayım.- Telefona mesaj göndermenin senkronize olmayan sürecinin gerçekten işe yarayıp yaramadığını belirtmek için uygulama mesajı geri aramaları (
app_message_register_inbox_received
ve arkadaşları) çağrılmalıdır. Bu, docs numaralı belgede belirtilmiştir. Ben görüyorum Ne
:
saat yüzüne yüklendiğinde el güncelleme işlemini tetikleyebilir çünkü beklenen adımlar olur. Ancak, güncelleştirme bir BT bağlantısı olayı tarafından tetiklendiğinde, beklenen adım 1 ve 2 gerçekleşir, ancak adım 3 değil.
Bu özellikle adım 2'de APP_MSG_OK
aldığımda daha da kötüleşir çünkü makul olan herşeyi beklemeliyim. saat gitmedi ve ben kendimi, uygulama mesajı geri aramalarının içinde bir şey almak için hazırlamalıyım. Temel olarak, doktorlar tarafından 'un hiçbir zaman'un gelmediği bir çağrı için beklemeleri söylendi.
Bu, zamanının% 100'ünde olur.
Yardımlarınız için teşekkür ederiz. Güncelleme aralığını takip etmek için saati kullanan başka bir çözümüm var, ancak bunun en son Android özelliklerini kullanarak daha fazla pil tasarrufu yapmamı sağladığına inanıyorum.belgelerine
“Sen izle' pebble_app_connection_handler' abone olarak _Pebble mobil app_ bağlı olup olmadığını belirlemek için izin verir gerekenler [...] Ayrıca Çakıl izle can olmadığını belirlemek için izin verir 'pebblekit_connection_handler' öğesine abone olarak _PebbleKit companion app_ ile bir bağlantı kurun […] _Pebble mobil uygulaması ile bir bağlantı kurulduğunda Android_ için _true dönecek (PebbleKit mesajları Android uygulaması üzerinden yönlendirildiği için) ”Kaynak: https: //developer.pebble.com/docs/c/Foundation/Event_Service/ConnectionService/ – davidcesarino
Ayrıca, bluetooth i olduğunda bile 'connection_service_peek_pebblekit_connection'' true' döndürdüğünü fark ettim Kapalı veya saatin Çakıl uygulamasında bağlantısı kesildi. Sadece 'connection_service_peek_pebble_app_connection' herhangi bir etkisi var gibi görünüyor. – davidcesarino