Android Wearable API: 如何传递动态列表?

Android Wearable API: how to pass a dynamic List?

这就是我使用 DataAPI 的方式

    PutDataMapRequest dataMapReq = PutDataMapRequest.create(PATH);
    dataMapReq.getDataMap().putFloatArray(KEY, list);
    PutDataRequest putDataReq = dataMapReq.asPutDataRequest();
    Wearable.DataApi.putDataItem(mGoogleApiClient, putDataReq);

list 可以是 array[]ArrayList<>。 如果我添加一个新元素,那么我将不得不再次 put 数据映射中的列表。这将导致重新传输每个先前插入的元素?

是的,如果您更改了array/list中的一个元素,您需要放置另一个数据项,它将替换旧的。这将导致重新传输到其他设备。

一般来说,我不会担心重传。由于您可以在 DataItem 中发送多少数据,因此您可能不会发送太多数据。如果您仍然担心它,请考虑对数据进行分区并发送多个数据项(例如发送四个浮点数子数组并在另一侧合并它们)。 不要 向每个浮点数发送一个单独的数据项(巨大的开销)。