2014-10-28 3 views
0

Android SyncAdapter는 기본 스레드가 설정 한 정적 변수 값을 고려하지 않습니다. 정적 변수는 응용 프로그램을 통해 지속되므로 스레드간에 공유해야합니다. 그러나 SyncAdapter는 기본 스레드가 설정하고 기본값을 사용하는 값을 고려하지 않습니다. 이 문제에 대한 해결책을 찾는데 도와주세요. SyncAdapter에서 사용할 정적 값이 필요합니다.SyncAdapter가 기본 스레드에 의해 설정된 정적 변수를 고려하지 않습니다.

답변

1

정적 값은 주 프로세스가있는 동안에 만 지속됩니다. Android는 언제든지 프로세스를 중지 할 수 있으며 SyncAdapter가 시작될 때 프로세스가 작동 할 것이라는 보장이 없습니다. 당신이 된 SharedPreferences에 값 저장 ContentResolver.requestSync()

  • 와 동기화를 요청할 때 번들로 값을 전달

    • 및 SyncAdapter
    • 에서 읽을 : 그래서, 당신은 SyncAdapter에 대한 귀하의 값으로 저장하기 위해 다른 옵션을 사용한다
    • 값을 Sqlite 데이터베이스에 저장하고 SyncAdapter에서 쿼리합니다.
  • 관련 문제