Androidメール送信、メール保存データベース
12376 ワード
こんなに长い间忙しくて、卒业论文はついに完成して、ほほほ、今答弁するつもりです.そして、穏やかな中で私の最後の大学生活を過ごしましたハハ、、
今回はメールの送信についてご紹介しますが、ここでは一般的なテキストメールを発動したり、データメールを紹介したりします.
メールを送信するには、次の権限が必要です.
1.普通のテキストメッセージを送る
2.データメールの送信
getDisplayMessageBody()をgetUserData()に変更するだけです.
今回はメールの送信についてご紹介しますが、ここでは一般的なテキストメールを発動したり、データメールを紹介したりします.
メールを送信するには、次の権限が必要です.
1.普通のテキストメッセージを送る
SmsManager smsManager = SmsManager.getDefault(); //
PendingIntent sentIntent = PendingIntent.getBroadcast(this, 0,new Intent(), 0);
// ,
for (int count = 0; count < length; count++) {
Pattern pattern = Pattern.compile("^[0-9]+$");
Matcher matcher = pattern.matcher(phoneNumber);
if (!matcher.matches()) {
//
showDialog(DIALOG_NUMBER_ERROR);
return;
}
}
for (int i = 0; i < length; i++) {
if (smsContent.length() > 70) {
// 70
List msgs = smsManager.divideMessage(smsContent);
for (String msg : msgs) {
smsManager.sendTextMessage(contactsNumber[i], null,msg, sentIntent, null);
}
} else {
smsManager.sendTextMessage(contactsNumber[i], null,smsContent, sentIntent, null);
}
//
ContentValues values = new ContentValues();
values.put("address", contactsNumber[i]);
values.put("body", smsContent);
getContentResolver().insert(Uri.parse("content://sms/sent"), values);
}
Toast.makeText(this, R.string.sendSmsSuccess,Toast.LENGTH_SHORT).show();
2.データメールの送信
SmsManager smsManager = SmsManager.getDefault();
Intent sentIntent = new Intent("com.myself.action.SMS_SEND_RESULT");
PendingIntent dummySentEvent = PendingIntent.getBroadcast(this, 0, sentIntent, 0);
Intent deliveryIntent = new Intent("com.myself.action.SMS_DELIVERY_RESULT");
PendingIntent dummyDeliveryEvent = PendingIntent.getBroadcast(this, 0, deliveryIntent, 0);
int port=51234;
byte[] sms_data = myString.getBytes();
try {
smsManager.sendDataMessage(telNumStr, null, port, sms_data,dummySentEvent, dummyDeliveryEvent);
} catch (Exception e) {
Log.e("SmsSending", "SendException", e);
}
, BroadcastReceiver, onReceive ,
getDisplayMessageBody()をgetUserData()に変更するだけです.
AndroidManifest.xml , 。
:
<<>uses-permission android:name="android.permission.RECEIVE_SMS" /> <<>receiver android:name="MessageDemo"> <<>intent-filter> <<>action android:name="android.provider.Telephony.SMS_RECEIVED" /> intent-filter> receiver>
:
<<>uses-permission android:name="android.permission.RECEIVE_SMS" />
<<>receiver android:name="MessageDemo">
<<>intent-filter>
<<>action android:name="android.intent.action.DATA_SMS_RECEIVED" />
<<>data android:scheme="sms" />
<<>data android:host="localhost" />
<<>data android:port="51234" />
intent-filter>
receiver>