UriMatcher
UriMatcher est une classe utilitaire qui permet de comparer deux uri. Fort intéressant dans les Content Provider !
Pour utiliser cette classe, il suffit d'instancier celle-ci:
private static final UriMatcher sURIMatcher = new UriMatcher(UriMatcher.NO_MATCH);
Puis d'indiquer l'ensemble des uris qui pourront être à tester. Avec la possibilité d'utiliser des jokers, sinon, ce serait galère !
* remplace des caractères
# remplace unes séries de chiffres
static
{
sURIMatcher.addURI("autorithy", "data_path", CSTEURI1);
sURIMatcher.addURI("autorithy", "data_path/#", CSTEURI2);
}
L'idée: dès qu'une URI passée en paramètre ressemble à l'une des URI définies dans l'instance UriMatcher, cette instance retourne le n° (CSTEURIn) correspondant. Il ne restera plus qu'à tester cette valeur afin d'exécuter le code correspondant.
int match = sURIMatcher.match(url);
switch (match)
{
case CSTEURI1:
[...]
}