android短信到邮箱,Android_andoid打包短信发送到gmail邮箱实现代码,andriod短信整合备份发送到gmail - phpStudy...
andoid打包短信发送到gmail邮箱实现代码
andriod短信整合备份发送到gmail邮箱,需要在andoid手机配置好gmail邮箱
github代码 https://github.com/zhwj184/smsbackup
查看效果:
可以把几天的短信打包发送到自己的gmail邮箱,可以定时备份下短信。
主要代码:
package org.smsautobackup;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.app.Activity;
import android.app.ActivityManager;
import android.content.ContentResolver;
import android.content.Intent;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.view.View;
import android.widget.Button;
import android.widget.EditText;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
Date curDate = new Date(System.currentTimeMillis());// 获取当前时间
Date lastDate = new Date(curDate.getYear(), curDate.getMonth(),
curDate.getDate() - 1);
((EditText) findViewById(R.id.endDate)).setText(formatter
.format(curDate));
((EditText) findViewById(R.id.startDate)).setText(formatter
.format(lastDate));
Button btn = (Button) findViewById(R.id.button1);
btn.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
sendSms(getSmsInPhone());
}
});
// Button btn1 = (Button) findViewById(R.id.button2);
// btn1.setOnClickListener(new View.OnClickListener() {
// public void onClick(View v) {
// EditText txtContent = (EditText) MainActivity.this.findViewById(R.id.editText1);
// AutoBackupService.receiver = txtContent.getText().toString();
// startService(new Intent(MainActivity.this,
// AutoBackupService.class));
// }
// });
}
private String getSmsInPhone() {
StringBuilder smsBuilder = new StringBuilder();
EditText startDatePicker = (EditText) findViewById(R.id.startDate);
EditText endDatePicker = (EditText) findViewById(R.id.endDate);
DateFormat df = new SimpleDateFormat("yyyy-MM-dd");
try {
Date startDate = df.parse(startDatePicker.getText().toString());
Date endDate = df.parse(endDatePicker.getText().toString());
ContentResolver cr = getContentResolver();
return SmsUtil.getSmsInPhone(startDate, endDate, cr);
}catch(Exception e){
Log.d("Exception in getSmsInPhone", e.getMessage());
}
return "";
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
protected void onDestroy() {
super.onDestroy();
ActivityManager activityMgr= (ActivityManager) this.getSystemService(ACTIVITY_SERVICE);
activityMgr.restartPackage(getPackageName());
}
private void sendSms(String content) {
Intent intent = new Intent(android.content.Intent.ACTION_SEND);
intent.setType("plain/text");
// intent.setType("message/rfc822") ; // 真机上使用这行
EditText txtContent = (EditText) findViewById(R.id.editText1);
String[] strEmailReciver = new String[] { txtContent.getText()
.toString() };
intent.putExtra(android.content.Intent.EXTRA_EMAIL, strEmailReciver); // 设置收件人
EditText startDatePicker = (EditText) findViewById(R.id.startDate);
EditText endDatePicker = (EditText) findViewById(R.id.endDate);
intent.putExtra(Intent.EXTRA_SUBJECT, "["
+ startDatePicker.getText().toString() + "至"
+ endDatePicker.getText().toString() + "]短信备份");
intent.putExtra(android.content.Intent.EXTRA_TEXT, content); // 设置内容
startActivity(Intent.createChooser(intent,
"send SMS to your mail success"));
}
}
package org.smsautobackup;
import java.text.DateFormat;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.content.ContentResolver;
import android.content.Intent;
import android.database.Cursor;
import android.database.sqlite.SQLiteException;
import android.net.Uri;
import android.util.Log;
import android.widget.EditText;
public class SmsUtil {
// android获取短信所有内容
public static String getSmsInPhone(Date startDate,Date endDate,ContentResolver cr) {
final String SMS_URI_ALL = "content://sms/";
final String SMS_URI_INBOX = "content://sms/inbox";
final String SMS_URI_SEND = "content://sms/sent";
final String SMS_URI_DRAFT = "content://sms/draft";
StringBuilder smsBuilder = new StringBuilder();
try {
String[] projection = new String[] { "_id", "address", "person",
"body", "date", "type" };
Uri uri = Uri.parse(SMS_URI_ALL);
Cursor cur = cr.query(uri, projection, null, null, "date desc");
if (cur.moveToFirst()) {
String name;
String phoneNumber;
String smsbody;
String date;
String type;
int nameColumn = cur.getColumnIndex("person");
int phoneNumberColumn = cur.getColumnIndex("address");
int smsbodyColumn = cur.getColumnIndex("body");
int dateColumn = cur.getColumnIndex("date");
int typeColumn = cur.getColumnIndex("type");
do {
name = cur.getString(nameColumn);
phoneNumber = cur.getString(phoneNumberColumn);
smsbody = cur.getString(smsbodyColumn);
SimpleDateFormat dateFormat = new SimpleDateFormat(
"yyyy-MM-dd hh:mm:ss");
Date d = new Date(Long.parseLong(cur.getString(dateColumn)));
if (d.before(startDate) || d.after(endDate)) {
continue;
}
date = dateFormat.format(d);
int typeId = cur.getInt(typeColumn);
if (typeId == 1) {
type = "接收";
} else if (typeId == 2) {
type = "发送";
} else {
type = "";
}
smsBuilder.append("[");
smsBuilder.append(name==null?"":name + ",");
smsBuilder.append(phoneNumber + ",");
smsBuilder.append(smsbody + ",");
smsBuilder.append(date + ",");
smsBuilder.append(type);
smsBuilder.append("]\n");
if (smsbody == null)
smsbody = "";
} while (cur.moveToNext());
} else {
smsBuilder.append("no result!");
}
smsBuilder.append("getSmsInPhone has executed!");
} catch (SQLiteException ex) {
Log.d("SQLiteException in getSmsInPhone", ex.getMessage());
}
return smsBuilder.toString();
}
}
其他配置请到github上看。相关阅读:
Android TableLayout数据列表的回显清空实现思路及代码
iOS应用中使用Auto Layout实现自定义cell及拖动回弹
Android中调用系统的文件浏览器及自制简单的文件浏览器
JS模拟bootstrap下拉菜单效果实例
Android开发中使用Volley库发送HTTP请求的实例教程
CSS怎么将背景图左移/上移/右移10px
微软招聘启事引瞩目:Windows或将融合安卓应用
解析Java线程编程中的线程安全与synchronized的使用
javascript 构造函数方式定义对象
升级Win10后如何重新安装系统?几点流程和注意事项介绍
MSSQL分页存储过程完整示例(支持多表分页存储)
win10手机预览版10080怎么快速切换输入键盘
jQuery插件expander实现图片翻转特效
iOS开发之UIKeyboardTypeNumberPad数字键盘自定义按键
android短信到邮箱,Android_andoid打包短信发送到gmail邮箱实现代码,andriod短信整合备份发送到gmail - phpStudy...相关推荐
- andoid 打包短信发送到gmail邮箱
andriod短信整合备份发送到gmail邮箱,需要在andoid手机配置好gmail邮箱 github代码 https://github.com/zhwj184/smsbackup 查看效果: 可以 ...
- Spring-Boot整合微信登陆、微信支付、邮箱发送、支付宝支付和阿里云短信
Spring-Boot整合 1. 发送邮件 2. 支付宝支付 3. 阿里云短信 4. 微信登陆 5. 微信支付 6. Swargger2 前后端API接口信息文档 7. ehcache缓存缓存 8. ...
- iPhone上将短信内容发送到指定邮箱的方法
iPhone上将短信内容发送到指定邮箱的方法 迄今为止,移动应用安全基本聚焦在以下几个方面,一是移动设备管理BYOD(bring your own device),二是移动恶意软件分析,三是移动设备用 ...
- Android kotlin 代码设置短信指定SIM卡发送
Android kotlin 代码设置短信指定SIM卡发送 前言 逻辑 权限 获取全部手机卡信息 修改短信使用的卡 发送短信 完事 前言 在双卡双待,甚至多卡多待的Android设备中,实现调用自己想 ...
- java代码进行短信接收_自动化测试-自动获取手机短信验证码
最近在做生产环境自动化测试,碰到一个难题就是短信验证码的获取,生产环境短信验证码是真实的,不能采用测试环境将短信验证码写成固定的方法解决,我的思路是:做一个apk小程序,将手机上的短信验证码实时读取出 ...
- 短视频矩阵源码系统打包.源码
Masayl是一款基于区块链技术的去中心化应用程序开发平台,可帮助开发者快速.便捷地创建去中心化应用程序.Masayl拥有丰富的API和SDK,为开发者们提供了支持.此外,Masayl还采用了高效的智 ...
- 小伙C++代码实现短信表白,软萌甜炸,送给你最喜欢的人!你值得拥有
**swustoj短信(0332):**某日,小Y同学迷恋上一女生,于是决定向该女生表白.可是,悲剧往往发生在帅哥身上.在小Y同学表白后,该女生发来一短信,该短信由一行字符串组成.并告知小Y同学,如若 ...
- 我们公司的短信接口被刷了,瞬间损失两万,怎么解决?(短信接口被盗刷系列1)
1 我们公司的短信接口被刷了,瞬间损失两万 前两天的中午像往常一样热,太阳不知疲倦的在天空燃烧,热跑了云彩和鸟儿,马上就要点燃空气和我的脑神经.为我和电脑降温的,是我简陋的书桌上的小电扇,没有它的话, ...
- 基于 短信认证 通过 华为、H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证
基于 短信认证 通过 华为.H3C 结合 OpenPortal认证计费系统 实现 网络准入 短信验证码 访客实名认证 在企业园区网络中,需要结合短信认证实现网络安全准入,访客短信验证码实名认证.方案中 ...
最新文章
- python中文版-Python中文版
- 存储过程双层循环_mysql嵌套存储过程实现循环嵌套
- java定时线程池_java 定时器线程池(ScheduledThreadPoolExecutor)的实现
- 工作10年厌倦写代码_厌倦了数据质量讨论?
- python将excel导入mysql_Python将Excel数据自动导入MySQL,python,实现,excel,到,中
- 虚拟化技术--桌面虚拟化(VDI)
- sklearn自定义svm核函数(外部和内部定义)
- powerbi python词云图_使用Power BI制作可爱的词云图
- 正确使用 realloc()
- 2011—2018年软考中级数据库系统工程师历年真题
- 清华大学范玉顺互联网与大数据_互联网+时代的互联网思维与大数据思维
- TarBase:有实验数据支持的miRNA靶基因数据库
- 安规认证的测试项目(工程师必须知道的知识)
- 基于Matlab对三自由度并联机构的正逆解
- python的算术表达式_python算术表达式
- 大数据带来新机遇:如何利用大数据技术优化跨境电商运营?
- 【Oracle】基础语句
- 双臂二指魔方机器人的制作(一)--总体设计
- android 动态扫码框,Android 一行代码接入扫码功能 (CameraX + zxing)持续更新....
- word文档找不到smartart_word2003SmartArt在哪里