广播
来源:互联网 发布:数据挖掘十大算法答案 编辑:程序博客网 时间:2024/04/28 00:59
1、IP拨号器
原理说明:接收拨打电话的广播,修改广播内携带的电话号码,把修改后的电话号码拨打出去。
定义广播接收者接收打电话广播
public class IpDialerBroadcast extends BroadcastReceiver { //当广播接收者接收到广播时,此方法会调用 @Override public void onReceive(Context context, Intent arg1) { //获取到用户拨打的号码 String oldTel=getResultData(); SharedPreferences spf=context.getSharedPreferences("IpTel", Context.MODE_PRIVATE); String ipNum=spf.getString("ipNum", ""); //修改广播内的号码 String newTel=oldTel+ipNum; setResultData(newTel); }}
在AndroidManifest.xml文件中定义该广播接收者接收的广播类型
<receiver android:name="com.example.ip_dialer.IpDialerBroadcast"> <intent-filter > <action android:name="android.intent.action.NEW_OUTGOING_CALL"></action> </intent-filter> </receiver>
接收打电话广播需要权限
<uses-permission android:name="android.permission.PROCESS_OUTGOING_CALLS"/>
即使广播接收者的进程没有启动,当系统发送的广播可以被该接收者接收时,系统会自动启动该接收者所在的进程
2、监听SD卡状态
广播接收者的定义
public void onReceive(Context context, Intent intent) { // TODO Auto-generated method stub //区分接收到的是哪个广播 String action=intent.getAction(); if("android.intent.action.MEDIA_MOUNTED".equals(action)){ Toast.makeText(context, "SD卡可用", Toast.LENGTH_SHORT).show(); } else if("android.intent.action.MEDIA_REMOVED".equals(action)){ Toast.makeText(context, "SD卡拨出", Toast.LENGTH_SHORT).show(); } else if("android.intent.action.MEDIA_UNMOUNTED".equals(action)){ Toast.makeText(context, "SD不可以用", Toast.LENGTH_SHORT).show(); } }
在AndroidManifest.xml文件中定义广播接收者接收的类型,监听SD卡常见的三种状态,所以广播接收者需要接收三种广播
<receiver android:name="com.lyjs.sdstatueslistener.SdListener"> <intent-filter > <action android:name="android.intent.action.MEDIA_MOUNTED"/> <action android:name="android.intent.action.MEDIA_REMOVED"/> <action android:name="android.intent.action.MEDIA_UNMOUNTED"/> <data android:scheme="file"/> </intent-filter> </receiver>
0 0
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播:
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- 广播
- Unity UGUI实现图文混排
- ubuntu下安装tidy
- Teach Yourself Programming in Ten Years
- 减小iOS应用程序的大小
- algs4开发环境配置指南
- 广播
- 用LinkedHashMap实现最近最少使用cache
- 删除系统多余引导项(msconfig中无引导项信息)
- Git入门简单介绍
- 树状数组学习
- android studio generate javadoc failed
- c语言:循环队列的实现
- Mysql To Charts(五)--routers文件
- 绘制斜线的方法