You are on page 1of 6

9.

Test th thnh qu :
Mi content Provider gn vi 1 Uri c th, nh trn th ContentProvider Book c
Uri l:
M:
com.vietandroid.provider.Books/books
test th , vn trong Project Demo ContentProviderDemo , cc bn c th thm
2 Button Add Book v View All Books vo . Giao din nh sau:

Chng ta s thm 1 Book vo CSDL thng qua URI ny:


M:
public void addBook(String title)
{
ContentValues values = new ContentValues();
values.put(BookProvider.TITLE, title);
Uri uriInsert =
getContentResolver().insert(BookProvider.CONTENT_URI,
values);
if(uriInsert != null)
{
Toast.makeText(this, "Book's added",
Toast.LENGTH_SHORT).show();
}
Log.d(getClass().getSimpleName(),uriInsert.toStrin
g());
}
Kt qu :

Truy vn ton b d liu Books c trong CSDL


M:
public void getAllBooks()
{
Uri uriGetListTitles =
Uri.parse("content://com.vietandroid.provider.Books/boo
ks");
Cursor c = managedQuery(uriGetListTitles, null,
null, null, "title desc");
if(c.moveToFirst()){
do{
String bookRecord = "ID = " +
c.getString(c.getColumnIndex(BookProvider._ID)) + "
Title = " +
c.getString(c.getColumnIndex(BookProvider.TITLE));

Toast.makeText(this, bookRecord ,
Toast.LENGTH_LONG).show();
}while(c.moveToNext());
}
}
Kt qu :
[IMGhttp://i123.photobucket.com/albums/o286/firewall7845/VietAndroid/21.png[/IMG]
3. S dng d liu Content Provider t 1 ng dng bt k
Bi 6 mnh cp v c s d liu SQLite Database, dng d liu ny khng
public cho cc ng dng khc s dng, d liu ca ng dng no th ng dng
s dng.
1 li th ca d liu di dng Content Provider l public, tt c cc ng dng u
c th truy cp v s dng.
Phn ny cc bn s dng ProjectDemo l ContentProviderDemo2 trong
sourcecode i km ban u.
Demo ny ch n gin l c li ton b d liu trong CSDL Books c to
trong phn 2.
Nh mnh ni trn, ch cn ly c Uri ca ContentProvider cn ly v cc
tn ca cc trng d liu th chng ta c th truy vn c ht.
Trong hm onCreate() cc bn thm vo:
M:
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Uri uriGetListTitles =
Uri.parse("content://com.vietandroid.provider.Books/boo
ks");
Cursor c = managedQuery(uriGetListTitles, null,
null, null, "title desc");
if(c != null)
{
if(c.moveToFirst()){
do{

String bookRecord = "ID = " +


c.getString(c.getColumnIndex("_id")) + " Title = " +
c.getString(c.getColumnIndex("title"));
Toast.makeText(this, bookRecord ,
Toast.LENGTH_LONG).show();
}while(c.moveToNext());
}
}
else {
Toast.makeText(this, "Database is emtpy",
Toast.LENGTH_SHORT).show();
}
}
2 trng d liu y c nh ngha trn l "_id" v "title". Phn truy vn vn
nh vy.
Kt qu :

You might also like