2011-12-30 2 views
0

Я внедрил небольшое приложение, которое отобразит все SMS-сообщения из INBOX и отобразит как Контактный номер, так и имя.Есть ли все-таки условия JOIN, использующие URI с помощью Android-программирования?

Мне нужно использовать два URI, один - чтобы получить SMS, а другой - получить контактную информацию, связанную с этим SMS.

Этот подход имеет много проблем с производительностью при перечислении всех SMS с контактным именем. В моем телефоне с тактовой частотой 600 МГц используется довольно долгое время.

Но мое родное приложение SMS запускается в течение нескольких секунд. Я действительно не знаю, как этого добиться.

Один из способов, которым я думаю использовать условия JOIN на двух URI, потому что я не знаю, как использовать rawQuery для контента: // SMS/Inbox и данные контактов.

Любая помощь будет оценена по достоинству. Спасибо в Advance ..

+0

API ContentProvider/ContentResolver предоставляет только JOINs, явно объявленные в самом провайдере, и эти JOINs обычно находятся только в базе данных SQLite этого провайдера - если вам нужна информация от обоих провайдеров, которые вам нужно будет сделать в sw, например используя ужасно багги CursorJoiner (не знаю, если они потрудились исправить это). – Jens

ответ

0

Но мое родное приложение SMS запускается в течение нескольких секунд. Я действительно не знаю, как этого добиться.

Они могут напрямую обращаться к собственной базе данных и, следовательно, могут использовать JOINs напрямую. Вы не можете выразить JOIN через ContentProviders.