1
콘텐츠 리졸버를 통해 데이터베이스에 데이터를 삽입하려고합니다. 데이터가 삽입되지만 각 insert()에는 두 개의 항목이 있습니다. 내 코드를 디버깅하지만 중복 항목의 원인을 얻을 수 없습니다. 내가 잘못 곳에 나를 지적하는ContentResolver가 중복 데이터를 삽입하고 있습니다.
이ContentResolver myResolver = mActivity.getContentResolver();
Uri browserProviderUri = Uri.parse("content://com.eaft.parentalcontrol." +
"AllowedUrlProvider/" +
"DatabaseHandler/NAMES");
ContentValues cv = new ContentValues();
System.out.println("History_AL.get(0).getUrl() is : " +
LightningView.History_AL.get(0).getUrl());
cv.put("NAME", LightningView.History_AL.get(0).getName());
cv.put("InTime", LightningView.History_AL.get(0).getInTime());
cv.put("OutTime", LightningView.History_AL.get(0).getOutTime());
myResolver.insert(browserProviderUri, cv);
System.out.println("myResolver.insert(browserProviderUri, cv) " +
myResolver.insert(browserProviderUri, cv));
LightningView.History_AL.remove(0);
사람이 안내 수 : 컨텐츠 해결에
@Override
public Uri insert(Uri uri, ContentValues values) {
int uriType = uriMatch.match(uri);
SQLiteDatabase mDb = dBHelper.getWritableDatabase();
long id = 0;
switch(uriType){
case Allowed_url:
id = mDb.insert(DatabaseHandler.Names, null, values);
break;
default:
throw new IllegalArgumentException("unknown uri" + uri);
}
getContext().getContentResolver().notifyChange(uri, null);
return Uri.parse(Names_TABLE_PATH + "/" + id);
}
코드 : 여기 내 코드의 조각은 콘텐츠 공급자의
삽입()입니까?
그런 어리석은 실수. :). 고마워. – megha
환영합니다. 도움이된다면 제 대답을 받아주세요. 감사. –