Articles of android cursorloader

RxJava2 в CursorLoader's onLoadFinished callback

Для получения данных из базы данных я использую CursorLoader в приложении. Когда onLoadFinished() callback onLoadFinished() вызывает логику приложения, он преобразует объект Cursor в List объектов в рамках требований бизнес-модели. Это преобразование (тяжелая операция) занимает некоторое время, если имеется много данных. Это замедляет поток пользовательского интерфейса. Я попытался начать преобразование в не-UI- RxJava2 используя RxJava2 проходящий […]

Android eclipse startManagingCursor Устарел, но хочет поддерживать более старые версии API?

Я пытаюсь что-то понять, и я уверен, что это очень важно для некоторых людей. Я везде читаю, что метод startManagingCursor устарел, и вы должны использовать класс CursorLoader. Но означает ли это, что вы должны использовать класс CursorLoader даже для приложений, поддерживающих уровни API <11? Или он говорит, что если вы намерены поддерживать только Honeycomb и […]

Что установить CursorAdapter (контекст контекста, курсор c, int flags), чтобы он работал с CursorLoader?

В документах google указывается, что нельзя использовать первый конструктор CursorAdapters , CursorAdapter(Context context, Cursor c) Есть только два варианта, CursorAdapter(Context context, Cursor c, boolean autoRequery) В котором говорится Конструктор, который позволяет контролировать автоматическое резервирование. Рекомендуется не использовать это, а вместо этого использовать CursorAdapter (Context, Cursor, int). При использовании этого конструктора всегда будет установлен FLAG_REGISTER_CONTENT_OBSERVER. ` […]

Использование CursorLoader для запроса SQLite DB и заполнения AutoCompleteTextView

У меня есть база данных SQLite, которую я бы хотел запросить. Я хочу настроить Android 2.2 на ICS. Я столкнулся с этой статьей о том, как это сделать, но использует устаревший код (не запрашивает асинхронно, а в потоке пользовательского интерфейса). С тех пор я прочитал, что я могу использовать CursorLoader вместе с LoaderManager чтобы сделать […]

Разница между CursorLoader и AsyncTaskLoader

Почему я должен использовать AsyncTaskLoader , и когда я должен использовать CursorLoader и наоборот? На официальной странице показан пример списка приложений, который использует AsyncTaskLoader вместо CursorLoader. В чем преимущества и недостатки этих двух? Я где-то читал о CursorLoader, не заботясь об изменении контента (в sqlite). Спасибо!

Почему я не должен использовать шину сообщений вместо Loaders and Services?

В типичном Android-проекте, где нам нужно как-то извлекать данные из (REST, SQL, cache и т. Д.) В пользовательский интерфейс, мы обычно используем Loader, Service или (возможно, yuk) AsyncTask, но я нахожу все эти подходы Неудовлетворительно по нескольким причинам: Они уродливые, особенно Loaders, у которых ужасная структура API Слишком легко обернуться в потоки и наступить на […]

Какова цель startManagingCursor?

Хорошо, в документации указано, что он позволяет Управлению управлять жизненным циклом курсора. Но на самом деле я не вижу в этом смысла, поскольку, когда действие уничтожается, любые ссылки на вновь созданный курсор также должны быть удалены, а затем сам курсор останется погибнуть в следующем цикле сбора мусора. Так зачем беспокоиться?

SimpleCursorTreeAdapter и CursorLoader для ExpandableListView

Я пытаюсь асинхронно запрашивать поставщика с помощью CursorLoader с SimpleCursorTreeAdapter Вот мой класс Fragment который реализует CursorLoader public class GroupsListFragment extends ExpandableListFragment implements LoaderManager.LoaderCallbacks<Cursor> { private final String DEBUG_TAG = getClass().getSimpleName().toString(); private static final String[] CONTACTS_PROJECTION = new String[] { ContactsContract.Contacts._ID, ContactsContract.Contacts.DISPLAY_NAME }; private static final String[] GROUPS_SUMMARY_PROJECTION = new String[] { ContactsContract.Groups.TITLE, ContactsContract.Groups._ID, ContactsContract.Groups.SUMMARY_COUNT, […]

Как CursorLoader автоматически обновляет представление, даже если приложение неактивно?

Я работал над небольшим приложением списка дел. Я использовал CursorLoader для обновления ToDolistview у поставщика контента. У меня есть написанная функция onNewItemAdded() , которая вызывается, когда пользователь вводит новый элемент в текстовое представление и нажимает кнопку ввода. См. Ниже: public void onNewItemAdded(String newItem) { ContentResolver cr = getContentResolver(); ContentValues values = new ContentValues(); values.put(ToDoContentProvider.KEY_TASK, newItem); […]

Как CursorLoader с LoaderManager знает, как отправить курсор на CursorAdapter?

Я прошел через часть своего кода, и я понял, что на самом деле не знаю, как использовать CursorLoader и LoaderManager с CursorAdapter . Это часть, с которой я запутался. agendaAdapter = new MyAgendaAdapter(this, null); makeProviderBundle(new String[] {"_id", "event_name", "start_date", "start_time", "end_date", "end_time", "location"}, "date(?) >= start_date and date(?) <= end_date", new String[]{getChosenDate(), getChosenDate()}, null); getLoaderManager().initLoader(0, […]