有没有方法在mediastore数据的查询中使用join?
或者还有通过数据库而不是内容提供商访问mediastore数据的方法吗?
谢谢。
答案 0 :(得分:3)
是否有任何方法可以在mediastore数据的查询中使用join?
内容提供商查询没有可能的JOIN,抱歉。
或者还有通过数据库而不是内容提供商访问mediastore数据的方法吗?
仅当您编写自己的固件时。
答案 1 :(得分:3)
但我认为您可以使用与内容提供商的连接。如果您进行两个查询,则可以使用CursorJoiner将它们连接起来。我正在使用它并且效果很好。
来自Android文档的Snippet:
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连接不完全相同,但它很有用。在每个“case”中,您可以使用指向已处理行的两个游标进行操作。