0

我正在尝试从一个地址获取所有短信。

因此,在使用光标扫描数据库时,我尝试使用 select。但是,没有返回任何值。我怀疑这是因为数据库中“地址”列中的数字包含空格和/或连字符 (-)。

我的问题是我可以进行查询以忽略字符串中的空格和连字符吗?

PS:我的地址已被精简为不包含空格和连字符,根据我的要求,这是不可更改的。

4

1 回答 1

0

我遇到了同样的情况并尝试了以下方法。(还不确定,这是否是一个合适的解决方案!:))

所以,

  • 查询对话表中的所有对话
  • 循环并遍历所有结果。对于每个:

    • 取地址字段并删除不需要的字符,使其像您拥有的数字格式
    • 与您想要对话的号码进行比较:如果找到 => 休息
  • 在循环结束时,您将获得正在搜索短信的号码的线程 ID。

现在,

  • 现在收集该线程下所有消息的消息 ID,按类型分隔:“已发送”和“收件箱”

然后,您可以使用这些 id 数组从 ContentProvider 的“已发送”和“收件箱”表中收集消息。

我知道,这个过程有点长,但给了我满意的结果。:) 希望能帮助到你。

于 2012-09-20T13:37:55.727 回答