在 GWT 中保存 activity 状态

Saving activity state in GWT

我很难弄清楚如何在 GWT 中保存 activity 的状态,就像在 Android 中一样。

我的意思是,当 activity 将被丢弃时,我们如何在某处序列化它的状态并在再次显示 activity 时检索它?

我已经阅读了以下官方指南
http://www.gwtproject.org/doc/latest/DevGuideMvpActivitiesAndPlaces.html
但它没有说明我的问题。

你能帮忙吗?

编辑:

现在我想知道 Tokenizet getToken 方法有什么用...

public static class Tokenizer implements PlaceTokenizer<HelloPlace> {
        @Override
        public String getToken(HelloPlace place) {

            return place.getHelloName();
        }

        @Override
        public HelloPlace getPlace(String token) {

            return new HelloPlace(token);
        }
    }

Activity 不应该有状态。视图具有状态,当用户在应用程序中从一个地方移动到另一个地方时,视图不会被丢弃。

例如,activity 可以加载数据并填充相应的视图。它还可以在视图中设置标志,例如populated = true。下次 activity 启动时,它可以检查视图是否已填充并采取相应行动。

是否需要此类标志取决于您的要求。有时,用户希望每次访问某个地方时都能看到刷新的数据。在其他情况下,它可能没有必要或不切实际。

编辑:

令牌用于向 activity 提供有关用户希望在视图中看到的内容的附加信息。例如,视图可以显示有关博主的信息。然后令牌可以提供用户希望看到的博主的 ID:

/#BloggerBio:12345

当 BloggerBioActivity 解析此标记(“12345”)时,它知道加载 id=12345 的博主的简介并将其显示在 BloggerBioView 中。

当用户再次访问此视图时,发生什么情况由您决定。即使token相同也可以刷新视图,或者将token与视图中显示的博主id进行比较,如果相同则什么都不做。