获取图像缩略图文件路径

2023-12-11

我正在尝试获取缩略图paths,而不是位图对象。
当我查询这些时,某些缩略图路径由于某种原因为空。 (我的设备中有1028个缩略图,光标长度确实是1028,但仍然返回空值)我知道有1028个缩略图,因为我检查过。 这是我的代码:

     String[] projection = {MediaStore.Images.Thumbnails._ID};
  // Create the cursor pointing to the SDCard

  cursor = this.getContentResolver().query( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI,
          projection, // Which columns to return
          null,       // Return all rows
          null,
          MediaStore.Images.Thumbnails.IMAGE_ID);
  // Get the column index of the Thumbnails Image ID
  Log.d(Global.TAG, "BEFORE");
  columnIndex = cursor.getColumnIndex(MediaStore.Images.Thumbnails._ID);
  Log.d(Global.TAG, "AFTER1");
  for(int i =0;i<cursor.getCount();i++){
      cursor.moveToPosition(i);

      Log.d("MyTag","BBABA" + i +" : " + getThumbnailPathForLocalFile(cursor.getLong(columnIndex)));
  }
  cursor.close();

我的 getThumbnailPathForLocalFile:

    String getThumbnailPathForLocalFile(long fileId)
 {
    // Log.d(Global., msg)
     Cursor thumbCursor = null;
     try
     {
         thumbCursor = this.getContentResolver().
                 query(MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI
                 , null
                 , MediaStore.Images.Thumbnails.IMAGE_ID + " = " + fileId+ " AND "
                   + MediaStore.Images.Thumbnails.KIND + " = "
                   + MediaStore.Images.Thumbnails.MINI_KIND , null, null);

         if(thumbCursor.moveToFirst())
         {
             // the path is stored in the DATA column
             int dataIndex = thumbCursor.getColumnIndexOrThrow( MediaStore.MediaColumns.DATA );
             String thumbnailPath = thumbCursor.getString(dataIndex);
             return thumbnailPath;
         }
     }
     finally
     {
         if(thumbCursor != null)
         {
             thumbCursor.close();
         }
     }

     return null;
 }

这是我的日志猫:http://pastebin.com/UZLZF9Pg

经过检查,我发现我发送的 ids 就像 for 循环的索引一样。 我什至不确定我的代码是否应该工作,所以任何其他代码都会很棒。


您应该查询MediaStore.Images.Thumbnails.DATA。要修改您的示例,它看起来像这样。

String[] projection = {MediaStore.Images.Thumbnails.DATA};
// Create the cursor pointing to the SDCard

    Cursor cursor = this.getContentResolver().query( MediaStore.Images.Thumbnails.EXTERNAL_CONTENT_URI,
        projection, // Which columns to return
        null,       // Return all rows
        null,
        null);
// Get the column index of the Thumbnails Image ID
Log.d(TAG, "BEFORE");
int columnIndex = cursor.getColumnIndex(MediaStore.Images.Thumbnails.DATA);
Log.d(TAG, "AFTER1");
for(int i =0;i<cursor.getCount();i++){
    cursor.moveToPosition(i);

    Log.d("MyTag","BBABA" + i +" : " + cursor.getString(columnIndex));
}
cursor.close();

参考:如何从图像的缩略图路径获取图像路径?

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

获取图像缩略图文件路径 的相关文章

  • 由于现有相机用户,相机“0”的手电筒不可用

    我想创建一个应用程序 它有一个用于录制视频的按钮和另一个单独的切换按钮 用于在录制视频期间打开闪光灯 我已经使用camera2 API为最近的androids构建了相机应用程序 可以通过图像按钮访问 我将火炬模式设置为切换按钮 但这根本不起
  • 处理 SavedInstances 并恢复活动

    基本上我的应用程序有 2 个活动 说 A 和 B A 启动 B Activity B 播放音乐并且还有通知 情况 1 当视图仍在活动 B 上时 我按主页按钮 然后单击通知 活动 B 将打开 其视图完好无损并播放音乐 因为在清单中我使用 an
  • Android任务执行中的“platformAttrExtractor”是什么?

    我介绍了我的构建关注者操作说明 https developer android com studio build optimize your build html profile在安卓中 gradlew profile recompile
  • 垂直 ViewPager 中的动画

    我需要垂直制作这个动画ViewPager https www youtube com watch v wuE 4jjnp3g https www youtube com watch v wuE 4jjnp3g 这是我到目前为止所尝试的 vi
  • 如何检查 Android 设备是否在线

    我的服务器不断检查我的 Android 应用程序是否在线 请问我可以在我的android应用程序上执行哪些操作 创建一个名为 isNetworkAvailable 的帮助器方法 该方法将根据网络是否可用返回 true 或 false 它看起
  • adb 今天无法连接到 VirtualBox 中的 Android-x86

    我在 VirtualBox 中成功安装了 Android x86 v3 2 eeepc 一段时间 这是帮助我在 Android 上调试 USB 主机应用程序的好方法 此类配置的安装是 安装VirtualBox 将 Android x86 v
  • 为什么我的地图视图上的叠加层没有显示?

    我按照 google hellomapview 教程中的说明进行操作 我得到了一个工作地图视图等 但是添加到地图中的两个项目没有显示 它们似乎在某个地方 因为点击指定位置会显示添加到项目中的消息 Edit 这是我的源代码 应该和google
  • 返回到上一个活动的最后状态

    我有两个活动 A 和 B 当应用程序启动时 活动 A 会被加载 我会从数据库将数据加载到其中 我可以毫无问题地转到活动 B 但是当我返回活动 A 时 会查看旧数据一段时间 然后重新加载活动 知道如何解决这个问题吗 在从数据库加载数据之前清除
  • RecyclerView 单击将数据传递到新活动

    我正在制作一个包含三个选项卡的应用程序 每个选项卡都有一个带有两个文本的 recyclerview 我希望用户能够单击任何 recyclerview 项目 并且该项目中的文本应传递到新活动 这是应用程序外观的图像 https i stack
  • FileObserver 不适用于 Android 6.0 Marshmallow (API 23) 中的外部存储

    我有一个应用程序可以观察外部存储上的公共目录FileObserver 它运行良好Lollipop设备 我想添加对Marshmallow 所以我用它设置了一台 Nexus 9 平板电脑 在 Marshmallow 设备上 它失败 在 Loll
  • 如何去掉android状态栏的电池图标?

    我通过去掉背景图像来删除 Android 中显示网络 电池和时间信息的状态栏 但图标仍然存在 我也想知道如何删除电池图标 不是用于应用程序 而是用于框架开发 提前致谢 你试过打电话吗 getWindow setFlags WindowMan
  • 绘制平滑曲线

    我想创建更平滑的曲线 而不仅仅是线角 这是我现在画的图 这是我的代码 case FREEHAND float pts float ptk ptk new float 2 imageMatrix invert inv if mCurrentS
  • RxJava android mvp 单元测试 NullPointerException

    我是 mvp 单元测试的新手 我想对演示者进行一个非常基本的测试 它负责登录 我只想断言 view onLoginSuccess 这是演示者代码 public LoginPresenter LoginViewContract loginVi
  • Android - 在图像/缩略图上覆盖播放按钮的最佳方式

    我有一个 Android 应用程序 可以播放音频 视频并显示图片 对于视频 我想在预览图像顶部以及列表视图中叠加一个播放按钮 现在我的做法是使用 xml 中的 ImageView 然后可绘制对象是一个图层图层列表 我以编程方式定义它 因为其
  • Android 导航组件 - 从“任何地方”/基本片段导航?

    我正在开发一个应用程序 它有一个奇怪的花招 可以在设备旋转时打开特定的片段 在实现 android 的导航组件之前 所需要的只是对当前活动的引用 并且可以在特定时刻向用户显示的任何内容之上执行手动片段事务 但是在转移到导航组件之后 我发现很
  • 线性布局高度和重量

    我有以下内容
  • Android Studio - 无法解析符号“firebase”

    我目前正在将应用程序升级到新的 Firebase 版本 我按照指南进行操作 包括classpath com google gms google services 3 0 0 在我的项目 build gradle 的依赖项中以及compile
  • 通过 Google 帐户从 Google Play 安装的应用程序列表

    以下是我的问题 是否可以通过使用任何 api 以编程方式通过 Google Play 获取用户已安装的应用程序列表 请注意 我并不是询问设备中当前安装的应用程序列表 而是询问在某个时刻已安装的应用程序列表 我需要解决上述问题 因为我正在考虑
  • 具有隐式授权的 OAuth 应用程序中的客户端模拟

    来自 OAuth 草案 隐式section https datatracker ietf org doc html draft ietf oauth v2 31 section 1 3 2 在隐式授权流程期间发出访问令牌时 授权服务器不对客
  • 无法解析“:feature@debugFeature/compileClasspath”的依赖关系:无法解析androidx.annotation:annotation:1.0.0-rc01

    将 Android Studio 更新到 3 3 Canary 10 从之前的 Canary 后 我开始遇到 Gradle 同步问题 ERROR Unable to resolve dependency for feature debugF

随机推荐

  • 创建Android Activity类的对象

    我有一个扩展的类Activity我试图在普通的 java 类中创建该类的对象 但它抛出了一个异常 Can t create handler inside thread that has not called looper prepare 我
  • 尝试读取或写入受保护的内存

    我开始看到我的应用程序中的几个不同位置抛出了 AccessViolationException 它从未发生在我的开发电脑 我们的测试服务器上 它也只出现在我们 2 台生产服务器中的 1 台上 因为它似乎只发生在我们的一台生产服务器上 所以我
  • 如何检测UDP数据包是否丢失? (C#)

    我正在开发 SNTP 客户端 它通过 UDP 从 NTP 服务器获取时间戳 一切正常 我可以下载时间戳并更新 Windows 时钟 但如果 UDP 数据包丢失 我想收到一条消息 如何检测数据包何时丢失 我需要这些信息 因为如果数据丢失我想获
  • 使用 awk 忽略 CSV 文件字段中的逗号

    我试图从 CSV 文件最后一行的第二个字段中获取一个数字 到目前为止 我有这个 awk F END print 2 file path fileName csv 除非最后一行中的第一个字段中有逗号 否则这是有效的 所以对于看起来像这样的行
  • 修改无窗口 QLabel 的 Alpha 通道透明度

    我有一个非常小的 Qt 应用程序 它使用标签来显示 jpeg 图像 而无需先将其放入窗口中 我得到了很多帮助使用 QtGui 显示 QImage 现在我想更改此 jpeg 的 Alpha 通道以使图像部分透明 我尝试过以下操作 但没有任何运
  • 在 Spring 测试中忽略 MongoDB 套接字连接

    我在 spring 项目中使用 mongo 但无法连接到 mongo 服务器 任何人都知道在执行测试时忽略这个 bean 的方法 因为有时我没有 mongo 服务器 并且我不希望此构建失败 我真的很想知道我是否可以使用 SpringRunn
  • NHibernate级联保存

    这是试图将 null 插入 Comment BlogArticleID 出现以下 GenericADOException 无法插入 NHibernate OneToMany BO Comment SQL INSERT INTO Commen
  • C++ 将对象向量中的元素复制到包含该元素的向量中

    我想复制a值来自foos将向量转换为另一个向量 只需int价值 最快的方法是什么 include
  • “内联”关键字和“内联”优化是不同的概念吗?

    我问这个基本问题是为了澄清事实 已提及这个问题 and 目前接受的答案 这没有说服力 但是 那得票数第二高的答案提供了更好的洞察力 但也不完美 在阅读下面的内容时 尝试区分inline keyword和 内联 concept 这是我的看法
  • Bootstrap 4 导航栏未显示[重复]

    这个问题在这里已经有答案了 我正在尝试使用 Bootstrap 4 创建导航栏 这是我的 package json 文件的内容 name NAME here version 1 0 0 description Descripttion ge
  • 为 iPad 和 iPhone 设置输入按钮的样式

    我使用 CSS 来设置网站上输入按钮的样式 但在 IOS 设备上 样式被 Mac 的默认按钮所取代 有没有一种方法可以为 iOS 设计按钮样式 或者可以制作一个行为类似于提交按钮的超链接 您可能正在寻找 webkit appearance
  • Java EE 6 编程安全性、glassfish 和 JDBC 领域

    我正在探索基于 glassfish 服务器的 jdbc 领域的纯 Java EE 方法来实现编程安全性 特别是登录用户 基本上 在我的登录 servlet 中我正在做 String username request getParameter
  • Laravel 4:如何运行原始 SQL?

    我想重命名 Laravel 4 中的表 但不知道该怎么做 SQL 是alter table photos rename to images 如果有 Eloquent 解决方案 我还想知道如何运行原始 SQL 因为有时别无选择 In the
  • R:如何让我的包使用另一个包?

    这是一个非常简单的问题 我正在延长某人的包裹 它当前使用包 A B 它们列在说明文件中 如果我需要包 C 中的函数 将包添加到依赖项 我是否只需在描述文件中添加包就足够了 进入哪个部分 依赖或导入 还需要采取更多其他步骤吗 一旦我的代码需要
  • Google Apps 脚本中的格式化日期

    我试图在提交表单时获取包含简单格式化日期的电子表格 但所有日期 包括时间戳 都被发布为 1969 年 12 月 31 日下午 2 00 我做错了什么 任何帮助将不胜感激 function formSubmitReply e var shee
  • 有没有一个工具可以将swf反编译为actionscript? [复制]

    这个问题在这里已经有答案了 可能的重复 如何反编译 swf 文件 有人知道有这样的工具吗 硕思的反编译器是一个很好的起点
  • 从 pojo 生成 JsonSchema:如何自动添加“描述”?

    我正在尝试从项目中的 pojos 自动生成 JsonSchema 代码如下所示 ObjectMapper mapper new ObjectMapper SchemaFactoryWrapper visitor new SchemaFact
  • 只想比较 TIME 值 MomentJS

    在浏览了一些其他 MomentJS 问题和答案之后 我仍然对如何使用 moment 进行简单比较感到困惑两个不同的时间 我不需要 想要 考虑日期 日期 我的用例是这样的 我正在从配置文件中读取时间表 开始 结束时间 这是使用 Node js
  • 有多少 iPhone 应用程序可以在 Linux 上开发和测试?

    我为客户开发一些 iPhone 应用程序 但我更喜欢在 Linux 机器上工作 我知道您需要在运行 OS X 的计算机上执行某些操作 例如构建最终发行版 在模拟器中运行 iPhone 应用程序等 但我想知道你可以使用普通的 Objectiv
  • 获取图像缩略图文件路径

    我正在尝试获取缩略图paths 而不是位图对象 当我查询这些时 某些缩略图路径由于某种原因为空 我的设备中有1028个缩略图 光标长度确实是1028 但仍然返回空值 我知道有1028个缩略图 因为我检查过 这是我的代码 String pro