Android----内容提供者
来源:互联网 发布:论坛源码下载 编辑:程序博客网 时间:2024/06/08 03:50
Android—–内容管理者
>
代码块
ContentReader.javapackage www.wulian.com.contentprovider;import android.content.ContentResolver;import android.database.Cursor;import android.net.Uri;import android.support.v7.app.AppCompatActivity;import android.os.Bundle;import android.util.Log;import android.view.View;import android.widget.Toast;import java.util.ArrayList;import java.util.List;public class ContentReader extends AppCompatActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } public void btn_read(View view){ Uri uri=Uri.parse("content://sms/"); ContentResolver resolver=getContentResolver(); Cursor cursor=resolver.query(uri,new String[]{"address","date","type","body"},null,null,null); List<SmsInfo> smsInfos=new ArrayList<SmsInfo>(); Log.d("_hello","_love"); Toast.makeText(this,"短信有"+cursor.getCount()+"条",Toast.LENGTH_SHORT).show(); while (cursor.moveToNext()){ String address=cursor.getString(0); long date=cursor.getLong(1); int type=cursor.getInt(2); String body=cursor.getString(3); SmsInfo smsInfo=new SmsInfo(date,type,body,address); smsInfos.add(smsInfo); Log.d("_hello","_hi"); } cursor.close(); //备份 // SmsUtils.backUpSms(smsInfoList,this); }}''ContentReader.xml<?xml version="1.0" encoding="utf-8"?><RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" android:paddingLeft="@dimen/activity_horizontal_margin" android:paddingRight="@dimen/activity_horizontal_margin" android:paddingTop="@dimen/activity_vertical_margin" android:paddingBottom="@dimen/activity_vertical_margin" tools:context=".ContentReader"> <Button android:layout_width="wrap_content" android:layout_height="wrap_content" android:text="读取" android:onClick="btn_read"/></RelativeLayout>SmsUtils.class需要备份的时候要加,还没测试过名字什么的是否正确package com.example.a01.tigongzhe.utils;import android.content.Context;import android.os.Environment;import android.util.Xml;import android.widget.Toast;import com.example.a01.tigongzhe.adapters.SmsInfo;import org.xmlpull.v1.XmlSerializer;import java.io.File;import java.io.FileOutputStream;import java.io.IOException;import java.util.List;/** * Created by 01 on 2017/6/18. */public class SmsUtils { public static void backUpSms(List<SmsInfo> smsInfoList,Context context) throws IOException { //创建序列化器serializer XmlSerializer serializer= Xml.newSerializer(); //获取sd卡根目录的路径 File file=new File(Environment.getExternalStorageDirectory(),"sms.xml"); //获得输出流 FileOutputStream os=new FileOutputStream(file); //设置编码方式 serializer.setOutput(os,"utf-8"); //写入xml文件标识 serializer.startDocument("utf-8",true); serializer.startTag(null,"smss"); for(SmsInfo info:smsInfoList){ serializer.startTag(null,"sms"); serializer.attribute(null,"id",info.getId()+""); serializer.startTag(null,"body"); serializer.text(info.getBody()); serializer.endTag(null,"body"); serializer.startTag(null,"type"); serializer.text(info.getType()+""); serializer.endTag(null,"type"); serializer.startTag(null,"address"); serializer.text(info.getAddress()); serializer.endTag(null,"address"); serializer.startTag(null,"date"); serializer.text(info.getDate()+""); serializer.endTag(null,"date"); serializer.endTag(null,"sms"); } serializer.endTag(null,"smss"); serializer.endDocument(); Toast.makeText(context,"cg",Toast.LENGTH_LONG).show(); }}注册<uses-permission android:name="android.permission.READ_SMS"/><uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/><uses-permission android:name="android.permission.SEND_SMS"/>SmsInfo.classpackage www.wulian.com.contentprovider;/** * Created by Administrator on 2017/3/13. */public class SmsInfo { private long date; public int getType() { return type; } public void setType(int type) { this.type = type; } public long getDate() { return date; } public void setDate(long date) { this.date = date; } public String getBody() { return body; } public void setBody(String body) { this.body = body; } public String getAddress() { return address; } public void setAddress(String address) { this.address = address; } public int getId() { return id; } public void setId(int id) { this.id = id; } public int type; public String body; public String address; public int id;//构造方法 public SmsInfo(long date,int type,String body,String address){ this.date=date; this.type=type; this.body=body; this.address=address; }}
阅读全文
0 0
- android基础--内容提供者
- Android ContentProvider(内容提供者)
- Android 内容提供者
- android内容提供者ContentProvider
- android---内容提供者
- Android--- ContentProvider(内容提供者)
- Android基础--内容提供者
- android下内容提供者
- android的内容提供者
- Android 内容提供者ContentProvider
- Android基础知识:内容提供者
- android内容提供者
- Android内容提供者Provider
- Android 内容提供者
- Android内容提供者
- android内容提供者
- Android内容提供者
- Android内容提供者
- Maven之——插件目标及绑定、命令行调用插件、目标前缀(插件前缀解析策略)、插件解析运行机制
- 判断素数
- 2017考研复试,绕开让你失败的致命错误
- 软件工程复习资料(三)
- Java死锁检测
- Android----内容提供者
- 安卓图片按钮点击切换
- 2017考研复试通关一定要解决的8个问题
- 如何写一个类
- bom编程
- 分布式爬虫学习
- 2017考研复试:过来人总结经验教训
- [LeetCode] 113. Path Sum II
- 20170628总结