如何在独立应用程序中的Wear OS Android上保存数据

时间:2019-07-31 18:38:18

标签: android wear-os

嗨,在Android应用程序上,我在旋转手机或退出应用程序时使用onSaveInstanceState来保存数据。现在,我正在制作适用于智能手表应用程序的Wear Os,该应用程序可以独立运行,但也可以通过手机连接到我的应用程序。因此,我设法将手机和穿戴式应用程序与DataClient相连,但是我的问题是,当我在手表上启动该应用程序时,获得一些分数,然后通过从左向右滑动我的应用程序退出该应用程序,我的分数重置为零。有趣的是,如果使用电源按钮退出应用程序,则可以保存分数,但是我认为onSaveInstanceState不需要做任何事情。

我尝试在Wear应用中使用onSaveInstanceState,但它不起作用。当我尝试调试时,不会调用它。我猜它不支持在磨损环境下工作,因此我必须以某种方式使用DataClient API,但我不知道如何为此目的使用它。这对我来说是全新的,我仍然是一个初学者。我只能将图像从手机应用程序发送到穿戴式应用程序,但我希望能够在不连接手机的情况下保存数据并进行检索。

我只想从UI中保存数据,因此当用户返回我的应用程序时,数据不会丢失。因此,需要一些简单的示例代码,例如保存一些int或字符串并在再次启动应用程序时将其检索。

2 个答案:

答案 0 :(得分:0)

我认为最好的方法是使用Kotlin Room。无论如何,我都需要将数据保存在数据库中,因此每次更改数据时,我就只保存一次。也许更有效的方法是将其保存在onPause或onStop中,但是我没有很多数据,因此这对我有用。

答案 1 :(得分:0)

您可以使用标准的Android存储API在本地存储数据,就像在手机上一样。例如,您可以使用SharedPreferences API或Room持久性库。 https://developer.android.com/training/wearables/apps/standalone-apps#shared-code