【Android】短信应用——短信发送

前几天写了一个关于实时获取短信的文章,后来想到以前写的一个有发短信功能的工程,想到其中的好处让我直流口水,今天就说说有关如何通过代码实现短信发送。

 

 

当时写完后测试,发现最大的好处就是短信发出去后,在发件箱中没有“迹象”;也就是说,只要用户咨询通信服务商,他是不会知道我们偷偷做了些什么……

(只是涉及权限了,于是乎,豌豆荚先生就会毫不留情的把你的程序牵扯到的权限,毫无保留的告诉用户……唉!)

 PS:后来又写了一篇章关于发送短信存入发件箱的文章

  文章链接:http://blog.csdn.net/etzmico/article/details/6916873

  资源链接:http://download.csdn.net/detail/etzmico/3732601


 下面来看看代码吧。

 先展示下布局。

<?xml version="1.0" encoding="utf-8"?>
<AbsoluteLayout android:id="@+id/widget40"
	android:layout_width="fill_parent" android:layout_height="fill_parent"
	xmlns:android="http://schemas.android.com/apk/res/android">
	<TextView android:id="@+id/tel_num_send" android:layout_width="wrap_content"
		android:layout_height="25px" android:text="Tel Number:"
		android:layout_x="10px" android:layout_y="22px">
	</TextView>
	<EditText android:id="@+id/telNumText_send"
		android:layout_width="197px" android:layout_height="35px"
		android:text="" android:textSize="18sp" android:layout_x="90px"
		android:layout_y="12px">
	</EditText>
	<EditText android:id="@+id/message_copntent_send"
		android:layout_width="319px" android:layout_height="86px"
		android:text="" android:textSize="18sp" android:layout_x="0px"
		android:layout_y="112px">
	</EditText>
	<Button android:id="@+id/send_button_send" android:layout_width="wrap_content"
		android:layout_height="wrap_content" android:text="Send"
		android:layout_x="120px" android:layout_y="212px">
	</Button>
	<TextView android:id="@+id/message_content_text_send"
		android:layout_width="wrap_content" android:layout_height="wrap_content"
		android:text="Input Message" android:layout_x="10px" android:layout_y="82px">
	</TextView>
</AbsoluteLayout>

  

我大概画了一个短信发送页面,比较简陋,各位一笑而过即可……其中主要包含一个发送号码编辑窗口,一个发送内容编辑窗口以及一个发送按钮。

布局预览



接下来是功能实现部分代码

// 短信发送
					SmsManager smsMgr = SmsManager.getDefault();
					Intent i = new Intent("cn.etzmico.smssending");
					PendingIntent dummyEvent = PendingIntent.getBroadcast(
							SMSSending.this, 0, i, 0);
					try {
						smsMgr.sendTextMessage(telNumStr, null, messageStr,
								dummyEvent, dummyEvent);
					} catch (Exception e) {
						Log.e("SmsSending", "SendException", e);
					}


最后别忘了加权限

Manifest.xml

	<uses-permission android:name="android.permission.RECEIVE_SMS" />
	<uses-permission android:name="android.permission.SEND_SMS" />


看看效果吧。

我用的是两台虚拟机掩饰的。

先说明下,有的初学者可能一直在迷惑,虚拟机窗口左上角的“代号”是什么。

我在这里解释下,那个其实就相当于虚拟机的号码,你的手机装上SIM卡啊UIM卡啊就可以拨打电话了,对吧?虚拟机也是,不过它不能打电话,但是发短信还是可以的。


我们来启动两步虚拟机,分别运行,目的是为了双向演示。


先让5554给5556发条信息。



分别输入短信接受号码和短信内容,最后点击发送按钮。

注意右边那台虚拟机的最上面,5556虚拟机已经接到短信了,不过5556那边显示的发送人的号码只是系统随虚拟机一起Creat出来的。


下面我们试试5556给5554发。


也成功了,很明显,发送人的号码和刚才不一样,也就是说,一台模拟器一个绑定了一个模拟号码。



关于短信发送的内容……OVER~


工程资源:http://download.csdn.net/detail/etzmico/3715837

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值