Android Могу ли я использовать JOIN при запросе mediastore - PullRequest
2 голосов
/ 29 июня 2011

Есть ли способ использовать соединение в запросе к данным медиастазы?

Или также есть какой-нибудь способ доступа к данным медиасреды через базу данных, а не с поставщиком контента?

Спасибо.

Ответы [ 2 ]

3 голосов
/ 01 августа 2011

Но я думаю, что вы можете использовать объединения с контент-провайдерами. Если вы делаете два запроса, вы можете присоединиться к ним с помощью CursorJoiner. Я использую его, и он хорошо работает.

Фрагмент из документов Android:

CursorJoiner joiner = new CursorJoiner(cursorA, keyColumnsofA, cursorB, keyColumnsofB);
 for (CursorJointer.Result joinerResult : joiner) {
     switch (joinerResult) {
         case LEFT:
             // handle case where a row in cursorA is unique
             break;
         case RIGHT:
             // handle case where a row in cursorB is unique
             break;
         case BOTH:
             // handle case where a row with the same key is in both cursors
             break;
     }
 }

это не совсем то же самое, что SQL-соединение, но это полезно. В каждом «случае» вы можете манипулировать обоими курсорами, которые указывают на обработанную строку.

3 голосов
/ 30 июня 2011

есть ли способ использовать соединение в запросе к данным хранилища данных?

Невозможно объединение с запросами контент-провайдера, извините.

Или также есть какой-нибудь способ получить доступ к данным медиасектора через базу данных, а не с поставщиком контента?

Только если вы пишете свою собственную прошивку.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...