我正在开发一个 Android 应用程序,我需要打开 pdf 文件并在按下后退按钮时返回相同的活动。
问题
我使用意图和启动活动正确打开了 pdf 文件(来自 ActivityOne),但是当我按下后退按钮时,我在 ActivityOne(和以前的活动)中拥有的所有数据都已丢失。
这是我显示pdf的开始活动代码:
File file = new File(Environment.getExternalStorageDirectory().getAbsolutePath()
+"/"+ myApplication.getUsuarioActual().getFacturaActual().getPdf());
Intent intent = new Intent(Intent.ACTION_VIEW, Uri.fromFile(file));
intent.setType("application/pdf");
startActivity(intent);
我该怎么做才能解决这个问题?当我打开另一个应用程序并关闭它时也会发生同样的情况:当返回我的应用程序时,它显示一个错误,指出所有数据为空。
编辑
在阅读了那个问题之后,正如@TheCharliemops 向我推荐的那样,我知道这是我需要的,但我还有另一个与此相关的问题。
我有一个myApplication
扩展Application
来维护全局应用程序状态的类,我在其中保存我在不同活动中读/写的所有数据。
我的问题是我是否必须保存我myApplication
在每个活动中使用的所有数据,onSaveInstanceState
或者有一些最简单的方法来做到这一点。