O que é o Uri para Wearable.DataApi.getDataItem () depois de usar PutDataMapRequest?

Estou testando oAPI de camada de dados vestível conforme descrito noTutorial para Android.

Existe uma API de baixo nível baseada em torno deDataItem, que pode ter apenas uma matriz de bytes como carga útil, portanto, o treinamento recomenda o usoPutDataMapRequest, que parece ser basicamente equivalente a umBundle (ou seja, um mapa serializável) ao usar Intents. Você basicamente cria uma instância dessa classe, preenche os valores e envia-os.

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(...);

Agora, quero verificar se esses dados foram armazenados corretamente (para teste, no próprio computador de mão, não estou preocupado com o uso no momento). Os métodos apropriados para isso estão noDataApi classe, para que eu possa chamar:

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

e depois useDataMapItem.fromDataItem() dentro do retorno de chamada para obter o valor.

O problema é:qual é o Uri real para solicitar o DataItemResult?

Os dados são armazenados, porque se eu usarWearable.DataApi.getDataItems(mGoogleApiClient) para iterartudo dados armazenados, estão realmente lá, e o Uri é:

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

E usando este Uri comDataApi.getDataItem() retorna o resultado correto. Mas eu não tenho noção de comogerar porque eu usei apenas o/testdata parte para criar oPutDataRequest...

Ou estou fazendo as coisas incorretamente?

questionAnswers(1)

yourAnswerToTheQuestion