안녕하세요.. 안드로이드 초보 개발자 입니다.

 

이번에 제가 OAuth인증 기반 으로 어플을 하나 만들고 있는데요.

 

인증을 받으면 AccessToken 과 AccessTokenSecret 이 나오는데 이걸 파일, DB에 쓰자니 귀찮고..;;; 그래서 Application 클래스를 상속받고 그 안에 필드로 token, tokenSecret을 선언하여 발급 받으면 해당 영역에 저장하고 있습니다.

 

그렇게 해서 다른 액티비티에서 Application에서 값을  잘 가져오고 있습니다...

 

그런데 문제가 발생한 것이 백그라운드 프로세스( Service를 상속한 백그라운드 서비스)에서 Application 영역의 데이터를 가져오지 못하더라구요.

 

다른 액티비티들에서는 값을 잘 가져오는데 이상하게 백그라운드 서비스에서만 값을 못가져오고, 초기 값만 가져오더라구요..

 

그래서 혹시나 해서 서비스에서와 액티비티에서 각각의 Application을 toString 으로 찍어보니 같은 인스턴스가 아니더라구요.

 

즉 액티비티에서 사용하는 Application 과 Service에서 사용하는 Application영역이 달라서 Activiy에서 아무리 set을 해줘도 Service영역에서 가져다 쓰지 못하는 거더라구요..

 

저는 이 application이라는게 싱글 톤으로 하나만 생성되는줄 알았는데 그것도 아닌가 보네요..;;

 

혹시 이문제를 해결할 수 있는 방법이 있을까 하고 이렇게 글을 남깁니다.

 

아무쪼록 고수 님들의 좋은 답변 기다리고 있겠습니다/...ㅜㅜ