Странное поведение при использовании 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, и я не получаю никаких исключений

0 ответов

Другие вопросы по тегам