Код: Выделить всё
content://com.example.webviewdataprovider/images/имя_картинки.jpg
content://com.example.webviewdataprovider/scripts/имя_скрипта.js
content://com.example.webviewdataprovider/styles/имя_стиля.css
В БД так же есть таблицы представляющие собой целые объекты(например: Object_1, Object_2, и т.д.). Как сделать, что бы Content Provider мог воспринимать обращения следующего вида:
Код: Выделить всё
content://com.example.webviewdataprovider/ObjectList.htm?Status=Good
Код: Выделить всё
content://com.example.webviewdataprovider/Object.htm?Id=123456
Это будет применяться в HTML файле, для его формирования. Запись в таком виде нужна для более наглядного отображения текста
Понимаю, что копать нужно в направлении UriMatcher:
Не знаю, иду ли в правильном пути.......
Код: Выделить всё
public static final String AUTHORITY = "com.example.WebViewDataProvider";
private static final String IMAGES_FOLDER_STR = "images";
private static final String SCRIPTS_FOLDER_STR = "scripts";
private static final String STYLES_FOLDER_STR = "styles";
private static final String OBJECT_LIST_STR = "ObjecList.htm";
private static final String OBJECT_STR = "Objec.htm";
private static final int IMAGES_FOLDER_ID = 15;
private static final int SCRIPTS_FOLDER_ID = 16;
private static final int STYLES_FOLDER_ID = 17;
private static final int OBJECT_LIST_ID = 18;
private static final int OBJECT_ID = 19;
private static final UriMatcher sUriMatcher;
static
{
sUriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
sUriMatcher.addURI(AUTHORITY, IMAGES_FOLDER_STR, IMAGES_FOLDER_ID);
sUriMatcher.addURI(AUTHORITY, SCRIPTS_FOLDER_STR, SCRIPTS_FOLDER_ID);
sUriMatcher.addURI(AUTHORITY, STYLES_FOLDER_STR, STYLES_FOLDER_ID);
sUriMatcher.addURI(AUTHORITY, OBJECT_LIST_STR, OBJECT_LIST_ID);
sUriMatcher.addURI(AUTHORITY, OBJECT_STR, OBJECT_ID);
}