我有一个应用程序,用户可以开始播放音频并看到歌词滚动。
如果单击Android手机上的后退按钮,则不会保存应用程序状态。我希望在该状态下停止应用程序,并在用户返回时从那里继续。
我想暂停音频并停止滚动。
我怎样才能做到这一点?
如果我收到来电,应用程序可以正常工作。音频停止。那么依赖于音频状态的滚动也是如此。
应用程序是通过骨干网,zepto使用phonegap构建的。
答案 0 :(得分:0)
检查this question以获取更多相关信息。我只是在这里放置一些来自该答案的信息: @覆盖 public void onSaveInstanceState(Bundle savedInstanceState){ super.onSaveInstanceState(savedInstanceState); //将UI状态更改保存到savedInstanceState。 //如果进程是,则此包将传递给onCreate //杀死并重新启动 savedInstanceState.putBoolean(" MyBoolean",true); }
您需要覆盖onSaveInstanceState(Bundle savedInstanceState)并将要更改的应用程序状态值写入Bundle参数,如下所示:
离开应用程序(主页按钮)时会执行此操作。
@Override
public void onSaveInstanceState(Bundle savedInstanceState) {
super.onSaveInstanceState(savedInstanceState);
// Save UI state changes to the savedInstanceState.
// This bundle will be passed to onCreate if the process is
// killed and restarted.
savedInstanceState.putBoolean("MyBoolean", true);
savedInstanceState.putDouble("myDouble", 1.9);
savedInstanceState.putInt("MyInt", 1);
savedInstanceState.putString("MyString", "Welcome back to Android");
// etc.
}
当你回到应用程序时,这将被执行。
@Override
public void onRestoreInstanceState(Bundle savedInstanceState) {
super.onRestoreInstanceState(savedInstanceState);
// Restore UI state from the savedInstanceState.
// This bundle has also been passed to onCreate.
boolean myBoolean = savedInstanceState.getBoolean("MyBoolean");
}