在我的项目中,wearos 应用程序使用数据项与手持移动应用程序进行通信。我的wearOS应用程序通过在数据层中放置和更改数据项来发送数据。
在放置项目之前,我想在可能覆盖其内容之前加载/获取该项目。我可以使用 dataClient.getDataItems() 接收它。但对我来说,这似乎不是最佳选择,我想使用 dataClient.getDataItem(uri)。为了获取特定项目,我只需要 uri。
uri format: wear://<node_id>/<path>
我唯一不知道的是我的创建者节点的node_id。通过日志记录,我发现,即使我每次创建一个新的 DataClient,当我将一个新项目放入数据层时,节点 ID 仍保持不变。但我找不到访问 id 的方法。
我觉得应该有一个像 getLocalNodeId() 这样的简单函数来获取丢失的 uri 部分。我错了吗?
最佳答案
不知道为什么我花了这么长时间才找到:
var node_id = Tasks.await(getNodeClient(context).localNode).id
关于android - 如何获取 dataclient.getDataItem(Uri) 自己的 node_id?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61186928/