나는이 질문이 막 닫혀 있다고 생각하지만, 당신이 요구하는 것은 콘텐츠 확인자를 사용할 때 CONTENT_URI를 사용해야하지만 왜 데이터베이스를 사용하면 안되는 것입니까?
Content Provider
내용 리졸버 그냥 데이터베이스보다
정보 제공자 저장소를 더 많은 기능을 제공하고 데이터를 검색하고 모든 응용 프로그램 가 액세스 할 수 있도록 만들 때문이다
. 그들은 응용 프로그램에서 데이터를 공유 할 수있는 유일한 방법입니다. 모든 안드로이드 패키지 에 액세스 할 수있는 공통 저장소 영역은 없습니다.
안드로이드는 공통 데이터 유형 (오디오, 비디오, 이미지, 개인 연락처 정보 등)에 대한 다수의 컨텐츠 제공 업체와 함께 제공됩니다. 은 android.provider 패키지에 나열된 일부를 볼 수 있습니다. 에 이러한 공급자에 포함 된 데이터를 쿼리 할 수 있습니다 (일부 경우 ). 데이터를 읽을 수있는 적절한 권한을 얻어야합니다.
쿼리가 시작되면 Android 시스템에서 쿼리 대상인 콘텐츠 제공자를 확인하고 최대 이고 실행 중인지 확인합니다. 데이터베이스와
데이터베이스
, 그것은 콘텐츠 제공 업체를 통해 응용 프로그램 (당신이 하나를 작성하지 않은 경우)에서 액세스 할 수 없습니다. db.execSQL을 사용하면 데이터베이스를 쿼리 할뿐 컨텐츠 공급자는 쿼리하지 않으므로 CONTENT_URI를 제공 할 필요가 없습니다. db
개체는 데이터 저장소입니다.
그래서 무엇이 문제입니까? –
투표를 닫으면 질문을 찾을 수 없습니다 ... – WarrenFaith
질문은 왜 우리가 .insert() 대 execSQL을 사용하는지 생각합니다. –