Interaction Android Pebble avec un cadran de montre :
Pour demander une actualisation des données dès que le cadran de montre est affiché :
Côté PEBBLE : ajouter juste après l’instruction » tick_handler(t, MINUTE_UNIT); » un » send_appmessage(KEY_PRESS, 1); » (cf. ci-dessous) qui enverra une info à l’application Android.
//-- Write message to buffer & send
static void send_appmessage(int key, int value) {
DictionaryIterator *iter;
app_message_outbox_begin(&iter);
Tuplet tuplet = TupletInteger(key, value);
dict_write_tuplet(iter, &tuplet);
app_message_outbox_send();
}
Côté Android :
@Override
protected void onResume() {
super.onResume();
// -- Réception des données en provenance de la Pebble
mReceiver = new PebbleDataReceiver(FETES_UUID) {
@Override
public void receiveData(Context context, int transactionId,
PebbleDictionary data) {
// -- Accusé de réception du message (ACK)
PebbleKit.sendAckToPebble(context, transactionId);
// -- Contrôle de l'existance de la clef
if (data.getInteger(KEY_PRESS) != null) {
//-- Traitement demande de MAJ...
Toast.makeText(MainActivity.this, "Demande de MAJ...",
//---
}
}
};
// -- Enregistrement de l'Handler
PebbleKit.registerReceivedDataHandler(this, mReceiver);
}
@Override
protected void onPause() {
super.onPause();
if (mReceiver != null) {
unregisterReceiver(mReceiver);
mReceiver = null;
}
}
@Override
protected void onDestroy() {
super.onDestroy();
if (mReceiver != null) {
unregisterReceiver(mReceiver);
mReceiver = null;
}
// PebbleKit.closeAppOnPebble(getApplicationContext(), PEBBLE_APP_UUID);
}
Traduction de l’application :
http://developer.getpebble.com/guides/publishing-tools/i18n-guide/
Votre commentaire