Guruh F. I ball


Laboratoriyaning amaliy qismi


Download 1.88 Mb.
bet2/10
Sana18.12.2022
Hajmi1.88 Mb.
#1029253
1   2   3   4   5   6   7   8   9   10
Bog'liq
612-19 guruh Akbarova Mohigul 5-dedline

Laboratoriyaning amaliy qismi.
O‘z kontent provayderingizni yaratish
O‘z kontent provayderingizni yaratish uchun siz mavhum ContentProvider sinfidan meros olishingiz kerak:

umumiy sinf MyContentProvider ContentProvider-ni kengaytiradi {


}
Sinf mavhum usullarni amalga oshirishi kerak query(), insert(), update(), delete(), getType(), onCreate(). An'anaviy ma'lumotlar bazasini yaratish bilan bir qator o‘xshashliklar mavjud.
Shuningdek, u manifestda ism va vakolatlar atributlari bilan provayder yorlig‘i yordamida ro‘yxatdan o‘tkazilishi kerak. Mutaxassislar yorlig‘i ContentResolver o‘zaro ishlash uchun ma'lumotlar bazasini topishi mumkin bo‘lgan asosiy URI yo‘lini tavsiflash uchun ishlatiladi. Bu teg noyob boʻlishi kerak, shuning uchun boshqa ilovalar bilan chalkashmaslik uchun paket nomidan foydalanish tavsiya etiladi, masalan:


android:name:".MyContentProvider"
android:authorities="en.alexanderkimov.provider.notepad" />
Kontent provayderining manbasi saytning domen nomi bilan bir xil. Agar manba allaqachon ro‘yxatdan o‘tgan bo‘lsa, ushbu kontent provayderlari tegishli manba prefiksi bilan boshlangan giperhavolalar bilan ifodalanadi:

content://uz.alexanderkimov.provider.notepad/


Shunday qilib, kontent provayderlari, masalan, veb-saytlar, boshlang‘ich URL manzili sifatida ishlaydigan asosiy domen nomiga ega.
Android tomonidan foydalaniladigan kontent provayderlari nomaqbul manba nomiga ega bo‘lishi mumkinligini unutmang. To‘liq malakali manba nomi faqat uchinchi tomon kontent provayderlari bilan foydalanish uchun tavsiya etiladi. Shuning uchun, ba'zida bunday kontent provayderining to‘liq malakali nomi com.google.android.contacts bo‘lsa, kontaktlar kabi bir so‘zli kontent provayderlariga duch kelishingiz mumkin.
Kontent provayderlarida ma'lumotlarni topish va ular bilan ishlash uchun REST-ga o‘xshash giperhavolalar ham mavjud. Yuqorida tavsiflangan ro‘yxatga olish holatida, NotePadProvider ma'lumotlar bazasidagi katalog yoki yozuvlar to‘plamini ko‘rsatish uchun mo‘ljallangan yagona resurs identifikatori shunday nomlanadi:

kontent://en.alexanderkimov.provider.notepad/notes


Bitta yozuvni aniqlash uchun URI quyidagicha bo‘ladi:

content://en.alexanderkimov.provider.notepad/notes/#


# belgisi ma'lum bir yozuvga (jadval qatoriga) mos keladi. Quyida kontent provayderlarida mavjud bo‘lishi mumkin bo‘lgan yana bir nechta URI misollari keltirilgan:
kontent://media/ichki/rasmlar
kontent://media/tashqi/tasvirlar
kontent://kontaktlar/odamlar/
kontent://kontaktlar/odamlar/23



Download 1.88 Mb.

Do'stlaringiz bilan baham:
1   2   3   4   5   6   7   8   9   10




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling