contentprovider 总结(三)

来源:互联网 发布:淘宝客计划管理设置 编辑:程序博客网 时间:2024/06/04 23:34

在应用contentprovider的时候还需要一个UriMatcher类,大家要是想了解这个类的用法可以在网上查到很多,我就不多说了,直接上代码

public class TestProvider extends ContentProvider {    private DBHelper dbHelper;    private Context context;    public static UriMatcher matcher = new UriMatcher(UriMatcher.NO_MATCH);    private static final int code = 1;    @Override    public boolean onCreate() {        // TODO Auto-generated method stub        context = getContext();        dbHelper = dbHelper.getInstance(context);        return true;    }    static{        matcher.addURI(DBHelper.DATA_BASE_AUTHORITY, student.Table, code);    }    @Override    public Cursor query(Uri uri, String[] projection, String selection,            String[] selectionArgs, String sortOrder) {        // TODO Auto-generated method stub         SQLiteDatabase db = dbHelper.getReadableDatabase();         int matchCode = matcher.match(uri);         switch(matchCode){         case code:             db.query(student.Table, projection, selection, selectionArgs, null, null, sortOrder);             break;         }        return null;    }    @Override    public String getType(Uri uri) {        // TODO Auto-generated method stub        return null;    }    @Override    public Uri insert(Uri uri, ContentValues values) {        // TODO Auto-generated method stub         SQLiteDatabase db = dbHelper.getReadableDatabase();         int matchCode = matcher.match(uri);         switch(matchCode){         case code:             db.insert(student.Table, student.NAME, values);             break;         }        return null;    }    @Override    public int delete(Uri uri, String selection, String[] selectionArgs) {        // TODO Auto-generated method stub         SQLiteDatabase db = dbHelper.getReadableDatabase();         int matchCode = matcher.match(uri);         switch(matchCode){         case code:             db.delete(student.Table, selection, selectionArgs);             break;         }        return 0;    }    @Override    public int update(Uri uri, ContentValues values, String selection,            String[] selectionArgs) {        // TODO Auto-generated method stub         SQLiteDatabase db = dbHelper.getReadableDatabase();         int matchCode = matcher.match(uri);         switch(matchCode){         case code:             db.update(student.Table, values, selection, selectionArgs);             break;         }        return 0;    }}
1 0