如何在独立应用程序中保存磨损数据 os android

How to save data on wear os android in standalone app

您好 android 应用程序 我使用 onSaveInstanceState 在旋转 phone 或退出应用程序时保留我的数据。现在我正在为智能手表应用制作 Wear Os,它将是独立的,但也可以连接到我在 phone 上的应用。所以我设法连接 phone 并使用 DataClient 佩戴应用程序,但我的问题是当我在手表上启动应用程序时,获得一些分数然后通过从左向右滑动我的应用程序退出应用程序我的分数重置为零。有趣的是,如果我使用电源按钮退出应用程序,分数会被保存,但我认为这与我的 onSaveInstanceState 无关。

我尝试在 Wear 应用程序中使用 onSaveInstanceState,但它不起作用。当我尝试调试时,它没有被调用。我想它不支持在 wear 上工作,我必须以某种方式为此使用 DataClient API 但我不知道如何将它用于此目的。这对我来说是全新的,我仍然是初学者。我只能设法从 phone 应用程序发送图像到 Wear 应用程序,但我希望能够在没有 phone 连接的情况下保存数据并检索它。

我只想保存 UI 中的数据,这样当用户返回我的应用时,数据不会丢失。所以需要一些简单的示例代码,比如保存一些 int 或 string 并在应用程序再次启动时检索它。

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

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