Wear DataAPI синхронизирует только различия коллекции

Я впервые использую Wear DataAPI. Я не смог найти в документации, действительно ли DataAPI проверяет различия в заданных элементах данных каждый раз, когда вы вводите «putDataRequest», или просто отправляет объект, который вы ему даете.

Дело в том, что я хочу синхронизировать коллекцию с несколькими (небольшими) изображениями и другими вещами. С dataApi это было бы очень легко обработать (особенно крайние случаи, когда износ не соответствует диапазону в течение короткого периода времени и т. д. по сравнению с API-интерфейсом сообщений), но я обычно не хочу отправлять по всей коллекции каждый раз, когда данные меняются, так как это может происходить довольно часто.

какой-нибудь вклад по этому поводу? Бьюсь об заклад, у многих людей есть подобные проблемы, и они уже приняли решение по этой теме :)


person Aeefire    schedule 01.10.2015    source источник


Ответы (1)


API данных будет повторно отправлять DataItem только в случае его изменения. Если вы разделите свои коллекции на отдельные DataItem, а затем обновите их, будет отправлена ​​только та, которая изменилась.

Однако имейте в виду две вещи при разбиении коллекции на DataItems:

  1. Держите ваш набор путей DataItems стабильным. Если вы используете такие пути, как путь/1, путь/2, путь/3... и всегда увеличиваете индекс, это станет проблемой для сборки мусора элемента данных. Максимально возможное повторное использование путей.
  2. Если ваша коллекция очень большая, рассмотрите возможность объединения поддиапазонов коллекции в DataItem, чтобы не отправлять их слишком много.

И, наконец: вы уверены, что не можете хранить всю коллекцию в одном DataItem и просто обновлять ее? Если в вашей коллекции меняется только небольшое количество элементов, может быть, вы можете просто разделить коллекцию на фиксированное количество DataItem объектов и вместо этого отправить их?

person gruszczy    schedule 01.10.2015