`
liliang1222
  • 浏览: 158689 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

android开发:接收sd插拔广播

 
阅读更多

广播接收者( Broadcast Receiver )用于已读接收广播 Intent ,而广播 Intent 的发送是通过调用 Context.sendBroadcast() Context.sendOrderedBroadcast() 或者 Context.sendStickyBroadcast() 来实现的。

         广播接收器只能接收广播,对广播的通知所出反应。

         广播接收器没有用户界面,但是他们可以为他们接收到信息启动一个 Actvity ,或者他们可以使用 NotificationManager 来通知用户

 

订阅感兴趣的广播 Intent

1.       使用代码进行订阅

 

IntentFilter filter = new IntentFilter(“android.provider.Telephony.SMS_RECEIVED”);
IncomingSMSReceiver receiver = new IncomingSMSReceiver();
registerReceiver(receiver ,filter); 

 

2.       AndroidManifest.xml 中进行订阅

<receiver android:name=”.IncomingSMSReceiver”>
  <intent-filter>
     <action android:name=”android.provider.Telephony.SMS-RECEIVER”/>
  <intent-filter>
</receiver>
 

 

一个 BroadcatReceiver 对象的生命周期不超过 5s ,所以在 BroadcastReceiver 不能做一些超时的操作,如果需要完成一项比较耗时的工作,可以通过发送 Intent activity service 来完成

 

------------------------------------------

   从sdk文档中找出插拔卡的Broadcast Action

 


插入sd卡状态变化


拔出sd卡状态变化


 

但是在使用过程中一直无法接收插拔卡事件,后来在网上发现需要添加dataScheme属性

<receiver android:name=".service.MediaMountReceiver">
			<intent-filter>
				<action android:name="android.intent.action.MEDIA_MOUNTED"/>
				<action android:name="android.intent.action.MEDIA_UNMOUNTED"/>
				<data android:scheme="file"/>
			</intent-filter>
		</receiver>

 

引用:该文章讲解intentFilter挺好的

http://blog.csdn.net/silenceburn/article/details/6083375

  • 大小: 36.4 KB
  • 大小: 3.7 KB
  • 大小: 6.5 KB
分享到:
评论

相关推荐

    Android开发:AndroidStudio:服务与广播接收器完全指南.pdf

    Android开发:AndroidStudio:服务与广播接收器完全指南.pdf

    Android入门:广播发送者与广播接收者详细介绍

    一、广播发送者&广播接收者介绍 1.广播接收者 广播接收者简单地说就是接收广播意图的Java类,此Java类继承BroadcastReceiver类,重写: public void onReceive(Context context,Intent intent),其中intent可以获得...

    android检测U盘插拔事件

    &lt;action android:name="android.hardware.usb.action.USB_DEVICE_DETACHED" /&gt; ``` 另一种可能的方法是通过Service或者Activity中的生命周期方法来检测U盘状态的变化,但这通常不太可靠,因为U盘插拔可能不会...

    Android Studio—接受多个广播、广播传递数据.zip

    在Android应用开发中,BroadcastReceiver(广播接收器)是一个关键组件,它允许应用程序接收和响应系统或自定义广播事件。Android Studio是Google官方推出的集成开发环境,专门用于Android应用开发。本教程将深入...

    基于Android的广播接收器的设计与应用.pdf

    基于Android的广播接收器的设计与应用 本文主要介绍了基于Android的广播接收器的设计与应用。 Android系统通过广播接收器可以实时监听系统中的广播信息,当用户使用手机时,如遇到电话或者短信,系统会将电话或短信...

    Android如何实现接收和发送短信

    1、创建内部广播接收器类,接收系统发出的短信广播 2、从获得的内容中解析出短信发送者和短信内容 3、在Activity中注册广播 4、添加接收短信权限 下面放上具体的代码  activity_main.xml文件用于显示短信发送者...

    Android 操作以太网,监听网线插拔和以太网开关,设置以太网静态IP等

    这个项目已经很老了,其实是从 Android 4.4.4 的系统 Settings 中 copy 出来的。 其实原理都是编译运行系统 ...Android 操作以太网的项目,提供了监听网线插拔和以太网开关,设置以太网静态IP、网关、子网掩码、dns等。

    Android项目设计与开发:广播的概念.ppt

    嵌入式Android项目设计与开发 第五章 广播 ——广播的概念 概念 广播:广播是Android四大组件之一。系统中某种事件产生后会往外发送一个消息,该消息可以发送到系统每一个角落(这种消息也可以用户自己发出)。这种...

    Android的广播接收者

    理解并掌握广播接收者的使用是Android开发中的关键技能之一。 **广播接收者的注册** 1. **静态注册**:在AndroidManifest.xml文件中声明广播接收者,这种方式的广播接收者在系统启动时就会被创建,即使应用没有运行...

    解决全志A64 Android6.0第三方应用无法接收到开机广播补丁

    在Android系统中,广播接收器(Broadcast Receiver)是应用程序组件之一,它允许应用程序接收并响应系统或其它应用程序发送的广播消息。例如,开机广播是一种常见的系统广播,当设备启动时,系统会发出这个广播,让...

    android中广播接收

    在Android系统中,广播接收器(Broadcast Receiver)是一种重要的组件,它允许应用程序监听并响应系统或应用程序发送的各种广播意图(Intent)。广播是Android系统中的一种全局通知机制,用于在不同的应用之间传递...

    Android项目设计与开发:静态接收器.ppt

    嵌入式Android项目设计与开发 第五章 广播 ——静态接收器 静态接收器 静态接收器概念: 静态接收器并不是通过代码定义过滤器和接收器对象,而是在注册文件中注册的。 当应用被安装之后,该接收器就已经存在并启动了...

    android 广播接收完整源码

    在Android系统中,广播接收器(Broadcast Receiver)是四大组件之一,它负责监听并响应系统或应用程序发布的广播意图(Intent)。本资源提供的“android 广播接收完整源码”应该包含了一个实现广播接收功能的完整...

    android 广播发送接收UDP

    1、用来测试Android手机为啥接收不到UDP广播报文。

    Android U盘插拔监听详细版以及U盘写入权限解决办法

    &lt;uses-feature android:name="android.hardware.usb.host" android:required="false" /&gt; ``` **二、U盘写入权限** 在Android 6.0(API级别23)及以上版本,用户需要在运行时授予应用写入外部存储(如U盘)的权限。...

    android USB插拔事件

    一个很实用的test,检测USB的插拔事件

    Android U盘插拔监听以及U盘写入权限解决办法

    要监听U盘的插入和拔出事件,我们需要注册一个BroadcastReceiver来接收ACTION_USB_DEVICE_ATTACHED和ACTION_USB_DEVICE_DETACHED广播。 1. 创建BroadcastReceiver: ```java public class UsbBroadcastReceiver ...

    android 跨应用程序广播发送接受

    在Android系统中,跨应用程序广播(Cross-App Broadcasting)是一种通信机制,允许应用程序之间传递消息,无需知道接收方确切的身份。这种机制对于组件间的解耦合以及系统事件的全局通知非常有用。本篇文章将深入...

Global site tag (gtag.js) - Google Analytics