打开APP
userphoto
未登录

开通VIP,畅享免费电子书等14项超值服

开通VIP
Android常用功能之短信备份
用ContentResolver来完成此功能,,备份短信(初步功能是每次全部都备份到xml文件中,不管xml文件是否已存在备份,可以备份短信的id到里面去。这样取出短信id一一比较,不是j旧的备份到里面去,对xml进行追写)
private static int index;
private static FileOutputStream fs;

public static void smsBackup(Context context, String path, ProgressDialog pd) {
index=0;
File file = new File(path);
Cursor cursor = context.getContentResolver().query(Uri.parse("content://sms"),
new String[]{"address", "date", "type", "body"}, null, null, null);
pd.setMax(cursor.getCount());
try {
fs = new FileOutputStream(file);

XmlSerializer serializer = Xml.newSerializer();
serializer.setOutput(fs, "utf-8");
serializer.startDocument("utf-8", true);
serializer.startTag(null,"smss");
while(cursor.moveToNext())
{
serializer.startTag(null,"sms");

serializer.startTag(null,"address");
serializer.text(cursor.getString(0));
serializer.endTag(null,"address");

serializer.startTag(null,"date");
serializer.text(cursor.getString(1));
serializer.endTag(null,"date");

serializer.startTag(null,"type");
serializer.text(cursor.getString(2));
serializer.endTag(null,"type");

serializer.startTag(null,"body");
serializer.text(cursor.getString(3));
serializer.endTag(null,"body");

serializer.endTag(null,"sms");
//设置进度条框
index++;
pd.setProgress(index);
}
serializer.endTag(null,"smss");
serializer.endDocument();
} catch (Exception e) {
e.printStackTrace();
}
finally {
if(cursor!=null&&fs!=null) {
cursor.close();
try {
fs.close();
} catch (IOException e) {
e.printStackTrace();
}
}
本站仅提供存储服务,所有内容均由用户发布,如发现有害或侵权内容,请点击举报
打开APP,阅读全文并永久保存 查看更多类似文章
猜你喜欢
类似文章
Android使用Pull解析器解析XML文件
使用Pull方法生成一个XML?并解析
Android读写XML(下)——创建XML文档
解析XML获取数据与生成XML文件
XML解析之
7.2.1 Android XML数据解析
更多类似文章 >>
生活服务
热点新闻
分享 收藏 导长图 关注 下载文章
绑定账号成功
后续可登录账号畅享VIP特权!
如果VIP功能使用有故障,
可点击这里联系客服!

联系客服