首页 > 解决方案 > 如何在不使用 SQLiteOpenHelper 内容提供程序插入数据的情况下获取 URI?(安卓)

问题描述

我正在制作一个带有 MainActivity、Content Provider 和 4 个片段的 Android 应用程序。我需要检查 SqlLite 数据库中是否存在用户名和密码,然后将具有该用户名和密码的行的 URI 发送到函数。但是,我不明白如何在不插入数据库的情况下访问 URI(返回插入行的 URI)。如何访问现有行的 URI?

标签: javaandroidsqldatabasesqlite

解决方案


许多提供程序允许您通过将 ID 值附加到 URI 的末尾来访问表中的单行。例如,要从用户字典中检索 _ID 为 4 的行,可以使用以下内容 URI:

val singleUri: Uri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI, 4)

它适用于所有标准化的内容提供商(至少是 Google 提供的那些)。它适用于所有遵循由基于行的数据存储支持的内容提供者的设计指南的内容提供者。

查看详情 Android 中的内容提供程序


推荐阅读