2011-10-03 2 views
0

서비스에서 약 7 개의 URL을 검색 중입니다. 이 URL의 일부를 어디에 쓸 수 있고 내 응용 프로그램을 다른 활동에서 읽을 수있게하고 싶습니다.String을 검색하여 파일이나 리소스에 쓰고 덮어 쓰고 다시 사용하는 방법은 무엇입니까?

이러한 까다로운 문제는 매주 URL의 변경입니다. 그래서 현재 URL을 덮어 써야합니다. 나는 URL의 스택을 서로 겹치지 않고 결코 오버 라이트하지 않기를 원하지 않는다. 한 달이 지나면 24 개의 사용되지 않는 URL이있다.

어떻게하고 가장 좋은 방법입니까? 여기

답변

1

Use SharedPreferences!

롤은 샘플입니다

public void SetUrls(String url[]) { 
    SharedPreferences settings = getSharedPreferences("myPrefs", 0); 
    SharedPreferences.Editor editor = settings.edit(); 
    editor.putString("url0", url[0]); 
    editor.putString("url1", url[1]); 
    editor.putString("url2", url[2]); 
    editor.putString("url3", url[3]); 
    editor.putString("url4", url[4]); 
    editor.putString("url5", url[5]); 
    editor.putString("url6", url[6]); 
    editor.commit(); 
} 

public String[] getUrls() { 
    SharedPreferences settings = getSharedPreferences(DEALSPOTR_PREFS, 0); 
    String url[] = new String[7]; 
    url[0] = settings.getString("url0", "default"); 
    url[1] = settings.getString("url1", "default"); 
    url[2] = settings.getString("url2", "default"); 
    url[3] = settings.getString("url3", "default"); 
    url[4] = settings.getString("url4", "default"); 
    url[5] = settings.getString("url5", "default"); 
    url[6] = settings.getString("url6", "default"); 
    return url; 
} 
+0

고마워요! 나는 SharedPreference에 익숙하지만 여기서는 그것을 사용하지 않을 것이라고 생각한다. 내가해야 할 일을 충분히 신뢰할 수 있다고 생각하니? 그리고 URL 키와 관련된 현재 정보를 덮어 씁니다. – user856377

+1

예 그 직업이라고 생각합니다! 마찬가지로 맵 –

1

정말 당신의 클라이언트 구현에 따라, 당신은 sqlite가에 저장하거나, 로컬 캐시 또는 공유 환경 설정에서 할 수 있습니다. Android를 사용하면 앱에 작은 캐시가있을 수 있습니다.

URL을 저장할 때 타임 스탬프를 찍어 유효 기간이 만료되었는지 확인할 수 있습니다.

android Data Storage 시설에있는 문서를 참조하십시오.

+0

Sherif 위에서 언급 한 SharedPreference는이 예제에서 더 신뢰할 수 있다고 생각합니다. – user856377

관련 문제