大佬教程收集整理的这篇文章主要介绍了android – 一旦你拥有行uri,从内容提供者那里获取数据的正确方法是什么?,大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
插入或内容观察器OnChange(在android api 16上)都给了我回插入/更改的URI,我希望有效地从该行获取数据(没有很多查询或指令).但是,我发现的唯一方法是从URI解析ID,使用该id的SELEction子句构建一个查询,然后获取游标,如下所示:
long row = ContentUris.parsEID(uri); String mSELEctionClause = ContentProvider.Table._ID + " = ?"; String[] mSELEctionArgs = {Long.toString(row)}; Uri other_uri = Uri.parse(ContentProvider.AUTHORITY_StriNG + ContentProvider.UriPathIndex.TablE); cursor cursor = cr.query(other_uri,null,mSELEctionClause,mSELEctionArgs,null);
还有其他方法吗?我想知道是否可以直接使用行uri
许多提供程序允许您通过将ID值附加到URI的末尾来访问表中的单个行.例如,要从用户词典中检索_ID为4的行,您可以使用此内容URI:
Uri singleUri = ContentUris.withAppendedId(UserDictionary.Words.CONTENT_URI,4);
编辑(来自评论):它适用于所有标准化内容提供商(至少由Google提供).它适用于所有内容提供商,这些提供商遵循基于行的数据存储备份的内容提供商的设计准则.
以上是大佬教程为你收集整理的android – 一旦你拥有行uri,从内容提供者那里获取数据的正确方法是什么?全部内容,希望文章能够帮你解决android – 一旦你拥有行uri,从内容提供者那里获取数据的正确方法是什么?所遇到的程序开发问题。
如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。
本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。