如何保存和恢复 GeckoView 的会话状态?
How can I save & restore GeckoView's session state?
我想在方向更改之间保持会话处于活动状态。 Geckoview 的文档在这方面有所欠缺。似乎 GeckoSession
有一个接受 SessionState
的 restoreState
方法。有没有办法从会话的当前状态创建 SessionState
对象?
我尝试过的另一种方法是创建一个 Parcelable
对象并将其设置为 restoreState
的 SessionState
,但这没有用。
您可以跟踪 GeckoSession
安装 ProgressDelegate
和实施 onSessionStateChange
的当前状态,例如:
class ProgressDelegate extends GeckoSession.ProgressDelegate {
@Override
public void onSessionStateChange(GeckoSession session,
SessionState sessionState) {
// store sessionState somewhere
}
}
ProgressDelegate delegate = new ProgressDelegate();
session.setProgressDelegate(delegate);
我想在方向更改之间保持会话处于活动状态。 Geckoview 的文档在这方面有所欠缺。似乎 GeckoSession
有一个接受 SessionState
的 restoreState
方法。有没有办法从会话的当前状态创建 SessionState
对象?
我尝试过的另一种方法是创建一个 Parcelable
对象并将其设置为 restoreState
的 SessionState
,但这没有用。
您可以跟踪 GeckoSession
安装 ProgressDelegate
和实施 onSessionStateChange
的当前状态,例如:
class ProgressDelegate extends GeckoSession.ProgressDelegate {
@Override
public void onSessionStateChange(GeckoSession session,
SessionState sessionState) {
// store sessionState somewhere
}
}
ProgressDelegate delegate = new ProgressDelegate();
session.setProgressDelegate(delegate);