1) Два файла
Это два разных класса - com.example.android.notepad - это класс, который реализует приложение.com.google.provider.notepad - это класс, который реализует ContentProvider.
Приложение предоставляет интерфейс пользователя, ContentProvider обеспечивает хранение данных.
Просмотр Эта ссылка на БлокнотПример ContentProvider , его имя намного понятнее.
2) URI Matching
Ссылка NotepadProvider.java :
sUriMatcher = new UriMatcher(UriMatcher.NO_MATCH);
sUriMatcher.addURI(NotePad.AUTHORITY, "notes", NOTES);
sUriMatcher.addURI(NotePad.AUTHORITY, "notes/#", NOTE_ID);
UriMatcher берет список шаблонов.NotePad.AUTHORITY
является базой URI контента.
"notes"
- это один шаблон для сопоставления, и возвращается перечисление NOTES."notes/#"
- это один шаблон для сопоставления, и возвращается enum NOTE_ID.
switch (sUriMatcher.match(uri)) {
case NOTES:
...
break;
case NOTES:
...
break;
default:
...
break;
}
Шаблон для принятия решения о запуске другого кода на основе URI
3) MIME-типы
MIME-типы являются опциональными.Вам, вероятно, не нужно ничего делать с ними.