1

我正在尝试编写我的第一个 Pebble C 应用程序,该应用程序基于我制作的 pebble.js 应用程序。我基本上是在显示巴士时刻表。

我的问题是,如何通过 appmessage 将信息从 pebblekit js 传递到 pebble C,以便构建菜单?如何通过 appmessage 将多维数组传递给手表?

这是我的 pebblekit js 必须发送到手表的 json 示例:

{  
    "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"
                    },
                    ...
                 ]
            },
            ...
       }
   }
4

1 回答 1

1

不幸的是,没有办法在本地发送数组。这是我如何在我的应用程序中进行操作的一般框架。我不会发布代码,因为它因项目而异。

  1. MessageQueue库添加到您的项目中。这个库非常适合一次发送大量数据或快速发送许多不同的数据。

  2. 创建一个sendArray函数,它简单地遍历数组中的每个对象并将它们发送到 PebbleMessageQueue.sendAppMessage()

  3. 在 C 端,在您的收件箱处理程序中,检查您希望与数组对象一起发送的某个键。例如,如果每个数组对象中都有一个temperature键,请检查该键,然后您就会知道其余数据也应该在那里。

    3.1。将您刚刚从 C 端获得的所有这些数据插入到您创建的用于表示数组项的DictionaryIterator某种数据中。struct

    3.2. 处理完所有数据后,将更新后的数据插入struct到数组中。

为该数组保留堆栈计数通常也是一个好主意。

让我知道您是否需要更多帮助,或者我是否可以更好地解释。

于 2016-10-29T23:52:37.203 回答