【网学网提醒】:网学会员鉴于大家对十分关注,论文会员在此为大家搜集整理了“Android讲义_高焕堂2.ContentProvider范例”一文,供大家参考学习
2.高焕堂讲解ContentProvider范例高焕堂讲解
1.何谓Android的嫡系组件Android有4项一等公民(或称为嫡系亲属),包括:Activity,ContentProvider,IntentReceiver与Service.它们都必须宣告于AndroidManifest.xml档案里,如下:
这让Android知道我们城市里定义了多少个嫡系组件类别;Android可以在启动时就将它们执行起来,成为共享的(Shared)服务组件.这些嫡系服务组件间的沟通,通常是透过「意图」(Intent)对象来请Android转达给对方,Android则会依据意图而找出最佳的配对.配对成功,就展开相互的沟通与服务了.2.什么是ContentProvider嫡系组件----以SQLite为例
在Android里,SQLite数据库是最典型的ContentProvider,负责储存各式各样的内容.除了数据库之外,还有许多其它种类的ContentProvider.在这里并不是要介绍这些ContentProvider,而是要透过SQLite认识ContentProvider接口,然后将舶来Linter组件,配上这种ContentProvider接口,让它摇身一变成为Android的嫡系组件.
2.1
一般(即非嫡系一般即非嫡系)SQLite的范例即非嫡系
没有透过ContentProvider接口来使用SQLite,就是对SQLite的「非嫡系」用法.此时,应用程序透过JDBC接口和SQL语句来与SQLite沟通,以存取数据库里的内容.先认识这种传统用法.此范例将从SQLite读取数据.首先建立一个程序项目,其含有两个Java程序文件:ac01.java和DataProvider.java.其中,ac01.java是典型的Activity类别,负责UI画面的显示工作,而DataProvider则负责与SQLite沟通.其详细程序代码为:/*-----ac01.java程序代码------*/packagecom.misoo.pklx;importjava.util.ArrayList;importjava.util.HashMap;importjava.util.Map;importandroid.app.ListActivity;importandroid.database.Cursor;importandroid.os.Bundle;
importandroid.view.View;importandroid.widget.ListView;importandroid.widget.SimpleAdapter;publicclassac01extendsListActivity{privatestaticfinalString[]PROJECTION=newString[]{"stud_no","stud_name"};@OverrideprotectedvoidonCreate(BundlesavedInstanceState){super.onCreate(savedInst
anceState);DataProviderdp=newDataProvider(this);Cursorcur=dp.query(PROJECTION,null,null,null);ArrayList