2010-05-30 5 views
1

Android 활동 라이프 사이클에서 onPause 및 onResume의 간단한 값을 전달하는 가장 좋은 방법을 알아내는 데 어려움을 겪고 있습니다. 나는 액티비티 데이터에 액티비티를 얻고 여분의 번들을 사용하는 방법을 이해하지만 액티비티간에 데이터를 전달하기 위해 작동합니까? SharedPreferences를 사용해야합니까?onPause와 onResume 사이에 데이터를 전달하는 가장 좋은 방법은 무엇입니까?

답변

2

응용 프로그램의 일시적인 상태를 저장하려는 경우 onSaveInstanceState()onRestoreInstanceState()을 재정의하십시오.

이들은 라이프 사이클 메소드가 아니기 때문에 항상 호출되는 것은 아닙니다. 그들은 시스템에 의해 사용되므로 Activity은 사용자가 떠나서 다시 돌아 왔을 때 사용자가 어떻게 그것을 남겼는지를 보여줍니다. 사용자가 응용 프로그램을 명시 적으로 종료하면 (예 : 뒤로 단추를 눌러) 응용 프로그램이 호출되지 않으므로 영구 사용자 데이터를 쓰는 데 사용해서는 안됩니다.

당신은 to record persistent data you have several options하려면 다음

  • 공유 환경 설정
  • 내부 저장
  • 외부 저장
  • SQLite 데이터베이스

당신이 원하는 데이터에 따라 달라집니다 사용할 수있는 하나 저장.

+0

또한 특정 화면 회전의 경우에는 onRetainNonConfigurationInstance() 및 getLastNonConfigurationInstance()가 있습니다. – CommonsWare

관련 문제