0

我有两个应用程序,我想从应用程序 A 创建一个查询以获取应用程序 B 的信息。这是一个非常简单的过程,如下所示,但我想与社区再次核对并获得一些建设性的批评。有没有更好的办法?

谢谢你。

此代码获取我的数据库中某人的姓名。

private Cursor getData() {


final Uri uri = Uri.parse("content://" + AUTHORITY + "/" + TABLE_PATH);
String[] projection = new String[] { "_id", "foo" };
String selection = null;
String[] selectionArgs = null;
String sortOrder = null;;


ContentResolver resolver = getContentResolver();
    return  resolver.query(uri, projection, selection, selectionArgs, sortOrder);

}
4

1 回答 1

1

好吧,如果系统知道内容提供者具有您指定的权限,并且该提供者识别 TABLE_PATH,并且提供者将“_id”和“foo”识别为有效的列名,它应该可以工作。

但是,您似乎在问几个不同的问题:

  1. 这是查询另一个应用程序的内容提供者的安全方法吗?哦是的; 这是迄今为止从另一个应用程序获取数据的最首选方式。
  2. “此代码获取我数据库中某人的姓名”。实际上,这是一个轻微的错误陈述。该代码对具有 AUTHORITY 权限的内容提供者以及提供者中名为 TABLE_PATH 的实体运行查询。不需要数据库,尽管内容提供者通常将他们的数据存储在 SQLite 数据库中。CP 所要做的就是建立权威并响应传入的内容 URI。
于 2013-10-03T20:34:55.070 回答