2011-09-14 3 views
0

sharedpreferences 파일을 호출 할 때 파일의 문자열 이름의 이름을 제공해야합니다. 여러 공유 환경 설정 파일을 가질 수 있다는 의미입니까?안드로이드 얼마나 많은 sharedpreferences 파일?

둘째, SQL 데이터베이스를 여러 열로 사용하는 대신 여러 값을 저장하려는 경우 이론적으로 각 공유 요소가 키, 값 쌍이고 첫 번째 파일의 값이 여러 개인 sharedpreferences 파일을 가질 수 있습니까? 두 번째 파일의 키 및 두 번째 파일에서 반환 된 값은 세 번째 파일의 키입니다. 더 많은 특정 정보를 반환합니다. (비효율적으로)

sharedpreferences에 대한 I/O 제한이 있습니까? SQL 데이터베이스와 같은?

답변

4

귀하의 공유 환경 설정은 된 SharedPreferences 클래스는 단지 "XML"데이터 파서/작가

/data/data/package.name/shared_prefs/prefsname.xml 

내부에 저장됩니다.

특정 제한이 있다고 생각하지 않지만 SQLlite를 사용하는 것이 훨씬 빠르며 (심지어 1000 배 이상) 더 쉽게 선택/정렬 할 수있는 동시에 트랜잭션을 쉽게 처리 할 수 ​​있다고 생각합니다. sharedpres는 사용자 옵션을 저장하는 데 유용합니다. 그 밖의 모든 것에 대해서는 다른 곳에서 볼 것입니다.

BTW 최대 DB 측면을 초과하면 항상 "ATTACH"절을 사용하여 동일한 길들에서 더 많은 DB를 사용할 수 있습니다 (SQLite 제한에 도달하는 데 너무 많은 데이터가있는 경우 XML/SharedPreferences가 전혀 필요하지 않습니다.)

+0

SQLite 최대 DB 한도 란 무엇입니까? – CQM

+0

android.database.sqlite.SQLiteDatabase에서 getMaximumSize()를 확인하십시오. SD 카드가 FAT32이므로 고려해 보면 아마도 4GB 제한에 직면하게 될 것입니다. – JohnUopini

관련 문제