안드로이드 개발 질문/답변
(글 수 45,052)
제가지금 만드는 앱에 데이터가 조금 복잡한데요
ID NAME ~ 죽죽~~ 해서 각 객체 하나당 정보다 15개정도 암호화를 위해서 30개씩
객체 하나당 30개씩의 정보를 저장하구요
그 객체가 1000개까지 되는걸 생각하고 있어요.
이정도 데이터 저장을 관리할때 SQLite를 쓰고 싶지만 갤럭시S에서는 더러운 속도 때문에
쓰지를 못하구요 Preferences 로 할려는데 어디서 읽었는데 Preferences는 데이터가 날라가는 경우가 있다고 하더라구요
...........
Preferences로 데이터를 관리할 경우 위험성이 내포되어 있을까요?

2011.04.06 15:55:38
흠 저 헛소리 하는 취미가 없는 사람인데.....
저는 게임 앱 개발을 하였구요 게임정보나 게임환경 설정을 SQLite로 했다가 갤럭시S에서 SQLite 읽고 쓰기 때문에
게임이 계속 멈춤(느려짐) 현상 떄문에 Preferences로 바꾸고 엄청 빨라졌습니다^^
검색한번 해보시면 감사하겠습니다^^ 갤럭시S 에선 SQLite 쓰면 엄청 느립니다. Preferences 써야 합니다.
제가 가진 개발용 폰이 6가지 인데 갤럭시S에서만 SQLite쓰면 엄청 느립니다.
그리고 잘못본게 아니라면 도돌님도 같은 문제 때문에 갤럭시S를 쓴 글을 적은걸로 본것같은데 맞는것인지 모르겠군요
(직접 해보시고 말씀하시는거라면 해당하는 갤럭시S만 잘되는것인지 제가 가진 갤럭시S가 문제 인지 궁금합니다^^)
2011.04.06 16:13:07
shared preference 가 sqlite 보다는 단순한 저장방식으로 일반적으로 빠르며,
해외향은 어떤지 모르지만, 국내향 갤럭시S는 DB 관련 속도문제가 있는 것으로 널리~ 알려져 있습니다.
단순히 변수 저장 정도가 아닌
게임 데이터 같은 경우는 일반적으로 sqlite 사용하라고 권장하는 것으로 알고 있습니다.
갤럭시S는 예외적이라서 효율적인 대응 방법을 잘 모르겠네요.
마음 같아서는 app 시작시 model 명이 갤럭시 S 면 지원하지 않는다고 공지하고 싶습니다.-_-;;




어차피 둘 다 내부 플래시메모리에 기록하는 것이기 때문에 갤스에서는 똑같이 문제가 될겁니다.
Preferences 와 SQLite 만 놓고 비교하면 SQLite 가 더 빠릅니다.
preferences 는 내부적으로 xml 형태로 저장하지만 SQLite 는 좀 더 최적화된 방식으로 저장할 겁니다.