- 1、本文档共35页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
设置权限 对ContentProvider中的数据进行操作,都需要在AndroidManifest.xml文件中添加相应的权限。 例如,对手机的通讯录进行查询和修改操作,则在AndroidManifest.xml文件的manifest标签内需要添加下列权限设置: 4.4 使用ContentProvider实现数据共享 uses-permission android:name=android.permission.READ_CONTACTS/ uses-permission android:name=android.permission.WRITE_CONTACTS/ 【例】 查看手机通讯录 查询数据 ContentResolver cr = getContentResolver(); Uri uri = Contacts.CONTENT_URI; Cursor c = cr.query(uri, new String[] { Contacts._ID, Contacts.DISPLAY_NAME }, null, null, null); 4.4 使用ContentProvider实现数据共享 【例】 查看手机通讯录 插入数据 ContentResolver cr = getContentResolver(); ContentValues values = new ContentValues(); Uri uri = cr.insert(RawContacts.CONTENT_URI, values); Long raw_contact_id = ContentUris.parseId(uri); values.clear(); values.put(StructuredName.RAW_CONTACT_ID, raw_contact_id); values.put(StructuredName.DISPLAY_NAME, 李四); values.put(StructuredName.MIMETYPE, StructuredName.CONTENT_ITEM_TYPE); cr.insert(Data.CONTENT_URI, values); values.clear(); values.put(Phone.RAW_CONTACT_ID, raw_contact_id); values.put(Phone.NUMBER,; values.put(Phone.MIMETYPE, Phone.CONTENT_ITEM_TYPE); cr.insert(Data.CONTENT_URI, values); 4.4 使用ContentProvider实现数据共享 【练习】 实现如图所示的界面效果 要求: 在输入相应信息后,点击“添加联系人”按钮,可以在通讯录中增加联系人; 查询通讯录中所有联系人信息(姓名、电话、邮箱)并显示在列表中。 4.4 使用ContentProvider实现数据共享 SharedPreferences存储 一种以name/value键-值对的方式存储简单信息机制。 通过getXXX()读取SharedPreferences对象。 通过putXXX()传入SharedPreferences对象。 通过commit()提交信息。 SQLite数据库 相关的类: SQLiteDatabase、 SQLiteOpenHelper、Cursor、ContentValues 创建并打开数据表:定义SQLiteOpenHelper类的继承类,重载其构造方法,onCreate()和onUpgrate()方法。 数据库操作(如:增、删、改、查) 使用SQL语句:使用SQLiteDatabase对象调用execSQL (SQL语句),实现对数据库的操作。 使用SQLiteDatabase类提供的专门的方法。 getString() / putString() getInt() / putInt() getFloat() / putFloat() getlong() / putLong() getBoolean() / putBoolean() 小结 ContentProvider 实现两个程序间进行数据交换的组件。 基于权限控制,在androidmanifest.xml中添加相应的权限声明。 使用Uri。Uri有两种形式: 指定全部数据。例:content://contacts/people/ 指定某个ID的数据。例:content://contacts/people/1 文件存储 支持标准的Java I/O读写方法。 只
您可能关注的文档
- 2.0重点用能企业能源计量审查规范技术总结.ppt
- 移动通信基站设备技术总结.ppt
- 物理选修111.4电容器2技术总结.ppt
- 移动通信技术·呼叫接续处理技术总结.ppt
- 2.1.1地表形态(一)技术总结.ppt
- 2.1.1简单随机抽样技术总结.ppt
- 物理学前沿第二章凝聚态物理技术总结.ppt
- 移动通信技术与终端第一章1技术总结.ppt
- 2.1.1平面技术总结.ppt
- 物理一轮复习:测定金属的电阻率技术总结.ppt
- 2025年中国锻铁围栏市场调查研究报告.docx
- 2025年中国椭圆型市场调查研究报告.docx
- 2025年中国无蔗糖原味豆浆市场调查研究报告.docx
- 2025-2031年中国泛在电力物联网行业发展运行现状及投资潜力预测报告.docx
- 2025年中国制袋机零件市场调查研究报告.docx
- 2025年中国智能除垢型电子水处理仪市场调查研究报告.docx
- 2025-2031年中国甘肃省乡村旅游行业市场深度研究及投资策略研究报告.docx
- 2025-2031年中国干海产品行业市场发展监测及投资战略规划报告.docx
- 2025年中国全铝图解易拉盖市场调查研究报告.docx
- 2025年中国人造毛皮服装市场调查研究报告.docx
文档评论(0)