나는 수동으로 작성한 노트에 첨부 파일을 추가 할 수 있어야하는 애플리케이션 (간단한 CRM 종류)을 작성 중입니다. 메모는 간단한 텍스트의 형태를 가지며, 첨부 파일은 PDF 또는 사용자가 만든 사진이거나 미래의 다른 합리적인 문서 일 수 있습니다.Android 애플리케이션의 첨부 파일을 저장할 위치는 어디입니까?
응용 프로그램은 ContentProvider
을 통해 SQLite 데이터베이스를 사용합니다. 데이터베이스의 내용은 웹 서비스를 통해 중앙 서버와 동기화되어야합니다.
첨부 파일 전용 데이터베이스 테이블에 대해 생각하고 있습니다. 이렇게하면 첨부 파일이 첨부 테이블의 키를 통해 메모에 추가됩니다. 중앙 서버와 동기화 할 때 테이블은 응용 프로그램의 다른 데이터베이스 부분과 별도로 동기화 될 수 있습니다.
이제 질문 : 첨부 파일을 응용 프로그램에 저장하는 방법은 무엇입니까? 예, 사진은 갤러리와 별도로 저장해야합니다. 또한 PDF 문서는 응용 프로그램과 관련된 디스크 공간에 저장해야합니다 (보안상의 이유로). 첨부 파일 데이터베이스 테이블은 문서에 대한 참조 만 저장해야합니까? 아니면 SQLite blob을 고려해야합니까? 또는 첨부 파일을 저장할 위치를 사용자에게 알려주는 것이 합리적입니까? (내부 저장 장치 대 외부 저장 장치 [microSD 카드]를 의미합니다.)이 경우 어떤 장점과 단점이 있습니까?
죄송합니다. RAM의 의미에서 * 메모리 *가 아닌 * 내부 스토리지 * 대 * 외부 저장소 *를 의미했습니다. 내가 염려하는 것에 곧바로 가려면 : 파일 내용을 저장하기 위해 BLOB를 사용 하시겠습니까? 아니면 클래식 파일을 선호 하시겠습니까? – pepr
이 컨텍스트에서 BLOB의 의미를 모르겠습니다. 나는 암호화 된 파일을 저장할 것입니다. – rekire
나는 파일 내용이 SQLite 데이터베이스의 데이터 유형에 바이트로 저장된다는 의미에서 SQLite BLOB 유형을 의미합니다. 즉, 파일 시스템에 직접적으로 저장되지는 않습니다. 나는 security *에 대해서 언급했지만 실제로는 암호화가 필요 없다. 응용 프로그램이 그렇게 안전 할 필요는 없습니다. 난 단지 응용 프로그램 공간에 데이터를 보관하고 싶습니다. – pepr