2016-06-01 15 views
1

Я пытаюсь закодировать свое первое приложение Pebble C, основанное на приложении pebble.js, которое я сделал. Я в основном показываю графики автобусов.pebblekit js send array to pebble C by appmessage

Вопрос: Как передать информацию из pebblekit js в галерею C по appmessage, чтобы я мог создать меню? как я могу передать массив с несколькими измерениями по приложению к часам?

вот пример JSON моего pebblekit JS должен отправить на часы:

{ 
    "buses":[ 
     { 
     "bus_number":"55", 
     "stops":[ 
      { 
       "stop_id":"109698", 
       "stop_times":[ 
        { 
         "arrival_time":"21:22:25", 
         "departure_time":"21:22:25" 
        }, 
        { 
         "arrival_time":"21:52:25", 
         "departure_time":"21:52:25" 
        }, 
        ... 
       ] 
      }, 
      ... 
     } 
    } 

ответ

1

К сожалению, нет никакого способа, чтобы отправить массив изначально. Это общая схема того, как я об этом говорю в своих приложениях. Я не буду отправлять код, потому что он зависит от проекта.

  1. Добавить библиотеку MessageQueue к вашему проекту. Эта библиотека отлично подходит для отправки большого количества данных за раз или по разным частям.

  2. Создать sendArray функцию, которая просто перебирает каждый из объектов в массиве, и отправляет их в Pebble с MessageQueue.sendAppMessage()

  3. На стороне C, в обработчике почтовом ящике, проверьте наличие определенного ключа, который вы ожидаете для отправки с объектом массива. Например, если у каждого объекта массива есть ключ temperature, проверьте этот ключ, и тогда вы узнаете, что остальные данные должны быть там.

    3.1. Вставьте все эти данные, которые вы только что получили на стороне C, из DictionaryIterator, в какой-то вид struct, который вы создали для представления элемента массива.

    3.2. После обработки всех этих данных вставьте обновленный файл struct в массив.

Сохранение стека для этого массива, как правило, также является хорошей идеей.

Сообщите мне, если вам нужна дополнительная помощь или я могу объяснить что-нибудь получше.