2012-06-05 4 views
0

저는 지난 몇 달 동안 회사의 라이브러리를 개발하는 중이었습니다. 내부 저장소에 데이터를 저장하거나로드 할 때마다 파일 스트림에 컨텍스트가 필요해 보입니다.파일 스트림에 문맥이 필요한 이유는 무엇입니까?

나는이 같은 일을 할 수있는 라이브러리를 디자인 한 :

싱글 톤 클래스와 authinfo (응용 프로그램 키 및 장치 ID를 포함) (사용자 및 암호)
  • 를 제공하고 키 체인을 처리하기 위해 만들어

    1. 웹 서비스 호출 요청이있을 때마다 호출 클래스는 싱글 톤 클래스의 인스턴스를 가져오고 다음과 같이 키 체인 및 인증 정보를 얻습니다.

      SingletonClass.getInstance(). getCredentials (Context ctx);

    결과적으로 내 라이브러리의 대부분이 자격 증명과 장치 ID를 매개 변수로 사용하여 API를 호출하는 것을 중심으로 호출 작업의 컨텍스트를 제공해야합니다.

    내가 특별히이 라인을 언급하고있다 :

    .... 
          FileOutputStream fos = ctx.openFileOutput(filename,      
            Context.MODE_PRIVATE); 
          fos.write(buf); 
          fos.close(); 
    .... 
    

    내가 활동 호출의 특정 컨텍스트가 필요한 이유에 혼란 스러워요. 어떤 도움이라도 대단히 감사합니다. 이 디자인 문제를 해결할 다른 방법이 있습니까?

  • 답변

    0

    이 경우 응용 프로그램 컨텍스트가 작동해야합니다.이 메서드를 사용하면 Using Application context everywhere?을 사용하면 쉽게 전달할 필요없이 응용 프로그램 컨텍스트를 쉽게 얻을 수 있습니다.

    +0

    Brilliant! 감사! – CodePrimate

    0

    파일 저장소 API는 Context 클래스에서 제공됩니다. 그래서 필요합니다.

    +0

    질문 : 활동 X가 'this'로 전화를 걸면 질문이 표시됩니다. 그러면 활동 Y가 내부 저장소에서이 데이터를로드 할 수 있습니까? – CodePrimate

    관련 문제