BroadcastReceiver之SD的挂载监听

首先,新建一个类,继承于BroadcastReceiver,然后去配置Manifest.xml这就不用说了,

注意配置Manifest.xml时候的一些细节

必须加上<data android:scheme="file"/>

1 <receiver android:name=".SdReceicer">
2             <intent-filter>
3                 <action android:name="android.intent.action.MEDIA_MOUNTED"/>
4                 <action android:name="android.intent.action.MEDIA_UNMOUNTED"/>
5                 <data android:scheme="file"/>
6             </intent-filter>
7         </receiver>

然后简单了两句判断就行了

 1 public class SdReceicer extends BroadcastReceiver {
 2     @Override
 3     public void onReceive(Context context, Intent intent) {
 4         String action = intent.getAction();//得到执行的是哪个action
 5         if ("android.intent.action.MEDIA_MOUNTED".equals(action)){
 6             Toast.makeText(context,"SD卡加载了",Toast.LENGTH_SHORT).show();
 7         }else if ("android.intent.action.MEDIA_UNMOUNTED".equals(action)){
 8             Toast.makeText(context,"SD卡被卸载了",Toast.LENGTH_SHORT).show();
 9         }
10     }
11 }
时间: 2024-10-13 10:03:37

BroadcastReceiver之SD的挂载监听的相关文章

Android USB大容量存储时SD卡状态监听(转)

对SD卡状态监听,到现在为止我知道的有两种方式: 1.注册StorageEventListener来监听sd卡状态 StorageEventListener中有onStorageStateChanged()方法,当sd卡状态改变时,此方法会调用,对各状态的判断一般会用到Environment类,此类中包含的有关sd卡状态的常量有: MEDIA_BAD_REMOVAL:表明SDCard 被卸载前己被移除 MEDIA_CHECKING:表明对象正在磁盘检查 MEDIA_MOUNTED:表明sd对象是

Android开发之使用BroadcastReceiver实时监听电量(源代码分享)

Android系统中实时的监听手机电量以及开机启动功能都是通过BroadcastReceiver组件实现的.我们可以动态注册这个类的一个实例通过Context.registerReceiver()方法或者静态注册,通过<Receiver>标记在androidmanifest . xml.注意:如果我们注册一个接收器在Activity.onResume()实现,我们应该注销Activity在Activity生命周期的onPause方法中.(这将减少不必要的系统开销).切记不能注销Activity

Android BroadcastReceiver实时监听电量

Android系统中实时的监听手机电量以及开机启动功能都是通过BroadcastReceiver组件实现的.我们可以动态注册这个类的一个实例通过 Context.registerReceiver()方法或者静态注册,通过<Receiver>标记在androidmanifest . xml.注意:如果我们注册一个接收器在Activity.onResume()实现,我们应该注销Activity在Activity生命周期的 onPause方法中.(这将减少不必要的系统开销).切记不能注销Activi

Android实训案例(六)——四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听

Android实训案例(六)--四大组件之一BroadcastReceiver的基本使用,拨号,短信,SD卡,开机,应用安装卸载监听 Android中四大组件的使用时重中之重,我这个阶段也不奢望能把他所有的原理搞懂,但是最起码的,我要把他的各种使用方法了如指掌才行 BroadcastReceiver 接收系统的广播,比如电话,短信之类的 1.IP拨号器 我们在拨打电话的时候,我们系统也会事先发送一个广播,所以我们可以用广播接收者来接收到这个广播拨打电话的时候在电话号码前面加上一些优惠的长途短号,

android86 监听SD卡状态,勒索软件,监听应用的安装、卸载、更新,无序广播有序广播

* 添加权限 <uses-permission android:name="android.permission.RECEIVE_SMS"/> * 4.0以后广播接收者安装以后必须手动启动一次,否则不生效 * 4.0以后广播接收者如果被手动关闭,就不会再启动了 ------------------------------------------------------------------------ #监听SD卡状态 * 清单文件中定义广播接收者接收的类型,监听SD卡常

Android监听外部存储设备的状态(SD卡、U盘等等)

最近在项目中需要对外部存储设备的状态进行监听,所以整理了此笔记,以便日后查看. 外部存储设备的状态变化时发出的广播 对比不同状态下的广播 1. 插入外部SD卡时: 2. 移除外部SD卡时: 3. 连接PC进入USB大容量存储模式时: 4. 连接PC退出USB大容量存储模式时: 代码实现监听 public void startListen() { IntentFilter intentFilter = new IntentFilter(Intent.ACTION_MEDIA_MOUNTED); i

默认开机启动;通过Broadcastreceiver广播监听开机启动,实现&quot;没有activity&quot;的自启服务或者自启应用程序。

一.首先介绍一下如何开机启动: 第一种:  监控RECEIVE_BOOT_COMPLETED,即开机启动事件 第二种: 监控sd卡mount事件  开机总会扫描sd卡吧? 监控sd卡事件也有类似开机启动效果,特别app安装在sd卡的情况下有些os是抓取不到RECEIVE_BOOT_COMPLETED 第三种: android:installLocation="internalOnly", 限制app的安装位置,使其能抓取到RECEIVE_BOOT_COMPLETED 我们也可以同时使用

Android短信监听(一)——利用BroadcastReceiver实现短信监听

MainActivity如下: package cc.testsmsbroadcastreceiver; import cc.testsmsbroadcastreceiver.SMSBroadcastReceiver.MessageListener; import android.os.Bundle; import android.widget.TextView; import android.app.Activity; /** * Demo描述: * 利用BroadcastReceiver实现

android--解决方案--用BroadcastReceiver监听手机网络状态变化

实现一个功能,可以有很多种方法,但我们所追求的是最适合于自己项目的那一种方法. 就比如app要判断网络状态,如果在每次使用网络的时候去判断一次网络状态的话,有些耗费时间.例如,你要在打开网页之前先判断网络是否畅通以及在下载图片之前判断网络类型,那么务必造成等待时间的增加.因此,我们可以尝试只需在手机网络状态变更的时候,去记录一下当前的网络状态到我们的app里,在使用网络的地方就无需再去主动检查网络了. 废话不多说,本文主要是借助于android的广播机制BroadcastReceiver来接收系