Android调用MediaScanner进行新产生的媒体文件扫描

有时候,我们拍了一张图片或录制了一段视频,图库应用默认没有将这些新产生的文件识别出来所以打开图库或视频播放器发现没有找到这些文件,需要调用MediaScanner扫描一下才会出来。从FFMPEG中找了一个类用来扫描媒体文件。

public class FFMpegMediaScannerNotifier implements MediaScannerConnectionClient {
    private MediaScannerConnection mConnection;
    private String mPath;

    private FFMpegMediaScannerNotifier(Context context, String path) {
        mPath = path;
        mConnection = new MediaScannerConnection(context, this);
        mConnection.connect();
    }

    public static void scan(Context context, String path) {
        new FFMpegMediaScannerNotifier(context, path);
    }

    public void onMediaScannerConnected() {
        mConnection.scanFile(mPath, null);
    }

    public void onScanCompleted(String path, Uri uri) {
        mConnection.disconnect();
    }
}
时间: 2024-10-05 03:25:42

Android调用MediaScanner进行新产生的媒体文件扫描的相关文章

android媒体文件扫描

项目中可能有这样的需求:下载或导入.导出的图片.音乐等媒体文件,需要马上能在图库或本地视屏播放器中显示出来,或者要能在媒体数据库中查询到媒体文件的相关信息,这时我们就得主动通知系统扫描新的媒体文件了.我整理了一个扫描的工具类,分享下. 具体代码: public class MediaScanner { private volatile static MediaScanner instance; private MediaScanner(){ } public static MediaScanne

Android 调用系统分享文字、图片、文件,可直达微信、朋友圈、QQ、QQ空间、微博

原文:Android 调用系统分享文字.图片.文件,可直达微信.朋友圈.QQ.QQ空间.微博 兼容SDK 18以上的系统,直接调用系统分享功能,分享文本.图片.文件到第三方APP,如:微信.QQ.微博等 因为偷懒,可直达微信.朋友圈.QQ.QQ空间.微博的分享仅写了图片分享的,其他的文本.文件分享不常用到,就不写了. 具体图片分享区分单张图片分享和多张图片分享,详情请看代码: import android.content.ComponentName; import android.content

Android调用Sqlite数据库时自动生成db-journal文件的原因

数据库为了更好实现数据的安全性,一半都会有一个Log文件方便数据库出现意外时进行恢复操作等.Sqlite虽然是一个单文件数据库,但麻雀虽小五脏俱全,它也会有相应的安全机制存在 这个journal文件便是Sqlite的一个临时的日志文件,主要用于sqlite事务回滚机制,在事务开始时产生, 在事务结束时删除.当程序发生崩溃或者系统断电时该文件将留在磁盘上,以便下次程序运行时进行事务回滚. 在android模式下,journal文件是永久的留在磁盘上不会被自动清除的.如果没有发生事务回滚那么.db-

Android O (8.0) 新特性介绍

Android O 功能和 API (文章内容均来Google开发者官网,有需要可自行FQ查看更多资料) Android O 为用户和开发者引入多种新功能.本文重点介绍面向开发者的新功能.请务必查阅 android O 行为变更以了解平台变更可能影响您的应用的领域. 通知 在 Android O 中,我们已重新设计通知,以便为管理通知行为和设置提供更轻松和更统一的方式.这些变更包括:  通知渠道:Android O 引入了通知渠道,其允许您为要显示的每种通知类型创建用户可自定义的渠道.用户界面将

Android 之MediaScanner流程解析

MediaScanner详解 OK, 我们现在开始来大概分析一下android framework中MediaScanner部分的流程,若大家发现分析过程中有错误,欢迎拍砖指正. 分析流程之前,我们先给自己定个要用MediaScanner解决的问题,这样我们才会有目标感,才知道我们要干什么.否则,干巴巴的分析流程,一般都会很容易的迷失在各种code的迷雾中. 我们这里要定的目标是:获取某个MP3文件的artist & album. 我们可以假定,现在有个媒体播放器,在播放music的时候,需要在

Android之4.0新特性

Android 4.0 平台 API等级:14  Android 4.0 是一次重要的平台发布版,为用户和应用程序开发者增加了大量的新特性.在下面我们将讨论的所有新特性和API中,因为它将 Android 3.x 版本中广泛使用的API和全息图像主题带给了小屏幕设备,因此我们说 Android 4.0 是一次重要的平台发布版.作为一名开发者,现在你拥有了单一的平台和统一的 API 框架,使你可以开发,并通过一个APK 来发布你的应用程序,并且可以为运行相同版本 Android(Android 4

Android N上一些新特性的介绍

by Li.zhu 随着6月份google的Android N preview 4版本的发布,笔者也借着东风在N6P上体验了一把新系统,试玩之后认为有几点新的感受特记录之. 1.分屏多任务 进入后台多任务管理页面,然后按住其中一个卡片,然后向上拖动至顶部即可开启分屏多任务,支持上下分栏和左右分栏,允许拖动中间的分割线调整两个APP所占的比例.目前,Android N开发者预览版支持全部第三方应用尝试分屏操作,但个别应用适配可能存在问题,分屏后可能导致界面显示不全等问题. ?  操作方式: ?  

Android 调用webService(.net平台)

什么是webservice? Web service是一个平台独立的,低耦合的,自包含的.基于可编程的web的应用程序,可使用开放的XML(标准通用标记语言下的一个子集)标准来描述.发布.发现.协调和配置这些应用程序,用于开发分布式的互操作的应用程序.Web   Service所使用的是Internet上统一.开放的标准,如HTTP.XML.SOAP(简单对象访问协议).WSDL(webservice描述语言)等,所以Web   Service可以在任何支持这些标准的环境(Windows,Lin

接入新浪、腾讯微博和人人网的Android客户端实例 接入新浪、腾讯微博和人人网的Android客户端实例

做了个Android项目,需要接入新浪微博,实现时也顺带着研究了下腾讯微博和人人网的Android客户端接入,本文就跟大家分享下三者的Android客户端接入方法. 一.实例概述 说白了,接入微博就是让你的应用程序可以调用新浪微博,腾讯微博和人人网的api,实现微博发送,分享给好友等等的功能啦.当然也可以实现让你的客户端使用微博账号进行登录.我们这篇文章要讲的就是访问这些社交平台提供的api的时候比较关键的一步,获取调用api接口的token,token可以理解为我们的客户端程序与社交平台api