Я новичок в Android. Я просмотрел код Android ContentProvider
и немного путаюсь с UriMatcher
, потому что операторы в static будут выполняться первыми. Здесь в коде внутри UriMatcher
есть блок static без представления о PROVIDER_NAME
. Как это можно использовать, потому что до инициализации PROVIDER_NAME
должен работать блок static .
public class CustomContentProvider extends ContentProvider {
public static final String PROVIDER_NAME =
"net.learn2develop.provider.Book";
public static final Uri CONTENT_URI =
Uri.parse("content://"+ PROVIDER_NAME + "/books");
public static final String _ID = "_id";
public static final String TITLE = "title";
public static final String ISBN = "isbn";
private static final int BOOKS = 1;
private static final int BOOK_ID = 2;
private static final UriMatcher uriMatcher;
static {
uriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
uriMatcher.addURI(PROVIDER_NAME, "books", BOOKS);
uriMatcher.addURI(PROVIDER_NAME, "books/#", BOOK_ID);
}
любая помощь очень приветствуется ...
заранее спасибо