Android中 备份短信 还原短信
来源:互联网 发布:linux打包命令zip 编辑:程序博客网 时间:2024/04/29 19:53
备份短信
读取手机里的短信,备份成xml文件保存到SD卡上。
xml文件就只有一个button控件,就不再给出xml代码了。
import java.io.File;import java.io.FileNotFoundException;import java.io.FileOutputStream;import java.io.IOException;import org.xmlpull.v1.XmlSerializer;import android.app.Activity;import android.content.ContentResolver;import android.database.Cursor;import android.net.Uri;import android.os.Bundle;import android.os.Environment;import android.util.Xml;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.Toast;public class MainActivity extends Activity {private Button bt_readsms;/** * 短信备份的文件对象 */private File smsBackUpFile; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); bt_readsms = (Button) findViewById(R.id.bt_readsms); bt_readsms.setOnClickListener(new OnClickListener() {@Overridepublic void onClick(View v) {try {//创建一个存储备份短信的文件对象smsBackUpFile = new File(Environment.getExternalStorageDirectory(),"sms.xml");//创建一个xml文件的生成器。 XmlSerializer serializer = Xml.newSerializer(); //完成序列化器初始化操作。 FileOutputStream os = new FileOutputStream(smsBackUpFile); serializer.setOutput(os, "utf-8");//内容提供者。//获取到一个数据库的内容的解析者ContentResolver resolver = getContentResolver();//游标(结果集)Cursor cursor = resolver.query(Uri.parse("content://sms"),new String[]{"address","date","type","body"}, null, null,null);//生成xml文件的头serializer.startDocument("utf-8", true);serializer.startTag(null, "smss");while(cursor.moveToNext()){serializer.startTag(null, "sms");String address = cursor.getString(0);String date = cursor.getString(1);String type = cursor.getString(2);String body = cursor.getString(3);serializer.startTag(null, "address");System.out.println("短信地址:"+address);serializer.text(address);serializer.endTag(null, "address");serializer.startTag(null, "date");System.out.println("短信时间:"+date);serializer.text(date);serializer.endTag(null, "date");serializer.startTag(null, "body");System.out.println("短信内容:"+body);serializer.text(body);serializer.endTag(null, "body");serializer.startTag(null, "type");System.out.println("短信类型:"+type);serializer.text(type);serializer.endTag(null, "type");serializer.endTag(null, "sms");}cursor.close();serializer.endTag(null, "smss");serializer.endDocument();os.close();Toast.makeText(getApplicationContext(), "备份完成", 1).show();} catch (Exception e) {e.printStackTrace();}}}); } }
还原短信
通过代码程序控制向手机发送短信,10s后手机可以接收到短信
xml文件就只有一个button控件,就不再给出xml代码了。
import android.app.Activity;import android.content.ContentResolver;import android.content.ContentValues;import android.net.Uri;import android.os.Bundle;import android.view.View;public class MainActivity extends Activity {@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);}/** * 还原一条短信 * * @param view */public void click(View view) {new Thread(){public void run() {try {//等待10秒钟的时间Thread.sleep(10000);} catch (InterruptedException e) {e.printStackTrace();}// 获取到一个数据库的内容的解析者ContentResolver resolver = getContentResolver();ContentValues values = new ContentValues();values.put("address", "95533");//指定短信的发件人values.put("date", System.currentTimeMillis());values.put("body", "尊敬的客户,您的银行卡余额还有300万");values.put("type", "1");resolver.insert(Uri.parse("content://sms"), values);};}.start();}}
0 0
- Android中 备份短信 还原短信
- android短信备份与还原
- 短信备份与还原
- 短信备份与还原
- Android备份、还原通讯录和短信
- 短信的备份和还原
- Android短信还原
- android 还原短信
- android 还原短信
- android 还原短信
- Android之——短信的备份与还原
- Android 短信备份
- Android 短信备份
- Android短信的备份
- Android短信备份
- Android短信备份案例
- Android 备份短信
- Android 短信备份完整版
- 黑马程序员学习日记--javaApI(一)
- ubuntu14 循环输入密码
- data mining - 实用机器学习工具与技术 读书笔记 ( 四 )
- 运行yum系统提示Existing lock /var/run/yum.pid: another copy is running as pid
- 自己实现strcpy字符串复制函数
- Android中 备份短信 还原短信
- C-零散笔记
- C++ :多重继承的地址问题
- PHP开发环境的配置(Linux平台上安装Apache和PHP)
- 【打印技术01】获取及设置系统默认打印机
- C++ :虚函数-待补充
- 添加新的Linux内核系统调用
- maven中snapshot快照库和release发布库的区别和作用
- C++ :预定义-待补充