提供者--AppCompatActivity

public class MainActivity extends AppCompatActivity {

@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
}
public void onclick_bak(View view) throws IOException {
//content://sms查新系统所有短信的uri
Uri uri=Uri.parse("content://sms");
//获得 访问内容提供者
ContentResolver contentResolver=getContentResolver();
//通过contentResolver查询数据
Cursor cursor=contentResolver.query(uri,new String[]{"address","date","type","body"},null,null,null);
List<SmsInfo> smsInfoList=new ArrayList<SmsInfo>();
//cursor.moveToNext()移动到下一行
while (cursor.moveToNext()){
String address=cursor.getString(0);
long date=cursor.getLong(1);
int type=cursor.getType(2);
String body=cursor.getString(3);
SmsInfo smsInfo=new SmsInfo(date,type,body,address);
smsInfoList.add(smsInfo);
}
//读取数据结束
cursor.close();
//备份
SmsUtils.backUpSms(smsInfoList,this);
}

}

时间: 2024-08-27 02:29:37

提供者--AppCompatActivity的相关文章

入门篇:9.组件4:ContentProvider(内容提供者)

android 四大基本组件 的ContentProvider(内容提供者) 这个组件其实就是一个应用进行数据或数据库提供.共享其他应用获取数据的组件,其大致的结构图如下: 其中uri是一个重要的中间媒介. 联系到我们平时用的安卓程序,最常见的就是通讯录.在我们的安卓手机里,通讯录的设计其实是两个程序,其中有一个程序没有用户界面,单纯的存储着联系人信息,并且数据库结构复杂,这也是为了保证数据的安全.另外一个程序就是我们可以看见的通讯录程序.那么第一个程序就是一个ContentProvider,用

Android 中内容提供者的使用

在Android中内容提供者主要是用于不同程序之间的数据共享.内容提供器的用法一般有两种,一种是使用现有的内容提供器来读取和操作相应程序的数据,另一种是创建自己的内容提供器,供其他的程序访问. 使用现有的内容提供器来读取和操作相应程序的数据 ContentResolve中提供了一系列的方法用于对数据进行增删改查的操作,其中,insert()用于添加数据,update()用于数据更新,delete()方法用于删除数据,query()用于数据的查询. 在ContentResolve中,使用内容URI

Android四大组件之一:ContentProvider(内容提供者)

Android中还提供了名为ContentProvider(内容提供者),可以向其他应用提供数据,但不常用,除非是同一公司开发的App,可以向不同应用提供数据.虽然为Android的四大组件之一,但用法并不复杂. 建立一个Activity,设置三个Button,分别用于手机相册,Mp3,Mp4的数据的获取.在这里用的是内部类监听方式,不要忘了注册监听. package com.example.administrator.jreduch09.contentprovider; import andr

【黑马Android】(04)数据库的创建和sql语句增删改查/LinearLayout展示列表数据/ListView的使用和BaseAdater/内容提供者创建

数据库的创建和sql语句增删改查 1. 加载驱动. 2. 连接数据库. 3. 操作数据库. 创建表: create table person( _id integer primary key, name varchar(20), age integer ); 添加: insert into person(name, age) values('lisi', 19); 删除: delete from person where _id = 1; 修改: update person set name =

Android Studio新建的工程继承了AppCompatActivity设置隐藏标题栏还闪退

本来是做cocos2d-x开发的,但在公司接了一些安卓的SDK后也慢慢的开始接触安卓.据说谷歌开始不支持eclipse ADT了,不知道是不是真的.奔着这个消息我试了下,这款软件.cocos studio非常耗CPU i5 表示有点吃不消,内存还凑合.编辑功能也十分强大. 新建了一个工程,发现新建的普通的安卓工程它不是继承activity而是多了一层.它继承AppCompatActivity而AppCompatActivity继承Activity 按照继承的原理来说.它们应该没什么区别的.但当我

KeyMob移动广告平台 专业移动广告提供者

KeyMob广告隶属于湖南常乐网络有限公司(常乐网络)--业界领先的无线络营销方案提供者,KeyMob移动广告平台外还与多个知名平台合作.经过两年多的实战,培养了一批高水平的技术研发人员和一支专业的营销服务团队.目前,KeyMob广告覆盖了IOS和Androi两大主流操作系统,服务于广告主与开发者. KeyMob移动广告平台自上线以来,秉承稳定.高效的平台,服务于开发者的同时也服务于广告主.在开发者与广告主之间构建一个稳定的平台,让广告主得到精准的投放,让开发者的收益最大化. 据了解:KeyMo

dubbox系列【三】——简单的dubbox提供者+消费者示例

1.dubbox-provider示例 在eclipse中建立maven project,名为provider-parent,包含两个maven medule:provider-api 和 provider. 项目源码已经上传至码云:http://git.oschina.net/yeyouluo/dubbox-demo-provider. 使用mvn install命令编译provider-api,最终在本地maven仓库中会生成对应的provider-api-0.0.1-SNAPSHOT.ja

Android 内容提供者的实现

接着上文<Android 内容提供者简介>进一步实现内容提供者. 每个Content Provider类都使用URI(Universal Resource Identifier,通用资源标识符)作为独立的标识,格式如:content://com.example.app.provider/table1.其他应用程序通过不同的uri访问不同的内容提供者,并获取/操作里面的数据. 例如在本项目中对应如下URI: content://com.wuyudong.db.personprovider/ins

[android] 内容提供者简介

产生的原因是,当我们把数据存到数据库的时候,数据库的权限是私有的,把系统的短信应用中的数据库导出来,打开看到address字段是手机的号码,date字段是时间,type字段1,2代表发出去的短信和接受到的短信,body字段代表短信的数据.要想让别的应用程序访问自己数据库的数据,这时需要自己把数据给暴露出来. 新建一个类比如PersonProvider,先继承系统的ContentProvider类,这个类是android四大组件之一,暴露自己的私有数据,别的应用通过ContentResolver类