`
407827531
  • 浏览: 1076466 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

获取手机图片和视频的缩略图

 
阅读更多

推荐安卓开发神器(里面有各种UI特效和android代码库实例)

大家都知道Android从1.5开始刚插入SD卡时系统会调用MediaScanner服务进行后台扫描,索引新的歌曲、图片和视频等信息,如果我们需要快速提取图片和视频缩略图可以直接访问 android.provider.MediaStore.Images.Thumbnails 和android.provider.MediaStore.Video.Thumbnails这两个数据库,即可查询出来缩略图

  如何判断文件呢? 可以通过Cursor遍历数据库,对比INTERNAL_CONTENT_URI字段的值,这是一个Uri我们可以转成String,这里保存着Android手机SD卡上的多媒体文件完整路径,

  有关具体的缩略图可以通过getThumbnail(ContentResolver cr, long origId, int kind, BitmapFactory.Options options) 或getThumbnail(ContentResolver cr, long origId, long groupId, int kind, BitmapFactory.Options options) 方法获取,这两种方法返回Bitmap类型,而缩略图的分辨率可以从HEIGHT和WIDTH两个字段提取,在Android上缩略图分为两种,通过读取KIND字段来获得,分别为MICRO_KIND和MINI_KIND 分别为微型和迷你两种缩略模式,前者的分辨率更低。这样我们平时获取文件系统的某个图片预览时,可以直接调用系统缩略图,而不用自己重新计算。

  最后Android123提示大家,缩略图保存在SD卡的DCIM目录,里面的.thumbnails是图片的,而.video_thumbnails是视频的,这两个文件夹为隐藏属性,一般的文件管理器都可以看到。





从Android2.2开始系统新增了一个缩略图ThumbnailUtils类,位于framework的android.media.ThumbnailUtils位置,可以帮助我们从mediaprovider中获取系统中的视频或图片文件的缩略图,该类提供了三种静态方法可以直接调用获取。

1. static Bitmap createVideoThumbnail(String filePath, int kind)   //获取视频文件的缩略图,第一个参数为视频文件的位置,比如/sdcard/android123.3gp,而第二个参数可以为MINI_KIND或MICRO_KIND最终和分辨率有关

2. static Bitmap extractThumbnail(Bitmap source, int width, int height, int options) //直接对Bitmap进行缩略操作,最后一个参数定义为OPTIONS_RECYCLE_INPUT,来回收资源

3. static Bitmap extractThumbnail(Bitmap source, int width, int height) // 这个和上面的方法一样,无options选项

最后Android开发网再次提醒大家,ThumbnailUtils类是API Level从8或更高才开始支持的。

分享到:
评论

相关推荐

    ANDROID 获取最近的相片的缩略图

    通过研究和理解这个代码,开发者可以更好地掌握如何在Android应用中正确处理图片缩略图的获取和展示,同时解决可能出现的问题。 总之,获取Android设备上的最近相片缩略图需要正确查询MediaStore,按时间排序,并...

    苹果cms采集电影没有缩略图解决视频图片显示失败问题

    如果源站未提供或因网络问题无法获取缩略图,就可能导致视频图片显示不正常。此外,系统的图片处理功能可能存在问题,或者服务器配置限制了图片的加载。 针对这种情况,描述中提到的"tu.php"可能是苹果CMS社区中的...

    PHP+js 上传视频、预览、缩略图、视频时长

    生成视频缩略图通常需要用到FFmpeg,这是一个强大的跨平台多媒体处理工具。在PHP中,可以使用shell_exec()或者exec()函数调用FFmpeg命令行,截取视频的关键帧作为缩略图。例如,`ffmpeg -i input.mp4 -vframes 1 ...

    RxFile,从android上的文档提供商(drive、dropbox等)获取文件和图像或视频缩略图的rx方法.zip

    7. **图片和视频缩略图**:获取媒体缩略图通常涉及到Bitmap的加载和解码,这是一个内存消耗大的过程。RxFile可能封装了高效的缩略图生成策略,如使用ThumbnailUtils或者 Glide、Picasso 等图片加载库来处理。 8. **...

    ios自定义批量获取手机图片及相册LWGPhotos

    `LWGPhotos`库可能通过`PHImageManager`来请求图片的缩略图和全分辨率图像,同时利用`PHContentEditingInput`和`PHContentEditingOutput`来处理图片编辑。 在iOS 8之前的系统,`AssetsLibrary`框架被使用。`ALAsset...

    Android获取SD卡上图片和视频缩略图的小例子

    可以通过Cursor遍历数据库,对比INTERNAL_CONTENT_URI字段的值,这是一个Uri,这里保存着Android手机SD卡上的多媒体文件完整路径。 [java] 代码如下:Uri originalUri = MediaStore.Images.Media.EXTERNAL_CONTENT_...

    android端读取手机所有图片 相册格式

    在Android平台上,获取并展示手机中的...综上所述,实现“android端读取手机所有图片 相册格式”涉及了多媒体数据检索、UI布局设计、图片缩略图处理、用户交互等多个环节,需要综合运用Android的基础知识和最佳实践。

    高仿微信选择图片与视频

    对于视频,可能涉及到MediaMetadataRetriever类,用于获取视频的缩略图。 3. **多选机制** 多选功能是通过复选框或者其他的UI元素来实现的。在Android中,这通常涉及到Adapter的使用,结合RecyclerView来动态渲染...

    安卓视频/图片选择器

    `media-chooser`是一个Android库,设计用于创建一个自定义的媒体选择对话框,它允许用户浏览并选择手机内部或外部存储的视频和图片。这个库通常包含一系列的UI组件,如GridView或RecyclerView,用于展示媒体文件的...

    android 按时间显示图片

    在实际项目中,可能还需要处理更多细节,例如图片的缩略图显示、加载进度显示、错误处理等。此外,CD2可能是图片文件夹名称或者图片ID,具体含义需根据实际情况解读。理解这些知识点后,开发者可以灵活地构建出满足...

    仿手机qq点击加号出现图库最近添加的图片

    每个缩略图通常是一个ImageView,可以通过Glide、Picasso等库加载图片,实现高效、流畅的图片显示。同时,需要考虑布局的响应式设计,确保在不同屏幕尺寸和方向上都能正常工作。 5. 权限管理: 由于Android 6.0...

    基于Android的手机图片管理的设计与实现+毕业论文

    2. 图片浏览:应用应提供流畅的图片预览功能,支持缩略图显示和全屏查看,以及平移、缩放等手势操作。 3. 图片搜索:通过关键词或标签进行图片搜索,提高查找效率。 4. 图片编辑:提供基本的图片编辑功能,如裁剪、...

    Android 扫描手机中的图片,仿微信显示本地图片效果.zip

    2. **ContentResolver**:`ContentResolver`是与`ContentProvider`进行交互的接口,可以用来读取、写入和管理存储在Android设备上的数据,如图片、视频等。通过`ContentResolver.query()`方法可以获取到`MediaStore`...

    android图片浏览器

    Android提供了`Bitmap.createScaledBitmap()`方法生成缩略图,或者使用图片库的特定功能来实现。 6. **性能优化**:在处理大量图片时,内存管理和性能优化至关重要。这包括合理设置`ImageView`的`scaleType`,使用...

    Android 仿微信图片选择器 支持图片选择与拍照

    为了优化,这个选择器可能采用了如缩略图生成、内存缓存和磁盘缓存等策略。其中,像 Glide、Picasso 或者 Fresco 这样的第三方库经常被用来高效地加载和显示图片,但此选择器不依赖任何第三方库,意味着它可能使用了...

    安卓Andriod源码——扫描手机中的图片,仿微信显示本地图片效果.zip

    通过查询`MediaStore.Images.Media.EXTERNAL_CONTENT_URI`,我们可以获取到所有存储在外部存储(如SD卡)上的图片信息,包括图片的路径、缩略图等。同时,我们需要适配不同的Android版本,因为API接口可能有所变化。...

    销客多3.5.1手机拍图片摄上传插件

    POST请求通常包含在HTTP请求体中的图片二进制数据,服务器接收到这些数据后,会将其保存到指定的存储位置,并可能进行进一步的处理,如生成缩略图或者进行图片格式转换。在上传成功后,系统会在后台的图片库中展示...

    GridVIew 视频播放

    生成视频缩略图可以使用MediaMetadataRetriever类。这个类提供了从媒体文件中提取元数据的方法,包括获取视频的帧作为缩略图。你可以调用`MediaMetadataRetriever.getFrameAtTime()`方法来获取一帧作为缩略图,然后...

    仿微信本机图片选择器Android源码

    1. **图片库访问**:Android提供了ContentResolver和MediaStore类,用于获取设备上的图片、视频等多媒体文件信息。源码中会利用这些API来获取并展示用户相册中的图片。 2. **GridView或RecyclerView**:在Android中...

    自定义本地相册的功能,可以多选图片用.zip

    这个界面通常包含一个可滚动的列表或网格视图,展示手机上的所有图片缩略图。我们可以使用GridView或者RecyclerView作为承载图片的容器,配合ImageView显示图片。为了提高性能,通常我们会使用 Glide 或 Picasso ...

Global site tag (gtag.js) - Google Analytics