Android基础ContentProvider实用教案

上传人:桔**** 文档编号:591130584 上传时间:2024-09-16 格式:PPT 页数:15 大小:375KB
返回 下载 相关 举报
Android基础ContentProvider实用教案_第1页
第1页 / 共15页
Android基础ContentProvider实用教案_第2页
第2页 / 共15页
Android基础ContentProvider实用教案_第3页
第3页 / 共15页
Android基础ContentProvider实用教案_第4页
第4页 / 共15页
Android基础ContentProvider实用教案_第5页
第5页 / 共15页
点击查看更多>>
资源描述

《Android基础ContentProvider实用教案》由会员分享,可在线阅读,更多相关《Android基础ContentProvider实用教案(15页珍藏版)》请在金锄头文库上搜索。

1、一、什么(shnme)是ContentProviderContentProvider用来存储和检索数据ContentProvider是应用(yngyng)之间互相访问数据的唯一方法Android自身提供了一些常用的Provideraudio、video、image、contacts等如果你想使你的数据能够共享,要么建立一个你自己的ContentProvider;要么往已存在的ContentProvider中写数据第1页/共14页第一页,共15页。如何(rh)访问ContentProvider借助工具类ContentResolver获得(hud)ContentResolver由activity或

2、context的方法:getContentResolver()使用ContentResolver的方法访问数据库查找:query插入:insert更新:update删除:delete第2页/共14页第二页,共15页。ContentProvider如何存储(cnch)数据每一个ContentProvider都有一个Uri来标识它本身ContentProvider存储数据(shj)的形式:第3页/共14页第三页,共15页。ContentProvider的查找(chzho)finalCursorContentResolver.query(Uriuri,Stringprojection,Strings

3、election,StringselectionArgs,StringsortOrder)使用者自行管理(gunl)Cursor的生命周期finalCursorActivity.managedQuery(Uriuri,Stringprojection,Stringselection,StringselectionArgs,StringsortOrder)由所在的Activity来管理(gunl)Cursor的生命周期第4页/共14页第四页,共15页。ContentProvider的查找(chzho)Stringprojection=newStringPeople._ID,People._COU

4、NT,People.NAME,People.NUMBER;Uricontacts=People.CONTENT_URI;CursormanagedCursor=managedQuery(contacts,projection,/Whichcolumnstoreturnnull,/Whichrowstoreturn(allrows)null,/Selectionarguments(none)/PuttheresultsinascendingorderbynamePeople.NAME+ASC);第5页/共14页第五页,共15页。ContentProvider的查找(chzho)privatevo

5、idgetColumnData(Cursorcur)if(cur.moveToFirst()Stringname,phoneNumber;intnameColumn=cur.getColumnIndex(People.NAME);intphoneColumn=cur.getColumnIndex(People.NUMBER);StringimagePath;doname=cur.getString(nameColumn);phoneNumber=cur.getString(phoneColumn);while(cur.moveToNext();第6页/共14页第六页,共15页。修改(xigi)

6、ContentProvider的数据增加一条新记录:insert给一条已存在的记录增加新信息:insert更新(gngxn)记录:update删除记录:delete借助:ContentValues、ContentResolver第7页/共14页第七页,共15页。增加(zngji)一条新记录ContentValuesvalues=newContentValues();/AddAbrahamLincolntocontactsandmakehimafavorite.values.put(People.NAME,AbrahamLincoln);/1=thenewcontactisaddedtofavo

7、rites/0=thenewcontactisnotaddedtofavoritesvalues.put(People.STARRED,1);Uriuri=getContentResolver().insert(People.CONTENT_URI,values);第8页/共14页第八页,共15页。已有记录增加(zngji)新信息UriphoneUri=null;phoneUri=Uri.withAppendedPath(uri,People.Phones.CONTENT_DIRECTORY);values.clear();values.put(People.Phones.TYPE,Peopl

8、e.Phones.TYPE_MOBILE);values.put(People.Phones.NUMBER,1233214567);getContentResolver().insert(phoneUri,values);第9页/共14页第九页,共15页。更新(gngxn)和删除更新(gngxn):ContentResolver.update()删除:ContentResolver.delete()第10页/共14页第十页,共15页。如何(rh)创建ContentProvider?通过Sqlite的方式建立ContentProvider继承ContentProvider类实现(shxin)SQ

9、LiteOpenHelper实现(shxin)增删改查等接口queryinsertupdatedeletegetTypeonCreate第11页/共14页第十一页,共15页。如何(rh)创建ContentProvider?在manifest中声明(shngmng)ContentProvider第12页/共14页第十二页,共15页。The End!第13页/共14页第十三页,共15页。感谢您的观看(gunkn)!第14页/共14页第十四页,共15页。内容(nirng)总结一、什么(shn me)是ContentProvider。audio、video、image、contacts等。phoneNumber = cur.getString(phoneColumn)。values.put(People.STARRED, 1)。第13页/共14页。感谢您的观看。第14页/共14页第十五页,共15页。

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 高等教育 > 研究生课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号