Android短信发送器

来源:互联网 发布:百度软件管理好不好 编辑:程序博客网 时间:2024/06/14 00:06

MainActivity:

package com.ruru.smsreceiver;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.telephony.SmsManager;import android.util.Log;import android.view.View;import android.widget.EditText;import android.widget.Toast;import java.util.ArrayList;public class MainActivity extends AppCompatActivity implements View.OnClickListener{    private static final String TAG = "info";    private EditText et_phone;    private EditText et_sms;    @Override    protected void onCreate(Bundle savedInstanceState) {        super.onCreate(savedInstanceState);        setContentView(R.layout.activity_main);        et_phone = (EditText) findViewById(R.id.et_phone);        et_sms = (EditText) findViewById(R.id.et_sms);        findViewById(R.id.btn_name).setOnClickListener(this);    }    @Override    public void onClick(View view) {        switch (view.getId()){            case R.id.btn_name:                sendSMS();                break;        }    }    //发送短信    private void sendSMS() {        String sms = et_sms.getText().toString();        String phone = et_phone.getText().toString();        SmsManager smsManager = SmsManager.getDefault();        smsManager.sendTextMessage(phone, null, sms, null, null);        //如果字数超过5,需拆分成多条短信发送//        if (sms.length() > 5) {//            Log.i(TAG, "sendSMS: "+"aaa");//            ArrayList<String> msgs = smsManager.divideMessage(sms);//            for (String msg : msgs) {//                smsManager.sendTextMessage(phone, null, msg, null, null);//            }//        } else {//            Log.i(TAG, "sendSMS: "+"bbb");//            smsManager.sendTextMessage(phone, null, sms, null, null);//        }        et_phone.setText("");        et_sms.setText("");        Toast.makeText(this, "短信发送完成", Toast.LENGTH_SHORT).show();    }}
activity_main:

<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"    xmlns:tools="http://schemas.android.com/tools"    android:id="@+id/activity_main"    android:layout_width="match_parent"    android:layout_height="match_parent"    android:orientation="vertical"    tools:context="com.ruru.smsreceiver.MainActivity"    android:background="@mipmap/aaa">    <EditText        android:id="@+id/et_phone"        android:layout_width="wrap_content"        android:layout_height="wrap_content"        android:hint="请输入手机号码"        android:background="@null"        android:layout_marginTop="30dip"        android:textColor="#49474D"/>    <View        android:layout_width="wrap_content"        android:layout_height="1dip"        android:background="#BFBDC2"        android:layout_marginTop="10dip">    </View>    <EditText        android:id="@+id/et_sms"        android:layout_width="match_parent"        android:layout_height="wrap_content"        android:hint="请输入短信内容"        android:background="@null"        android:layout_marginTop="20dip"        android:textColor="#49474D"/>    <View        android:layout_width="wrap_content"        android:layout_height="1dip"        android:background="#BFBDC2"        android:layout_marginTop="10dip">    </View>    <Button        android:id="@+id/btn_name"        android:layout_width="match_parent"        android:layout_height="50dip"        android:text="发送短信"        android:textColor="#49474D"        android:background="@mipmap/bbb"        android:layout_gravity="center"/></LinearLayout>
短信权限:

<uses-permission android:name="android.permission.SEND_SMS"/>    <uses-permission android:name="android.permission.RECEIVE_SMS"/>    <uses-permission android:name="android.permission.READ_SMS"/>
注册广播:

<receiver            android:name=".SMSBroadcastReceiver"            android:exported="true"            android:enabled="true">            <intent-filter android:priority="1000">                <action android:name="android.provider.Telephony.SMS_RECEIVED"/>            </intent-filter>        </receiver>
SMSBroadcastReceiver:

package com.ruru.smsreceiver;import android.content.BroadcastReceiver;import android.content.Context;import android.content.Intent;import android.os.Bundle;import android.telephony.SmsMessage;import android.util.Log;import android.widget.Toast;import java.text.SimpleDateFormat;import java.util.Date;/** * Created by 27c1 on 2016/12/28. */public class SMSBroadcastReceiver extends BroadcastReceiver {    private static final String TAG = "smsreceiver";    @Override    public void onReceive(Context context, Intent intent) {        Log.i(TAG, "onReceive: " + "收到广播");        SmsMessage msg = null;        Bundle bundle = intent.getExtras();        if (bundle != null) {            Object[] pdusObj = (Object[]) bundle.get("pdus");            for (Object p : pdusObj) {                msg = SmsMessage.createFromPdu((byte[]) p);                String msgTxt = msg.getMessageBody();//得到消息的内容                Date date = new Date(msg.getTimestampMillis());//时间                SimpleDateFormat format = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");                String receiveTime = format.format(date);                String senderNumber = msg.getOriginatingAddress();                if (msgTxt.equals("Testing!")) {                    Toast.makeText(context, "success!", Toast.LENGTH_LONG)                            .show();                    System.out.println("success!");                    return;                } else {                    Toast.makeText(context, msgTxt, Toast.LENGTH_LONG).show();                    System.out.println("发送人:" + senderNumber + "  短信内容:" + msgTxt + "接受时间:" + receiveTime);                    return;                }            }            return;        }    }}

我的想法:一不小心做了一个发送短信的管理器,好开心呦~但是这样自动发送短信短信会不会收费呢~







0 0
原创粉丝点击