0

我的应用程序使用标准搜索机制(使用可搜索界面)并且在所有版本>2.1 中都能正常工作

在 <3 我使用搜索对话框,在 >=3 我使用 SearchWidget 并且一切正常。问题出在 2.1 中,我CrossProcessCursorException从我那里得到ContentProvider

java.lang.UnsupportedOperationException: Only CrossProcessCursor cursors are supported across process for now

似乎搜索对话框在 2.1 中的另一个进程中运行?有没有办法解决这个问题?或者我被迫在我的自定义扩展中实现 CrossProcessCursor CusorWrapper

4

1 回答 1

0

最后,我没有找到任何关于为什么在 Android 2.1 中需要使用 CrossProcessCursor 的信息。

但是查看 2.1 的 SearchDictionary 示例,它使用 MatrixCursor,而对于较新的 android 版本,它使用来自 DB 的直接光标。然后我假设您只是需要它,因为它以这种方式工作。

我尝试了两种都有效的替代方案:

  1. 使用 MatrixCursor 映射结果
  2. 实现一个 CrossProcessCursorWrapperCompat 从较新版本的 CrossProcessCursorWrapper 获取代码并使其适应 2.1
于 2012-10-16T17:54:32.680 回答