提示接收到信息的程序
来源:互联网 发布:青年作家投稿软件 编辑:程序博客网 时间:2024/06/11 17:54
上篇文章写了发送信息,所以接下来写一篇小小文章关于接收到信息,并且弹出一个小小的toast(toast是可以自定义的,如果你觉得系统的不好看,你可以自己定义一个,但是我为了方便就使用系统提供的了)
1、首界面的xml:
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:layout_width="fill_parent"
android:layout_height="fill_parent"
android:orientation="vertical" >
<TextView
android:textSize="20dip"
android:layout_width="fill_parent"
android:layout_height="wrap_content"
android:text="@string/myString"
android:gravity="center_horizontal"
/>
<Button
android:id="@+id/ok"
android:layout_width="wrap_content"
android:layout_height="wrap_content"
android:textSize="20dip"
android:text="@string/ok"
android:layout_gravity="center_horizontal"
/>
</LinearLayout>
图示:
2、该界面的java代码:
package com.receive;
import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class ReceiveMSNActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button ok = (Button) findViewById(R.id.ok);
ok.setOnClickListener(new OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
System.exit(0); //退出该程序
}
});
}
}
4、开发一个广播类,用来监听收到信息的广播:
package com.receive;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.widget.Toast;
public class MyBroadcastReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
// TODO Auto-generated method stub
if(intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")){
Bundle bundle = intent.getExtras();
if(bundle != null){ //当数据不为空时
Object[] myObject = (Object[]) bundle.get("pdus"); // 分析数据
SmsMessage[] messages = new SmsMessage[myObject.length];
for(int i=0; i<myObject.length; i++){
messages[i] = SmsMessage.createFromPdu((byte[]) myObject[i]);
}
StringBuilder sb = new StringBuilder();
for(SmsMessage tempSmsMessage : messages){ //循环信息数组
sb.append("收到来自:\n");
sb.append(tempSmsMessage.getDisplayOriginatingAddress() + "\n");
sb.append("内容为:\n");
sb.append(tempSmsMessage.getDisplayMessageBody());
}
Toast.makeText(context, sb.toString(), Toast.LENGTH_LONG).show();
}
}
}
}
5、效果如下图所示:
a、在5556模拟器上发送信息
b、在5554模拟器上接收信息:
6、该简单程序就到这先,如以后又改进再补充上去。
- 提示接收到信息的程序
- 对于接收到的GPS信息详解
- 程序从shell接收到的参数
- java程序如何接收手机回复回来的信息
- vc++环境下的 udp 接收信息程序
- [疯狂Java]UDP:接收发送数据报、获取接收到的数据报的相关信息
- API两个程序间信息的传送与接收,一方发送另一方自动接收.
- 接收到推送消息时,提示声音
- 鼠标点到文本框时的提示信息
- 如何去掉某些程序的广告提示信息
- linux下基于udp的简单的接收与发送程序,开发板与本机接收与发送信息
- linux下基于tcp的简单的接收与发送程序,开发板与本机接收与发送信息
- GPS定位信息的接收
- GPS定位信息的接收
- GPS定位信息的接收
- 手机wap上网从wap网关接收到的各项信息的意义
- iOS8中,程序接收不到应用调用系统服务提示的解决方案
- 在server程序中,将接收到的字符串保存到指定文件
- HOW TO Add Secure RTP to Asterisk 1.8
- CAP理论和ACID模型
- Windows服务(Windows Service,system权限)程序显示界面与用户交互(xp,win7通用)
- java 线程同步 synchronized
- c++多线程学习7信号
- 提示接收到信息的程序
- Android Jamendo源码分析之 网络连接模块
- c++多线程8event
- HTML5学习(3) SVG的学习及应用六 路径(复杂图形的实现)
- 自定义函数2
- [Mitchell 机器学习读书笔记]——决策树学习
- 时间类型函数的处理
- iphone app 图标规则
- <%#Eval() %>与if的关系