当前位置: 首页 > 知识库问答 >
问题:

为什么查询Androids纵隔会返回空光标?

云开诚
2023-03-14

我正在使用Android的纵隔检索我用我的应用程序录制的视频文件的持续时间/日期。它对旧文件很好,我记录的最新文件确实返回空(不是空)光标。我不明白为什么会发生这种情况,是纵隔没有立即更新还是我下面使用的代码有问题?谢谢你的帮助!

Uri uri = MediaStore.Video.Media.EXTERNAL_CONTENT_URI;
String selection = MediaStore.MediaColumns.DISPLAY_NAME + " LIKE '"+file.getName()+"'";
Cursor cursor = getContentResolver().query(uri, new String[]{MediaStore.Video.VideoColumns.DATE_TAKEN,MediaStore.Video.VideoColumns.DURATION}, selection, null, null);

共有1个答案

夹谷山
2023-03-14

我也面临着同样的问题。打印stacktrace重新引发了这个问题。请在清单中添加此权限:

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE"/>
 类似资料:
  • 我有以下表格结构: 1-课程(course_id、course_nam、语言、course_price、create_date、average_rating、course_description、certifica_price、course_creator_id) 2-学生(学生证、钱包) 3-折扣(折扣id、折扣课程id、允许的许可课程id、开始日期、结束日期、百分比) 4-报名(student

  • 我正在查询SQL数据库,但由于某些原因,结果项会随机返回。这是我的密码: searchFriendEmailArrayNew是一个电子邮件地址数组,因此当我查询数据库表时,它会使用电子邮件来查找该用户。数组始终保持一致且顺序相同: user1@email.com 查询总是按照这个顺序进行的。 然后,我查询用户的所选字段,在本例中,我查询的是“isriding”字段。此字段是返回true或false

  • 问题内容: 今天,我写了一个查询,应该返回一个错误。而是返回带有列名和数据类型的值15 。你知道为什么吗? 结果: 问题答案: 您要指定一个常量: 货币常量表示为数字字符串,带有可选的小数点 和可选的货币符号作为前缀 因此moneyselect $15select ¥15`。 正如Jeroen在评论中指出的那样: 因为日元符号(楼)是货币指示器,并且在某些日语本机字符集中,其代码点与ASCII中的

  • 问题内容: 我在继承的应用程序中遇到了如下查询: 正如我解析的那样,它应该不返回任何内容(应评估为false,正确)。但是(至少在我的Oracle机器上),它返回了中所有内容的完整列表。当我在MSAccess / Jet和MSSQL中尝试相同的操作时,我得到了预期的行为。为什么对Oracle有所不同(为什么原始开发人员要这样做)? 注意:我对使用“ where 1 = 1”的+ s和-s有一些迷信

  • 我和我的同事有一个bug,这是由于我们假设调用的空流将返回。 当然,这是我们假设而不阅读文档的错误。但我不理解的是,为什么空流的默认行为返回。这样做的理由是什么?与(相反返回false)一样,该操作以命令方式使用,脱离单子,可能用于语句。考虑到这些事实,是否有任何理由让空流上的默认为对于大多数用途是可取的?