1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75
| package com.example.kevin.myapplication;
import android.app.Activity;
import android.app.PendingIntent;
import android.content.BroadcastReceiver;
import android.content.Context;
import android.content.Intent;
import android.content.IntentFilter;
import android.os.Bundle;
import android.telephony.SmsMessage;
import android.telephony.gsm.SmsManager;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
EditText no, msg;
Button btnSendSms;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
//register the receiver
final String port = "90";
final IntentFilter intentFilter = new IntentFilter(
"android.intent.action.DATA_SMS_RECEIVED");
intentFilter.addDataScheme("sms");
}
BroadcastReceiver receivedBroadcastReceiver = new BroadcastReceiver() {
@Override
public void onReceive(Context context, Intent intent) {
final Bundle bundle = intent.getExtras();
SmsMessage[] msgs = null;
if (null != bundle) {
final Object[] pdus = (Object[]) bundle.get("pdus");
msgs = new SmsMessage[pdus.length];
byte[] data = null;
//read data
for (int i = 0; i < msgs.length; i++) {
msgs[i] = SmsMessage.createFromPdu((byte[]) pdus[i]);
data = msgs[i].getUserData();
}
if (data != null) {
//use data
}
}
}
};
public void sendMessage(final byte[] message) {
//define the phone number
final short port = 90;
final String phoneNumber = "5146792345";
//intent broadcasted when the SMS is sent
final PendingIntent sendIntent = PendingIntent.getBroadcast(
this, 0, new Intent(), 0);
//intent broadcasted when the SMS is received
final PendingIntent delivery = PendingIntent.getBroadcast(
this, 0, new Intent(), 0);
//send data
final SmsManager smsManager = SmsManager.getDefault();
smsManager.sendDataMessage(phoneNumber, "test", port,
message, sendIntent, delivery);
}} |
Partager