0

단순한 데이터 유형의 경우 SharedPreferences가 더 쉽고 빠를 때 많은 양의 데이터를 처리 할 수 ​​있도록 SQLite가 기술적으로 설계되었습니다.Sharedpreferences 대 Vs SQLite 검색하지 않고 큰 데이터의 경우

1 년 동안 매일 true true false boolean을 저장하고 싶습니다. 이것은 3 차원 json을 생성하고 공유 환경 설정 (또는 키로 연도가있는 차원 배열)에 문자열로 저장하거나 별도의 열로 연도 월 및 데이터가있는 테이블을 생성해야한다는 것을 의미합니다 (또는 간단한 날짜 열일 수 있음). . 나는 또한 "YYYY-MM-DD"를 365 개의 부울에 대한 sharedPreferences의 키로 사용할 수 있다고 말했습니다.

여기에 질문이 있습니다. 100 % 확실한 경우이 간단한 데이터를 저장하기 위해 더 복잡한 SQLite 데이터베이스를 사용해야합니까? 특별한 매개 변수 기능으로 검색/그룹화/선택이 필요하지 않습니다. 왜냐하면 단순한 부울 (365 + 부울의 경우에도)을 저장해야한다면 더 빠른 해결책이므로 SharedPreferences를 사용해야한다고 생각하기 때문입니다. 그러나 SharedPreferences가이 많은 변수를 저장해야하는지 여부가 확실하지 않으므로 나에게 다소 잘못되었습니다.

추가 :

이 논리 값 만 오프라인 부하 로컬로 저장 또는 사용자 관점에서 오히려 빠르게 액세스 할 수 있습니다. 이 1 | 0 값은 각 앱 사용자마다 서버에 저장되므로 데이터로 복잡한 작업을 수행하더라도 휴대 전화로해야하는지 확실하지 않습니다.

답변

1

공유 된 환경 설정에서 데이터를 저장하는 것이 좋은 생각처럼 보일 수 있습니다. 실제로는 정상적으로 작동하지만 쉬운 방법입니다. 당신은 미래에 무엇이 필요할 지 모를 것입니다. 귀하의 요구 사항은 현재 이행되지만 어떤 방식으로도 확장되지 않습니다. 일반적으로 시간을 투자하고 적절하게 설정하고 장기적으로 이익을 얻을 가치가 있습니다.

물론 빠른 프로토 타이핑이나 빠른 데모를한다면 다른 이야기입니다.

"복잡한 데이터베이스"또는 시간이 많이 들지 않아도되는 것을 설정하십시오. 보십시오 Realm 정말 빨라요.

+0

이 영역의 물건 재미있는 소리, 제안 주셔서 감사합니다! 또한 프로토 타입을 제작하려고해도 시간이 낭비 될 것이라고 생각하지 않습니다. 내 경험에 비추어 볼 때 이러한 헬퍼는 여러 프로젝트에서 유용하며 올바른 방법으로 프로그래밍하면 매우 유용하고 유연하며 장기간에 걸쳐 더 많은 시간을 절약 할 수 있습니다. –

2

공유 환경 설정은 365 값을 취할 수 있습니다. 공유 환경 설정의 최대 크기는 this에 따라 약 1.4MB입니다. 공유 설정은 볼륨 또는 사용자 설정과 같이 매우 적은 양의 데이터를 저장하는 데 일반적으로 사용됩니다. 나는 당신이 sqlite database.It와 함께 가서 그것을 설정하는 것이 좋습니다 것이지만, 시간을 할애 가치가 시간을 할애했다

+1

그게 뭔가 새로운 것입니다. 나는 그것이 약간의 크기 제한을 가지고 있다는 것을 모르고 있었고, 당신은 많은 잠재적 인 버그들로부터 나를 구해 주었다. 고마워 –