Странное поведение при использовании ContentResolver
Я создал контент-провайдер для реализации базы данных для истории моего приложения (хотя я делаю это не для того, чтобы делиться данными своего приложения, но мне нужно реализовать этот ряд проблем с многопоточным доступом к базе данных).
Теперь, после реализации ContentResolver, когда я пытаюсь использовать ContentResolver.quesry(), метод получения контента, я получаю странное поведение. Оператор, в котором запрос i не выдает никаких исключений, но оператор после этого оператора в функции контейнера никогда не выполняется!! Странный
функция контейнера:
private void addUpdateToDownloadHistory(DownloadUpdate update,int max) {
Uri url;
ContentResolver cr = context.getContentResolver();
String w = DownloadDatabaseHelper.KEY_STATIC_URL + " = " + update.initialDetail.staticLink;
Log.v(TAG,"i was called 1");
cr.query(DownloadContentProvider.CONTENT_URI, null, w, null, null);
Log.v(TAG,"i was called 2");
}
функция запроса:
@Override
public Cursor query(Uri uri,
String[] projection,
String selection,
String[] selectionArgs,
String sort) {
SQLiteQueryBuilder qb = new SQLiteQueryBuilder();
qb.setTables(DownloadDatabaseHelper.TABLE_DOWNLOAD_SECTION_HISTORY);
// If this is a row query, limit the result set to the passed in row.
switch (sUriMatcher.match(uri)) {
case DOWNLOAD_LINK: qb.appendWhere(DownloadDatabaseHelper.KEY_STATIC_URL+ " ? = " + uri.getPathSegments().get(1));
break;
default : break;
}
// If no sort order is specified sort by date / time
String orderBy;
if (TextUtils.isEmpty(sort)) {
orderBy = null;
} else {
orderBy = sort;
}
// Apply the query to the underlying database.
SQLiteDatabase db=helper.getReadableDatabase();
Cursor c = qb.query(db,
projection,
selection, selectionArgs,
null, null,
orderBy);
// Register the contexts ContentResolver to be notified if
// the cursor result set changes.
c.setNotificationUri(getContext().getContentResolver(), uri);
// Return a cursor to the query result.
return c;
}
" Меня звали 2" никогда не отображался в logcat, и я не получаю никаких исключений