Tạo và sử dụng 1 Content Provider do người dùng tự định nghĩa Để dễ hiểu hơn các bạn mở Project ContentProviderDemo trong Sourcecode đã down về. Trong Project đó mình tạo 1 Content Provider Books, mỗi bản ghi Book bao gồm 2 trường : ID và Title. Sau đây là các bước để tạo 1 Content Provider cơ bản ( cụ thể là tạo ContentProvider Book) 1. Tạo 1 class thừa kế lớp ContentProvider Mã: public class BookProvider extends ContentProvider 2. Định nghĩa 1 biến Uri (public static final ) được gọi CONTENT_URI. Các xâu này luôn được bắt. | Hướng dẫn lập trình CO bẩn với Android Part 20 Các bước thực hiện với CSDL 1. Tạo 1 CSDL thông thường chỉ cần làm 1 lần 2. Mở CSDL đó 3. Thêm giá trị vào trong table 4. Truy vấn. 5. Đóng CSDL 1. Tạo cơ sở dữ liệu. Đầu tiên các bạn add 1 class DBAdapter để xử lý tất cả các thao tác liên quan đến CSDL. Mã public static final String KEY_ID _id public static final String KEY_NAME name private DatabaseHelper mDbHelper private SQLiteDatabase mDB private static final String DATABASE_CREATE create table users _id integer primary key autoincrement name text not null private static final String DATABASE_NAME Database_Demo private static final String DATABASE_TABLE users private static final int DATABASE_VERSION 2 private final Context mContext Tạo 1 lớp bên trong DBAdapter được extend từ lớp SQLiteOpenHelper override 2 phương thức onCreate và onUpgrade để quản lý việc tạo CSDL và version của CSDL đó. Mã private static class DatabaseHelper extends SQLiteOpenHelper public DatabaseHelper Context context String name CursorFactory factory int version super context name factory version TODO Auto-generated constructor stub @Override public void onCreate SQLiteDatabase db TODO Auto-generated method stub DATABASE-CREATE @Override public void onUpgrade SQLiteDatabase db int oldVersion int newVersion TODO Auto-generated method stub TAG Upgrading DB DROp TAbLe if exists users onCreate db 2. Mở CSDL Mã public DBAdapter open mDbHelper new DatabaseHelper mContext DATABASE-NAME null DATABASE-VERSION mDB return this 3. Thêm giá trị vào CSDL Mã public long createUser String name Contentvalues inititalValues new ContentValues KEY_NAME name return DATABASE_TABLE null inititalValues 4. Truy vấn Bạn có thể get toàn bộ data hoặc có thể get data theo ID tiện cho việc chỉnh sửa hay cập nhật thông tin của từng bản ghi . Mã public Cursor getAllUsers return DATABASE_TABLE new String KEY_ID KEY_NAME null .