Die "1" wird intern im ContentProvider verwendet. Es wird verwendet, um einen URI mit einer Nummer zu verknüpfen. Praktisch für die Verwendung in einer switch-Anweisung.
Warum nicht String-Matching? Nun, ein URI könnte variable Teile haben. Zum Beispiel "content: //my.provider/bank/customer/2". Die 2 ist die ID des Kunden. Oder "content: //my.provider/location/42/name". Der variable Teil hier ist der 42. String-Matching geht hier außer Kontrolle. Der UriMatcher hingegen kann Beispiel 1 mit addURI ("my.provider", "bank/customer/#", 1) und Beispiel 2 mit addURI ("my.provider", "location/#/name") verbinden , 2). Wenn wir einen konfigurierten UriMatcher auffordern, einen URI zu finden, gibt er die Nummer zurück, die dem passenden URI zugeordnet ist.
Aber wir gehen hier aus der Spur. Die Nummer ist für Sie als Verbraucher nicht relevant. Sie können den Provider mit der Kontextmethode 'getContentResilver() .query (content: //org.abcd.providers.contentprovider/bookmarks,/* andere Argumente * /)' abfragen. Weitere Informationen finden Sie unter the documentation.
Aber Sie können nur mit dem Anbieter sprechen, wenn es exportiert wird (nichts, was Sie dagegen tun können) oder es erfordert Berechtigungen, die Ihre Anwendung hat. Dies beinhaltet überhaupt keine Berechtigungen.
Vielen Dank für die Erklärung! – lifeisgooddd