我正在使用Android MediaProvider应用程序来获取有关媒体库中注册的资源的信息。我发现这样做的唯一方法是使用MediaProvider应用程序提供的ContentProvider类。 不幸的是,在我看来这是一个很大的限制,不是吗?这种方式是否可以使用子查询和使用SQLite的其他功能创建复杂查询? 我认为可能使用SQLiteDatabase类,但似乎不可能直接用它的路径打开数据库,而且无论如何,查询方法似乎不允许子查询。对此有何解决方案? 谢谢!
答案 0 :(得分:0)
我到目前为止找到的答案是,在不使用ContentProvider的情况下访问另一个应用程序的数据(包含数据库)是不可能的(通过合理的努力),并且可以使用SQLiteDatabase类的rawQuery方法执行复杂查询。这意味着它必须在ContentProvider本身中执行。