Android’de URI ile Erişim
Android’de URI (Uniform Resource Identifier), bir kaynağı tanımlamak için kullanılan bir dizgedir. Bu kaynak, bir dosya, bir web sayfası veya bir içerik sağlayıcı olabilir. URI’ler, Android uygulamalarında kaynaklara erişmek için kullanılır.
URI’ler, aşağıdaki biçimdedir:
scheme://authority/path/to/resource
- scheme, URI’nin türünü belirtir. Örneğin,
http
veyafile
. - authority, URI’nin kaynağını belirtir. Örneğin, bir web sayfası için
www.google.com
veya bir dosya için/sdcard/myfile.txt
. - path, URI’nin kaynağına giden yolu belirtir. Örneğin, bir web sayfası için
/index.html
veya bir dosya için/sdcard/myfile.txt
.
URI’ler, Uri
sınıfı tarafından temsil edilir. Uri
sınıfı, URI’leri oluşturmak, ayrıştırmak ve bunlara erişmek için çeşitli yöntemler sağlar.
URI ile Erişim
URI’ler, ContentResolver
sınıfı aracılığıyla kaynaklara erişmek için kullanılır. ContentResolver
sınıfı, Android uygulamalarının içerik sağlayıcılarla iletişim kurmasını sağlar.
Bir kaynağa erişmek için, öncelikle ContentResolver
sınıfının bir örneğini oluşturmanız gerekir. Bunu, getContentResolver()
yöntemini kullanarak yapabilirsiniz.
java
ContentResolver contentResolver = getContentResolver();
Ardından, ContentResolver
sınıfının query()
yöntemini kullanarak kaynağa erişebilirsiniz. query()
yöntemi, bir URI ve bir dizi sütun adı alır ve bu sütunlardaki verileri içeren bir Cursor
nesnesi döndürür.
java
Cursor cursor = contentResolver.query(uri, null, null, null, null);
Cursor
nesnesi, kaynaktaki verileri satır satır gezmek için kullanılabilir. Her satır, bir dizi sütun değerinden oluşur. Sütun değerlerine, Cursor
nesnesinin getColumnIndex()
ve getString()
yöntemlerini kullanarak erişebilirsiniz.
java
int nameColumnIndex = cursor.getColumnIndex("name");
String name = cursor.getString(nameColumnIndex);
Faydalı Siteler
- Android Developers: Content Providers
- Android Developers: Uri Class
- Android Developers: ContentResolver Class