첫 번째 게시물은 여기에 있습니다. 문제가 발생하면 저와 함께하시기 바랍니다.Android : Sqlite가 큰 얼룩에서 깨졌습니다.
응용 프로그램의 이미지를 sqlite 데이터베이스에 저장하려고합니다. 이미지는 얼룩으로 저장되어야합니다 (이것은 나쁜 생각입니까?). 그렇게 할 수있는 코드는 다음과 같습니다
public long createPicture(String title, byte [] thumb, byte [] imageData) {
ContentValues data = new ContentValues();
data.put(T_KEY_TITLE, title);
data.put(T_KEY_CONTENT, imageData); // <-- blob in the db
data.put(T_KEY_THUMB, thumb);
// db is an SQLiteDatabase
return db.insert(TABLE_PICS, null, data); // <-- Crash occurs on this line
}
이 코드는 대부분 완벽하게 잘 작동하지만 큰 사진 (카메라에 내장 된 5 메가 픽셀)를 저장하려고 할 때 충돌이 발생합니다. 충돌을 일으킬뿐만 아니라 데이터베이스를 다시 작동시켜 다시 시작하려고 할 때마다 응용 프로그램이 중단됩니다.
제 질문은 :이 문제를 해결할 방법이 있습니까? 아니면 큰 그림을 파일로 저장하고 경로를 저장해야합니까? 또한 sqlite를 사용하는시기와 파일을 언제 사용할지에 대한 일반적인 지침을 얻고 싶습니다.
감사합니다. :)
크래시가 조금 애매합니다. 스택 추적을 얻었습니까? 오류 메시지가 표시됩니다. 그렇지 않다면, 당신은 일종의 무엇인가에 손을 넣고 그것을 게시 할 수 있습니까? –
나는 안드로이드 개발에 익숙하지 만 유용한 오류 메시지는 어디에서 얻을 수 있습니까? 그것이 충돌 할 때 그것은 단지 나에게 "예기치 않게 멈췄다"- 것을 준다. 나는 진짜 전화를 사용하고있다. 가능한 한 스택 트레이스를 얻는 것이 가능한가? – Gordy
@ Gordy : USB를 통해 휴대 전화를 연결하고 Android SDK에서 DDMS (내 환경 설정)와 같은 것을 사용하여 logcat을 모니터링 할 수 있습니다. 또는 Eclipse를 사용하는 경우 동일한 작업을 수행하는 DDMS Perspective가 있습니다. – Squonk