Что такое Uri для Wearable.DataApi.getDataItem () после использования PutDataMapRequest?

Я тестируюНосимый Data Layer Api как описано вУчебник по Android.

Существует API низкого уровня, основанный наDataItem, который может иметь только байтовый массив в качестве полезной нагрузки, поэтому обучение рекомендует использоватьPutDataMapRequestчто, по-видимому, в основном эквивалентноBundle (т.е. сериализуемая карта) при использовании Intents. Вы в основном создаете экземпляр этого класса, затем заполняете значения и отправляете его.

private final static String DATA_PATH = "/testdata";

PutDataMapRequest dataMap = PutDataMapRequest.create(DATA_PATH);
dataMap.getDataMap().putInt(...);

PutDataRequest request = dataMap.asPutDataRequest();
PendingResult<DataApi.DataItemResult> pendingResult = Wearable.DataApi.putDataItem(mGoogleApiClient, request);
pendingResult.setResultCallback(...);

Теперь я хочу проверить, правильно ли хранились эти данные (для тестирования на самом контроллере меня сейчас не беспокоит носимость). Соответствующие методы для этого находятся вDataApi класс, поэтому я могу позвонить:

PendingResult<DataApi.DataItemResult> pending;
pending = Wearable.DataApi.getDataItem(mGoogleApiClient, uri);
pending.setResultCallback(...);

а затем использоватьDataMapItem.fromDataItem() внутри обратного вызова, чтобы получить значение.

Проблема в:какой фактический Uri запрашивает DataItemResult?

Данные хранятся, потому что если я используюWearable.DataApi.getDataItems(mGoogleApiClient) перебиратьвсе сохраненные данные, это действительно там, и Uri:

"wear://<some guid here>/testdata"

И используя этот Uri сDataApi.getDataItem() возвращает правильный результат. Но я не знаю, какгенерировать это, так как я использовал только/testdata часть для созданияPutDataRequest...

Или я делаю вещи неправильно?

Ответы на вопрос(1)

Ваш ответ на вопрос