- 浏览: 246430 次
- 性别:
- 来自: 深圳
文章分类
最新评论
-
江恂泽:
楼主 这家伙会把data 拆分开来 转换成day year形 ...
JsonUtil -
mdsp25xhm:
为何没有列表查询功能?
myBatis DAO封装
public class DisposeBCReceiver extends BroadcastReceiver
{
public static final String SMS_ACTION = "android.provider.Telephony.SMS_RECEIVED";
@Override
public void onReceive(Context context, Intent intent)
{
Bundle bundle = intent.getExtras();
StringBuffer sb = new StringBuffer();
//短信接收
if (intent.getAction().equals(SMS_ACTION))
{
if (null != bundle)
{
Set<String> keys = bundle.keySet();
for (String key : keys)
{
Log.v("---------------", key);
}
}
/*
* 获得收到的短信数据
*/
Object[] objArr = (Object[]) bundle.get("pdus");
/*
* 定义封装短信内容SMSMessage对象数组
*/
SmsMessage[] message = new SmsMessage[objArr.length];
for (int i = 0; i < objArr.length; i++)
{
message[i] = SmsMessage.createFromPdu((byte[]) objArr[i]);
sb.append("手机号码是:");
sb.append(message[i].getOriginatingAddress());
sb.append("\n");
sb.append("短信内容是:");
sb.append(message[i].getDisplayMessageBody());
}
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
//屏幕状态接收
else if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF))
{
sb.append("屏幕休眠状态...");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON))
{
sb.append("屏幕唤醒状态...");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
//电池用量接收
else if (intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED))
{
sb.append("电池用量:");
int level = intent.getIntExtra("level", 0);
int scale = intent.getIntExtra("scale", 100);
sb.append((level * 100)/scale);
sb.append("%");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
}
}
程序处理:
receiver = new DisposeBCReceiver();
IntentFilter filter1 = new IntentFilter("android.provider.telephony.SMS_RECEIVED");
registerReceiver(receiver, filter1);
IntentFilter filter4 = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter4);
Toast.makeText(basicContext, "短信消息接收器注册成功!", Toast.LENGTH_LONG);
AndroidManifest.xml中权限处理
<!-- 短信接收权限添加 -->
<uses-permission android:name="android.permission.RECEIVE_SMS" />
{
public static final String SMS_ACTION = "android.provider.Telephony.SMS_RECEIVED";
@Override
public void onReceive(Context context, Intent intent)
{
Bundle bundle = intent.getExtras();
StringBuffer sb = new StringBuffer();
//短信接收
if (intent.getAction().equals(SMS_ACTION))
{
if (null != bundle)
{
Set<String> keys = bundle.keySet();
for (String key : keys)
{
Log.v("---------------", key);
}
}
/*
* 获得收到的短信数据
*/
Object[] objArr = (Object[]) bundle.get("pdus");
/*
* 定义封装短信内容SMSMessage对象数组
*/
SmsMessage[] message = new SmsMessage[objArr.length];
for (int i = 0; i < objArr.length; i++)
{
message[i] = SmsMessage.createFromPdu((byte[]) objArr[i]);
sb.append("手机号码是:");
sb.append(message[i].getOriginatingAddress());
sb.append("\n");
sb.append("短信内容是:");
sb.append(message[i].getDisplayMessageBody());
}
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
//屏幕状态接收
else if (intent.getAction().equals(Intent.ACTION_SCREEN_OFF))
{
sb.append("屏幕休眠状态...");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
else if (intent.getAction().equals(Intent.ACTION_SCREEN_ON))
{
sb.append("屏幕唤醒状态...");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
//电池用量接收
else if (intent.getAction().equals(Intent.ACTION_BATTERY_CHANGED))
{
sb.append("电池用量:");
int level = intent.getIntExtra("level", 0);
int scale = intent.getIntExtra("scale", 100);
sb.append((level * 100)/scale);
sb.append("%");
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG);
}
}
}
程序处理:
receiver = new DisposeBCReceiver();
IntentFilter filter1 = new IntentFilter("android.provider.telephony.SMS_RECEIVED");
registerReceiver(receiver, filter1);
IntentFilter filter4 = new IntentFilter(Intent.ACTION_BATTERY_CHANGED);
registerReceiver(receiver, filter4);
Toast.makeText(basicContext, "短信消息接收器注册成功!", Toast.LENGTH_LONG);
AndroidManifest.xml中权限处理
<!-- 短信接收权限添加 -->
<uses-permission android:name="android.permission.RECEIVE_SMS" />
发表评论
-
IMF简介-2
2013-07-09 17:56 896InputManager 由UI控件(View,TextVie ... -
IMF简介-1
2013-07-09 17:51 818Input Method Framework 目录 ... -
输入法 总结-3
2013-07-08 15:02 852public class MainActivity exten ... -
输入法 总结-4
2013-07-04 17:29 938public class InputActivity exte ... -
输入法 总结-3
2013-07-04 17:28 861public class InputApplication e ... -
输入法 总结-2
2013-07-04 17:23 777openwnn_pref_ja.xml <?xml v ... -
输入法 总结-2
2013-07-04 17:21 13openwnn_pref_ja.xml <?xml v ... -
输入法 总结-1
2013-07-04 17:19 798<application android ... -
Android快捷键
2013-03-15 14:39 829Home键(小房子键) 在 ... -
如何通过wifi调试android程序
2013-02-27 15:48 770android手机居然可以通过wifi进行程序的调试,太好了, ... -
Please ensure that adb is correctly located at 'D:\android-sdk-windows\platform-
2013-02-27 14:27 1659adt 出现ADB server didn't ACK, fa ... -
Android AsyncTask
2013-02-19 09:35 1122AsyncTask是抽象类,子类 ... -
Android ViewPager 左右滑动2-1
2013-01-29 10:12 1496public class PagerActivity exte ... -
Android ViewPager 左右滑动-3
2013-01-29 10:10 1102<?xml version="1.0" ... -
Android ViewPager 左右滑动-2
2013-01-29 10:10 1470/*** * 选中效果 */ pu ... -
Android ViewPager 左右滑动-1
2013-01-29 10:09 1384Store extends ActivityGroup imp ... -
Android 下载
2013-01-27 00:59 913下载apk程序代码 protected File downLo ... -
Android SDCard操作-3
2013-01-26 18:31 885public static Intent getVid ... -
Android SDCard操作-2
2013-01-26 18:30 1113/** * 判断该应用在手机中的安装情况 ... -
Android SDCard操作-1
2013-01-26 18:27 1050private static int INSTALLED = ...
相关推荐
BroadcastReceiver,中文名为广播接收器,是Android系统中四大组件之一,用于接收系统或应用程序发布的广播事件。在Android系统中,任何组件或者服务都可以发送广播,而BroadcastReceiver则可以监听并响应这些广播,...
在Android系统中,BroadcastReceiver(广播接收器)是Android四大组件之一,用于监听系统或应用广播事件,并在接收到特定广播时执行相应的处理逻辑。广播接收器可以接收各种类型的广播,例如系统电量变化、网络状态...
3. **创建意图过滤器(IntentFilter)**:定义BroadcastReceiver可以接收的Intent类型,通过addAction()添加动作,addDataScheme()添加数据协议,addCategory()添加类别等。 4. **发送广播**:使用Context的...
在Android开发中,广播接收者(BroadcastReceiver)是Android四大组件之一,它是系统用来传递全局消息的一种机制。当你创建一个BroadcastReceiver,你可以监听系统或应用发送的广播,并在接收到广播时执行相应的处理...
BroadcastReceiver在Android系统中充当一个监听器,当接收到匹配的Intent广播时,会调用其定义的onReceive()方法。BroadcastReceiver有两种注册方式:静态注册和动态注册。 1. 静态注册:在AndroidManifest.xml文件...
在Android开发中,服务(Service)、广播接收器(BroadcastReceiver)和通知(Notification)是三个核心组件,它们各自承担着不同的职责,同时在特定场景下相互配合,为应用程序提供后台运行、事件监听和用户交互的...
广播接收器(BroadcastReceiver)是一种用来过滤、接收并响应广播的组件,通过广播接收器可以监听系统中的广播消息,在不同组件之间进行通信。例如,在Android系统中内置了很多系统级别的广播,如手机开机完成后会...
在Android系统中,广播接收器(BroadcastReceiver)是一种非常重要的组件,它允许应用程序接收并响应系统或应用广播的意图(Intent)。"Android广播onReceiver回调更新ui"这个主题主要涉及如何在广播接收器中处理...
例如,可以使用observeOn()方法指定在哪个调度器上处理事件,使用subscribeOn()方法指定在哪里创建Observable,以及使用subscribeWith()方法使用自定义的 DisposableObserver 来处理订阅过程中的异常。 总之,通过...
总结来说,"Android BroadcastReceiver Demo"旨在帮助开发者理解BroadcastReceiver的使用,通过创建`BearBroadcastReceiver`类,学习如何接收和处理广播,以及如何在不同情况下注册BroadcastReceiver。熟悉这些知识...
在Android系统中,BroadcastReceiver是实现跨进程通信和全局事件通知的重要组件。它允许应用程序接收并响应系统或自定义广播事件,即使应用没有在运行。本文将深入探讨`BroadcastReceiver`的源码,帮助你理解其工作...
`Context.sendBroadcast()`、`Context.sendOrderedBroadcast()` 或 `Context.send StickyBroadcast()`)时,系统会检查所有已注册的 `BroadcastReceiver`,根据它们的 Intent 过滤器决定哪些应该接收这个广播。...
在Android系统中,广播接收器(BroadcastReceiver)是一种非常重要的组件,它允许应用程序在接收到系统或应用广播消息时执行相应的操作。这个案例主要探讨如何创建、注册和使用BroadcastReceiver来处理Android系统的...
在Android系统中,BroadcastReceiver(广播接收者)是四大组件之一,它负责监听并响应系统或应用程序发布的广播意图(Intent)。这个"android demo,BroadcastReceiver源代码的实现"是一个示例,旨在帮助开发者理解...
在Android系统中,广播接收器(Broadcast Receiver)是四大组件之一,它负责监听并响应系统或应用程序发布的广播意图(Intent)。本资源提供的“android 广播接收完整源码”应该包含了一个实现广播接收功能的完整...
在Android平台上,短信接收器(SMS Receiver)是Android广播接收者(BroadcastReceiver)的一个实例,用于监听并处理系统发出的短信到达的广播事件。本文将详细介绍如何使用Android Eclipse开发环境来创建一个短信...
在Android移动应用开发中,BroadcastReceiver扮演着至关重要的角色,它是Android系统中一种核心的组件,用于接收并响应系统或应用程序发出的广播消息。BroadcastReceiver允许应用程序在后台运行,即使用户并未直接与...
在本文中,我们将深入探讨如何使用Delphi这个强大的RAD(快速应用开发)工具来处理Android系统的广播事件,特别是静态注册广播接收器的方式。 首先,我们要了解广播接收器(BroadcastReceiver)。在Delphi中,广播...
BroadcastReceiver(广播接收器)是Android四大组件之一,用于监听并接收系统或应用发布的广播事件。下面将详细阐述Android广播机制以及如何注册BroadcastReceiver。 1. Android广播机制: - 广播分为有序广播和...
在Android应用开发中,BroadcastReceiver(广播接收器)是一个关键组件,它允许应用程序接收和响应系统或自定义广播事件。Android Studio是Google官方推出的集成开发环境,专门用于Android应用开发。本教程将深入...